A New Approach to Model Counting

  • Wei Wei
  • Bart Selman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3569)


We introduce ApproxCount, an algorithm that approximates the number of satisfying assignments or models of a formula in propositional logic. Many AI tasks, such as calculating degree of belief and reasoning in Bayesian networks, are computationally equivalent to model counting. It has been shown that model counting in even the most restrictive logics, such as Horn logic, monotone CNF and 2CNF, is intractable in the worst-case. Moreover, even approximate model counting remains a worst-case intractable problem. So far, most practical model counting algorithms are based on backtrack style algorithms such as the DPLL procedure. These algorithms typically yield exact counts but are limited to relatively small formulas. Our ApproxCount algorithm is based on SampleSat, a new algorithm that samples from the solution space of a propositional logic formula near-uniformly. We provide experimental results for formulas from a variety of domains. The algorithm produces good estimates for formulas much larger than those that can be handled by existing algorithms.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bayardo Jr., R.J., Pehoushek, J.D.: Counting Models Using Connected Components. In: Proc. AAAI 2000 (2000)Google Scholar
  2. 2.
    Birnbaum, E., Lozinskii, E.L.: The Good Old Davis-Putnam Procedure Helps Counting Models. Journal of Artificial Intelligence Research 10, 457–477 (1999)zbMATHMathSciNetGoogle Scholar
  3. 3.
    Darwiche, A.: A Compiler for Deterministic, Decomposable Negation Normal Form. In: Proc. AAAI 2002 (2002)Google Scholar
  4. 4.
    Davis, M., Logemann, G., Loveland, D.: A Machine Program for Theorem-Proving. Communications of the ACM 5, 394–397 (1962)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Hoos, H.H., Stützle, T.: SATLIB: An Online Resource for Research on SAT. In: Gent, I.P., von Maaren, H., Walsh, T. (eds.) SAT 2000, pp. 283–292. IOS Press, Amsterdam (2000), SATLIB is available online at Google Scholar
  6. 6.
    Huang, J., Darwiche, A.: Using DPLL for Efficient OBDD Construction. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 157–172. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Jerrum, M.R., Valiant, L.G., Vazirani, V.V.: Random Generation of Combinatorial Structures from a Uniform Distribution. Theoretical Computer Science 43, 169–188 (1986)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Kautz, H., Selman, B.: Planning as Satisfiability. In: Proceedings ECAI 1992 (1992)Google Scholar
  9. 9.
    Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Engineering a Highly Efficient SAT Solver. In: 38th Design Autom. Conference, DAC 2001 (2001)Google Scholar
  10. 10.
    Papadimitriou, C.H.: On Selecting a Satisfying Truth Assignment. In: Proceedings of the Conference on the Foundations of Computer Science, pp. 163–169 (1991)Google Scholar
  11. 11.
    Roth, D.: On the Hardness of Approximate Reasoning. Artificial Intelligence 82, 273–302 (1996)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Sang, T., Bacchus, F., Beame, P., Kautz, H., Pitassi, T.: Combining Component Caching and Clause Learning for Effective Model Counting. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542. Springer, Heidelberg (2005)Google Scholar
  13. 13.
    Selman, B., Kautz, H., Cohen, B.: Local Search Strategies for Satisfiability Testing. In: 2nd DIMACS Challenge on Cliques, Coloring and Satisfiability (1994)Google Scholar
  14. 14.
    Toba, S.: PP is as Hard as the Polynomial-Time Hierarchy. SIAM Journal on Computing 20(5), 865–877 (1991)CrossRefMathSciNetGoogle Scholar
  15. 15.
    Valiant, L.G.: The Complexity of Enumeration and Reliability Problems. SIAM Journal on Computing 8(3), 410–421 (1979)zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Velev, M.N., Bryant, R.E.: Effective Use of Boolean Satisfiability Procedures in the Formal Verification of Superscalar and VLIW Microprocessors. Journal of Symbolic Computation 35(2), 73–106 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Wei, W., Erenrich, J., Selman, B.: Towards Efficient Sampling: Exploiting Random Walk Strategies. In: Proc. AAAI 2004 (2004)Google Scholar
  18. 18.
    Wei, W., Selman, B.: Accelerating Random Walks. In: Van Hentenryck, P. (ed.) CP 2002. LNCS, vol. 2470, p. 216. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  19. 19.

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Wei Wei
    • 1
  • Bart Selman
    • 1
  1. 1.Department of Computer ScienceCornell UniversityIthacaUSA

Personalised recommendations