{"type":"ScholarlyArticle","title":"GANAK: A Scalable Probabilistic Exact Model Counter","authors":[{"name":"Shubham Sharma","slug":"shubham-sharma","given":"Shubham","family":"Sharma","affiliation":"Department of Computer Science and Engineering , Indian Institute of Technology Kanpur , India"},{"name":"Subhajit Roy","slug":"subhajit-roy","given":"Subhajit","family":"Roy","affiliation":"Department of Computer Science and Engineering , Indian Institute of Technology Kanpur , India"},{"name":"Mate Soos","slug":"mate-soos","given":"Mate","family":"Soos","affiliation":""},{"name":"Kuldeep S. Meel","slug":"kuldeep-s-meel","given":"Kuldeep S.","family":"Meel","affiliation":"School of Computing , National University of Singapore"}],"abstract":"Given a Boolean formula F, the problem of model counting, also referred to as #SAT, seeks to compute the number of solutions of F. Model counting is a fundamental problem with a wide variety of applications ranging from planning, quantified information flow to probabilistic reasoning and the like. The modern #SAT solvers tend to be either based on static decomposition, dynamic decomposition, or a hybrid of the two. Despite dynamic decomposition based #SAT solvers sharing much of their architecture with SAT solvers, the core design and heuristics of dynamic decomposition-based #SAT solvers has remained constant for over a decade.\r\n\r\nIn this paper, we revisit the architecture of the state-of-the-art dynamic decomposition-based #SAT tool, sharpSAT, and demonstrate that by introducing a new notion of probabilistic component caching and the usage of universal hashing for exact model counting along with the development of several new heuristics can lead to significant performance improvement over state-of-the-art model-counters. In particular, we develop GANAK, a new scalable probabilistic exact model counter that outperforms state-of-the-art exact and approximate model counters sharpSAT and ApproxMC3 respectively, both in terms of PAR-2 score and the number of instances solved. Furthermore, in our experiments, the model count returned by GANAK was equal to the exact model count for all the benchmarks. Finally, we observe that recently proposed preprocessing techniques for model counting benefit exact model counters while hurting the performance of approximate model counters.","doi":"10.24963/ijcai.2019/163","url":"https://ijcai.org/proceedings/2019/163","pdf":"https://ijcai.org/proceedings/2019/0163.pdf","markdown":"https://ijcai.org/proceedings/2019/163.md","bibtex":"https://ijcai.org/proceedings/2019/bibtex/163","volume":{"slug":"2019","title":"Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence","short_title":"IJCAI 2019","url":"https://ijcai.org/proceedings/2019/","year":2019,"location":"Macao","dates":"10-16 August 2019","editors":"Sarit Kraus","isbn":"978-0-9992411-4-1","publisher":"International Joint Conferences on Artificial Intelligence Organization","doi_prefix":"10.24963/ijcai.2019"},"section":"Constraints and SAT","track":"Main track","number":163,"pages":{"first":1169,"last":1176},"keywords":["Constraints and SAT: SAT: Applications","Constraints and SAT: SAT: Evaluation and Analysis","Constraints and SAT: SAT: Solvers and Tools"],"videos":[],"references":[{"position":1,"raw":"[Bacchus et al., 2003] Fahiem Bacchus, Shannon Dalmao, and To- niann Pitassi. Algorithms and complexity results for #SAT and Bayesian inference. In Proc. of FOCS, pages 340-351, 2003.","title":"Fahiem Bacchus, Shannon Dalmao, and Toniann Pitassi. Algorithms and complexity results for #SAT and Bayesian inference","authors":"Bacchus","year":"2003","venue":"Proc. of FOCS","doi":null,"url":null,"internal_url":null},{"position":2,"raw":"[Bayardo and Pehoushek, 2000] Roberto J. Bayardo, Jr. and Joseph Daniel Pehoushek. Counting Models Using Connected Components. In Proc. of AAAI, pages 157-162, 2000.","title":"Counting Models Using Connected Components","authors":"Roberto J Bayardo, Jr, Joseph Daniel, Pehoushek","year":"2000","venue":"Proc. of AAAI","doi":null,"url":null,"internal_url":null},{"position":3,"raw":"[Biondi et al., 2018] Fabrizio Biondi, Michael Enescu, Annelie Heuser, Axel Legay, Kuldeep S. Meel, and Jean Quilbeuf. Scal- able approximation of quantitative information flow in programs. In Proc. of VMCAI, pages 71-93, 2018.","title":"Scalable approximation of quantitative information flow in programs","authors":"Fabrizio Biondi, Michael Enescu, Annelie Heuser, Axel Legay, Kuldeep S Meel, Jean Quilbeuf","year":"2018","venue":"Proc. of VMCAI","doi":null,"url":null,"internal_url":null},{"position":4,"raw":"[Birnbaum and Lozinskii, 1999] Elazar Birnbaum and Eliezer L. Lozinskii. The Good Old Davis-Putnam Procedure Helps Count- ing Models. J. Artif. Int. Res., pages 457-477, 1999.","title":"The Good Old Davis-Putnam Procedure Helps Counting Models","authors":"Elazar Birnbaum, L Eliezer, Lozinskii","year":"1999","venue":"J. Artif. Int. Res","doi":null,"url":null,"internal_url":null},{"position":5,"raw":"[Brglez et al., 1989] Franc Brglez, David Bryan, and Krzysztof Kozminski. Combinational profiles of sequential benchmark cir- cuits. In Proc. of ISCAS, pages 1929-1934, 1989.","title":"Combinational profiles of sequential benchmark circuits","authors":"Brglez","year":"1989","venue":"Proc. of ISCAS","doi":null,"url":null,"internal_url":null},{"position":6,"raw":"[Chakraborty et al., 2013] Supratik Chakraborty, Kuldeep S. Meel, and Moshe Y. Vardi. A Scalable Approximate Model Counter. In Proc. of CP, pages 200-216, 2013.","title":"A Scalable Approximate Model Counter","authors":"Supratik Chakraborty, Kuldeep S Meel, Moshe Y Vardi","year":"2013","venue":"Proc. of CP","doi":null,"url":null,"internal_url":null},{"position":7,"raw":"[Chakraborty et al., 2014] Supratik Chakraborty, Kuldeep S. Meel, and Moshe Y. Vardi. Balancing scalability and uniformity in SAT witness generator. In Proc. of DAC, pages 1-6, 2014.","title":"Balancing scalability and uniformity in SAT witness generator","authors":"Supratik Chakraborty, Kuldeep S Meel, Moshe Y Vardi","year":"2014","venue":"Proc. of DAC","doi":null,"url":null,"internal_url":null},{"position":8,"raw":"[Chakraborty et al., 2016] Supratik Chakraborty, Kuldeep S. Meel, and Moshe Y. Vardi. Algorithmic Improvements in Approximate Counting for Probabilistic Inference: From Linear to Logarith- mic SAT Calls. In Proc. of IJCAI, pages 3569-3576, 2016.","title":"Algorithmic Improvements in Approximate Counting for Probabilistic Inference: From Linear to Logarithmic SAT Calls","authors":"Supratik Chakraborty, Kuldeep S Meel, Moshe Y Vardi","year":"2016","venue":"Proc. of IJCAI","doi":null,"url":null,"internal_url":null},{"position":9,"raw":"[Chakraborty et al., 2019] Supratik Chakraborty, Kuldeep S. Meel, and Moshe Y. Vardi. On the Hardness of Probabilistic Inference Relaxations. In Proc. of AAAI, 2019.","title":"On the Hardness of Probabilistic Inference Relaxations","authors":"Supratik Chakraborty, Kuldeep S Meel, Moshe Y Vardi","year":"2019","venue":"Proc. of AAAI","doi":null,"url":null,"internal_url":null},{"position":10,"raw":"[Darwiche, 2004] Adnan Darwiche. New Advances in Compiling CNF to Decomposable Negation Normal Form. In Proc. of ECAI, pages 318-322, 2004.","title":"New Advances in Compiling CNF to Decomposable Negation Normal Form","authors":"Adnan Darwiche, Darwiche","year":"2004","venue":"Proc. of ECAI","doi":null,"url":null,"internal_url":null},{"position":11,"raw":"[Davis and Putnam, 1960] Martin Davis and Hilary Putnam. A computing procedure for quantification theory. J. ACM, pages 201-215, 1960.","title":"A computing procedure for quantification theory","authors":"Martin Davis, Hilary Putnam","year":"1960","venue":"J. ACM","doi":null,"url":null,"internal_url":null},{"position":12,"raw":"[Domshlak and Hoffmann, 2007] Carmel Domshlak and Jörg Hoff- mann. Probabilistic planning via heuristic forward search and weighted model counting. JAIR, pages 565-620, 2007.","title":"Carmel Domshlak and Jörg Hoffmann. Probabilistic planning via heuristic forward search and weighted model counting","authors":"Hoffmann Domshlak","year":"2007","venue":"JAIR","doi":null,"url":null,"internal_url":null},{"position":13,"raw":"[Dueñas-Osorio et al., 2017] Leonardo Dueñas-Osorio, Kuldeep S. Meel, Roger Paredes, and Moshe Y. Vardi. Counting-based relia- bility estimation for power-transmission grids. In Proc. of AAAI, 2017.","title":"Counting-based reliability estimation for power-transmission grids","authors":"Dueñas-Osorio","year":"2017","venue":"Proc. of AAAI","doi":null,"url":null,"internal_url":null},{"position":14,"raw":"[Eén and Sörensson, 2004] Niklas Eén and Niklas Sörensson. An Extensible SAT-solver. In Proc. of SAT, pages 502-518, 2004.","title":"An Extensible SAT-solver","authors":"Sörensson Eén, Niklas Eén, Niklas Sörensson","year":"2004","venue":"Proc. of SAT","doi":null,"url":null,"internal_url":null},{"position":15,"raw":"[Gomes et al., 1998] Carla P. Gomes, Bart Selman, and Henry Kautz. Boosting Combinatorial Search Through Randomization. In Proc. of AAAI, pages 431-437, 1998.","title":"Boosting Combinatorial Search Through Randomization","authors":"Carla P Gomes, Bart Selman, Henry Kautz","year":"1998","venue":"Proc. of AAAI","doi":null,"url":null,"internal_url":null},{"position":16,"raw":"[Gomes et al., 2007] Carla P. Gomes, Ashish Sabharwal, and Bart Selman. Near-Uniform sampling of combinatorial spaces using XOR constraints. In Proc. of NIPS, pages 481-488, 2007.","title":"Near-Uniform sampling of combinatorial spaces using XOR constraints","authors":"Carla P Gomes, Ashish Sabharwal, Bart Selman","year":"2007","venue":"Proc. of NIPS","doi":null,"url":null,"internal_url":null},{"position":17,"raw":"[Gupta et al., 2019] Rahul Gupta, Shubham Sharma, Subhajit Roy, and Kuldeep S. Meel. WAPS: Weighted and Projected Sampling. In Proc. of TACAS, pages 59-76, 2019.","title":"WAPS: Weighted and Projected Sampling","authors":"Rahul Gupta, Shubham Sharma, Subhajit Roy, Kuldeep S Meel","year":"2019","venue":"Proc. of TACAS","doi":null,"url":null,"internal_url":null},{"position":18,"raw":"[Ivrii et al., 2015] Alexander Ivrii, Sharad Malik, Kuldeep S. Meel, and Moshe Y. Vardi. On computing minimal independent support and its applications to sampling and counting. Constraints, 2015.","title":"On computing minimal independent support and its applications to sampling and counting","authors":"Alexander Ivrii, Sharad Malik, Kuldeep S Meel, Moshe Y Vardi","year":"2015","venue":"Constraints","doi":null,"url":null,"internal_url":null},{"position":19,"raw":"[Lagniez and Marquis, 2014] Jean-Marie Lagniez and Pierre Mar- quis. Preprocessing for propositional model counting. In Proc of AAAI, pages 2688-2694, 2014.","title":"Jean-Marie Lagniez and Pierre Marquis. Preprocessing for propositional model counting","authors":"Marquis Lagniez","year":"2014","venue":"Proc of AAAI","doi":null,"url":null,"internal_url":null},{"position":20,"raw":"[Lagniez and Marquis, 2017] Jean-Marie Lagniez and Pierre Mar- quis. An Improved Decision-DNNF Compiler. In Proc. of IJCAI, pages 667-673, 2017.","title":"Jean-Marie Lagniez and Pierre Marquis. An Improved Decision-DNNF Compiler","authors":"Marquis Lagniez","year":"2017","venue":"Proc. of IJCAI","doi":null,"url":null,"internal_url":null},{"position":21,"raw":"[Lagniez et al., 2016] Jean-Marie Lagniez, Emmanue Lonca, and Pierre Marquis. Improving Model Counting by Leveraging De- finability. In Proc. of IJCAI, pages 751-757, 2016.","title":"Improving Model Counting by Leveraging Definability","authors":"Lagniez","year":"2016","venue":"Proc. of IJCAI","doi":null,"url":null,"internal_url":null},{"position":22,"raw":"[Lemire and Kaser, 2016] Daniel Lemire and Owen Kaser. Faster 64-bit universal hashing using carry-less multiplications. Journal of Cryptographic Engineering, pages 171-185, 2016.","title":"Faster 64-bit universal hashing using carry-less multiplications","authors":"Kaser Lemire, Daniel Lemire, Owen Kaser","year":"2016","venue":"Journal of Cryptographic Engineering","doi":null,"url":null,"internal_url":null},{"position":23,"raw":"[Marques-Silva and Sakallah, 1999] J. P. Marques-Silva and K. A. Sakallah. GRASP: a search algorithm for propositional satisfia- bility. IEEE Transactions on Computers, pages 506-521, 1999.","title":"GRASP: a search algorithm for propositional satisfiability","authors":"J P Marques-Silva, K A Sakallah","year":"1999","venue":"IEEE Transactions on Computers","doi":null,"url":null,"internal_url":null},{"position":24,"raw":"[Meel et al., 2016] Kuldeep S. Meel, Moshe Y. Vardi, Supratik Chakraborty, Daniel J Fremont, Sanjit A Seshia, Dror Fried, Alexander Ivrii, and Sharad Malik. Constrained Sampling and Counting: Universal Hashing Meets SAT Solving. In Proc. of Beyond NP Workshop, 2016.","title":"Constrained Sampling and Counting: Universal Hashing Meets SAT Solving","authors":"S Kuldeep, Moshe Y Meel, Supratik Vardi, Chakraborty, J Daniel, Fremont, A Sanjit, Dror Seshia, Alexander Fried, Sharad Ivrii, Malik","year":"2016","venue":"Proc. of Beyond NP Workshop","doi":null,"url":null,"internal_url":null},{"position":25,"raw":"[Minato, 1993] S. Minato. Zero-Suppressed BDDs for Set Manip- ulation in Combinatorial Problems. In Proc. of DAC, pages 272- 277, 1993.","title":"Zero-Suppressed BDDs for Set Manipulation in Combinatorial Problems","authors":"S Minato","year":"1993","venue":"Proc. of DAC","doi":null,"url":null,"internal_url":null},{"position":26,"raw":"[Moskewicz et al., 2001] Matthew W Moskewicz, Conor F Madi- gan, Ying Zhao, Lintao Zhang, and Sharad Malik. Chaff: Engi- neering an efficient SAT solver. In Proc. of DAC, pages 530-535, 2001.","title":"Chaff: Engineering an efficient SAT solver","authors":"Matthew W Moskewicz, Ying Conor F Madigan, Lintao Zhao, Sharad Zhang, Malik","year":"2001","venue":"Proc. of DAC","doi":null,"url":null,"internal_url":null},{"position":27,"raw":"[Muise et al., 2012] Christian Muise, Sheila A. McIlraith, J. Christopher Beck, and Eric I. Hsu. Dsharp: Fast d-DNNF Compilation with sharpSAT. In Proc. of CAI, pages 356-361, 2012.","title":"Dsharp: Fast d-DNNF Compilation with sharpSAT","authors":"Christian Muise, Sheila A Mcilraith, J Christopher Beck, Eric I Hsu","year":"2012","venue":"Proc. of CAI","doi":null,"url":null,"internal_url":null},{"position":28,"raw":"[Pipatsrisawat and Darwiche, 2007] Knot Pipatsrisawat and Adnan Darwiche. A Lightweight Component Caching Scheme for Sat- isfiability Solvers. In Proc. of SAT, pages 294-299, 2007.","title":"Knot Pipatsrisawat and Adnan Darwiche. A Lightweight Component Caching Scheme for Satisfiability Solvers","authors":"Darwiche Pipatsrisawat","year":"2007","venue":"Proc. of SAT","doi":null,"url":null,"internal_url":null},{"position":29,"raw":"[Roth, 1996] Dan Roth. On the hardness of approximate reasoning. Artificial Intelligence, pages 273-302, 1996.","title":"On the hardness of approximate reasoning","authors":"Dan Roth","year":"1996","venue":"Artificial Intelligence","doi":null,"url":null,"internal_url":null},{"position":30,"raw":"[Samer and Szeider, 2007] Marko Samer and Stefan Szeider. Al- gorithms for Propositional Model Counting. In Proc. of LPAR, pages 484-498, 2007.","title":"Algorithms for Propositional Model Counting","authors":"Marko Samer, Stefan Szeider","year":"2007","venue":"Proc. of LPAR","doi":null,"url":null,"internal_url":null},{"position":31,"raw":"[Sang et al., 2004] Tian Sang, Fahiem Bacchus, Paul Beame, Henry A Kautz, and Toniann Pitassi. Combining component caching and clause learning for effective model counting. In Proc. of SAT, 2004.","title":"Combining component caching and clause learning for effective model counting","authors":"Tian Sang, Fahiem Bacchus, Paul Beame, Henry A Kautz, Toniann Pitassi","year":"2004","venue":"Proc. of SAT","doi":null,"url":null,"internal_url":null},{"position":32,"raw":"[Sang et al., 2005a] Tian Sang, Paul Beame, and Henry Kautz. Heuristics for Fast Exact Model Counting. In Proc. of SAT, pages 226-240, 2005.","title":"Heuristics for Fast Exact Model Counting","authors":"Sang","year":"2005","venue":"Proc. of SAT","doi":null,"url":null,"internal_url":null},{"position":33,"raw":"[Sang et al., 2005b] Tian Sang, Paul Beame, and Henry Kautz. Per- forming Bayesian inference by weighted model counting. In Prof. of AAAI, pages 475-481, 2005.","title":"Performing Bayesian inference by weighted model counting","authors":"Sang","year":"2005","venue":"Prof. of AAAI","doi":null,"url":null,"internal_url":null},{"position":34,"raw":"[SAT, 2017] Proc. of SAT Competition 2017: Solver and Bench- mark Descriptions. University of Helsinki, Department of Com- puter Science, 2017.","title":"Proc. of SAT Competition 2017: Solver and Benchmark Descriptions","authors":null,"year":"2017","venue":null,"doi":null,"url":null,"internal_url":null},{"position":35,"raw":"[Sharma et al., 2018] Shubham Sharma, Rahul Gupta, Subhajit Roy, and Kuldeep S. Meel. Knowledge Compilation meets Uni- form Sampling. In Proc. of LPAR, pages 620-636, 2018.","title":"Knowledge Compilation meets Uniform Sampling","authors":"Shubham Sharma, Rahul Gupta, Subhajit Roy, Kuldeep S Meel","year":"2018","venue":"Proc. of LPAR","doi":null,"url":null,"internal_url":null},{"position":36,"raw":"[Soos and Meel, 2019] Mate Soos and Kuldeep S. Meel. BIRD: Engineering an Efficient CNF-XOR SAT Solver and its Appli- cations to Approximate Model Counting. In Proc of AAAI, 2019.","title":"BIRD: Engineering an Efficient CNF-XOR SAT Solver and its Applications to Approximate Model Counting","authors":"Meel ; ] Mate Soos, Kuldeep S Soos, Meel","year":"2019","venue":"Proc of AAAI","doi":null,"url":null,"internal_url":null},{"position":37,"raw":"[Stockmeyer, 1983] Larry Stockmeyer. The complexity of approx- imate counting. In Proc. of STOC, pages 118-126, 1983.","title":"The complexity of approximate counting","authors":"Larry Stockmeyer, Stockmeyer","year":"1983","venue":"Proc. of STOC","doi":null,"url":null,"internal_url":null},{"position":38,"raw":"[Thurley, 2006] Marc Thurley. SharpSAT: counting models with advanced component caching and implicit BCP. In Proc. of SAT, pages 424-429, 2006.","title":"SharpSAT: counting models with advanced component caching and implicit BCP","authors":"Marc Thurley","year":"2006","venue":"Proc. of SAT","doi":null,"url":null,"internal_url":null},{"position":39,"raw":"[Toda, 1989] Seinosuke Toda. On the computational power of PP and (+)P. In Proc. of FOCS, pages 514-519, 1989.","title":"Seinosuke Toda. On the computational power of PP and (+)P","authors":"Toda","year":"1989","venue":"Proc. of FOCS","doi":null,"url":null,"internal_url":null},{"position":40,"raw":"[Valiant, 1979] Leslie G. Valiant. The Complexity of Enumera- tion and Reliability Problems. SIAM J. Comput., pages 410-421, 1979.","title":"The Complexity of Enumeration and Reliability Problems","authors":"Leslie G Valiant","year":"1979","venue":"SIAM J. Comput","doi":null,"url":null,"internal_url":null}],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}