Algorithms for Counting 2-Sat Solutions and Colorings with Applications

  • Martin Fürer
  • Shiva Prasad Kasiviswanathan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4508)


An algorithm is presented for exactly counting the number of maximum weight satisfying assignments of a 2-Cnf formula. The worst case running time of O( 1.246 n ) for formulas with n variables improves on the previous bound of O( 1.256 n ) by Dahllöf, Jonsson, and Wahlström. The algorithm uses only polynomial space. As a direct consequence we get an O(1.246 n ) time algorithm for counting maximum weighted independent sets in a graph.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Angelsmark, O.: Constructing algorithms for constraint satisfaction and related problems: Methods and applications. PhD. thesis, Linköping University (2005)Google Scholar
  2. 2.
    Beigel, R., Eppstein, D.: 3-coloring in time O(1.3289n). Journal of Algorithms 54(2), 168–204 (2005)CrossRefMathSciNetMATHGoogle Scholar
  3. 3.
    Björklund, A., Husfeldt, T.: Inclusion–exclusion algorithms for counting set partitions. In: Foundations of Computer Science, pp. 575–582. IEEE Computer Society Press, Los Alamitos (2006)Google Scholar
  4. 4.
    Dahllöf, V., Jonsson, P.: An algorithm for counting maximum weighted independent sets and its applications. In: Symposium on Discrete Algorithms, pp. 292–298. SIAM, Philadelphia (2002)Google Scholar
  5. 5.
    Dahllöf, V., Jonsson, P., Wahlström, M.: Counting satisfying assignments in 2-SAT and 3-SAT. In: H. Ibarra, O., Zhang, L. (eds.) COCOON 2002. LNCS, vol. 2387, pp. 535–543. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  6. 6.
    Dahllöf, V., Jonsson, P., Wahlström, M.: Counting models for 2SAT and 3SAT formulae. Theoretical Computer Science 332(1-3), 265–291 (2005)CrossRefMathSciNetMATHGoogle Scholar
  7. 7.
    Dantsin, E., Gavrilovich, M., Hirsch, E., Konev, B.: MAX SAT approximation beyond the limits of polynomial-time approximation. Annals of Pure and Applied Logic 113, 81–94 (2002)CrossRefMathSciNetMATHGoogle Scholar
  8. 8.
    Davis, M., Logemann, G., Loveland, D.: A machine program for theorem-proving. Communications of the ACM 5(7), 394–397 (1962)CrossRefMathSciNetMATHGoogle Scholar
  9. 9.
    Davis, M., Putnam, H.: A computing procedure for quantification theory. Journal of Association Computer Machinery 7, 201–215 (1960)MathSciNetMATHGoogle Scholar
  10. 10.
    Dubois, O.: Counting the number of solutions for instances of satisfiability. Theoretical Computer Science 81(1), 49–64 (1991)CrossRefMathSciNetMATHGoogle Scholar
  11. 11.
    Fürer, M., Kasiviswanathan, S.P.: Algorithms for counting 2-SAT solutions and colorings with applications. TR05-033, Electronic Colloquium on Computational Complexity (2005)Google Scholar
  12. 12.
    Koivisto, M.: An O *(2n ) algorithm for graph coloring and other partitioning problems via inclusion–exclusion. In: Foundations of Computer Science, pp. 583–590. IEEE Computer Society Press, Los Alamitos (2006)Google Scholar
  13. 13.
    Kozen, D.C.: The Design and Analysis of Algorithms. Springer, Berlin (1992)Google Scholar
  14. 14.
    Kullmann, O.: New methods for 3-SAT decision and worst-case analysis. Theoretical Computer Science 223, 1–72 (1999)CrossRefMathSciNetMATHGoogle Scholar
  15. 15.
    Littman, M.L., Pitassi, T., Impagliazzo, R.: On the complexity of counting satisfying assignments. In: The Working notes of LICS 2001 Workshop on Satisfiability (2001)Google Scholar
  16. 16.
    Roth, D.: On the hardness of approximate reasoning. Artificial Intelligence 82(2), 273–302 (1996)CrossRefMathSciNetGoogle Scholar
  17. 17.
    Vadhan, S.P.: The complexity of counting in sparse, regular, and planar graphs. SIAM Journal on Computing 31(2), 398–427 (2002)CrossRefMathSciNetGoogle Scholar
  18. 18.
    Valiant, L.G.: The complexity of computing the permanent. Theoretical Computer Science 8(2), 189–201 (1979)CrossRefMathSciNetMATHGoogle Scholar
  19. 19.
    Valiant, L.G.: The complexity of enumeration and reliability problems. SIAM Journal of Computing 8(3), 410–421 (1979)CrossRefMathSciNetMATHGoogle Scholar
  20. 20.
    Zhang, W.: Number of models and satisfiability of sets of clauses. Theoretical Computer Science 155(1), 277–288 (1996)CrossRefMathSciNetMATHGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Martin Fürer
    • 1
  • Shiva Prasad Kasiviswanathan
    • 1
  1. 1.Computer Science and Engineering, Pennsylvania State University 

Personalised recommendations