Exact Cover via Satisfiability: An Empirical Study

  • Tommi Junttila
  • Petteri Kaski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6308)


Many tasks in combinatorial computation admit a natural formulation as instances of the exact cover problem. We observe that the exact cover problem can in turn be compactly translated to the satisfiability (SAT) problem, allowing the basic Davis-Putnam-Logemann-Loveland procedure with no clause learning to linearly simulate backtrack search for exact cover. This SAT-based approach is empirically compared with a widely applied backtrack search algorithm, Knuth’s “Dancing Links X” algorithm, on a set of benchmark problems arising in combinatorial enumeration. The experimental results indicate that the current model-counting SAT solvers are in general superior in pruning the search space, but still need to be optimized for running time.


Conjunctive Normal Form Truth Assignment Cardinality Constraint Steiner Triple System Conjunctive Normal Form Formula 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Colbourn, C.J., Dinitz, J.H.: Handbook of Combinatorial Designs, 2nd edn. Chapman & Hall/CRC (2007)Google Scholar
  2. 2.
    Lam, C.W.H., Thiel, L., Swiercz, S.: The nonexistence of finite projective planes of order 10. Canadian Journal of Mathematics 41(6), 1117–1123 (1989)zbMATHMathSciNetGoogle Scholar
  3. 3.
    Kaski, P., Östergård, P.R.J.: Classification Algorithms for Codes and Designs. Springer, Heidelberg (2006)zbMATHGoogle Scholar
  4. 4.
    Knuth, D.E.: Dancing links. arXiv:cs/0011047 (November 2000)Google Scholar
  5. 5.
    Gomes, C.P., Sabharwal, A., Selman, B.: Model counting. In: [6], pp. 633–654Google Scholar
  6. 6.
    Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.): Handbook of Satisfiability. IOS Press, Amsterdam (2009)zbMATHGoogle Scholar
  7. 7.
    Prestwich, S.: CNF encodings. In: [6], pp. 75–97Google Scholar
  8. 8.
    Roussel, O., Manquinho, V.M.: Pseudo-boolean and cardinality constraints. In: [6], pp.695–733Google Scholar
  9. 9.
    Simons, P., Niemelä, I., Soininen, T.: Extending and implementing the stable model semantics. Artificial Intelligence 138(1-2), 181–234 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Beame, P., Kautz, H.A., Sabharwal, A.: Towards understanding and harnessing the potential of clause learning. Journal of Artificial Intelligence Research 22, 319–351 (2004)zbMATHMathSciNetGoogle Scholar
  11. 11.
    Pipatsrisawat, K., Darwiche, A.: On the power of clause-learning SAT solvers with restarts. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 654–668. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  12. 12.
    Kaski, P., Pottonen, O.: libexact user’s guide. HIIT Technical Reports 2008-1, Helsinki Institute for Information Technology HIIT (2008)Google Scholar
  13. 13.
    Sang, T., Beame, P., Kautz, H.A.: Heuristics for fast exact model counting. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 226–240. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Thurley, M.: sharpSAT — counting models with advanced component caching and implicit BCP. In: Biere, A., Gomes, C.P. (eds.) SAT 2006. LNCS, vol. 4121, pp. 424–429. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Li, C.M., Anbulagan: Look-ahead versus look-back for satisfiability problems. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330, pp. 341–355. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  16. 16.
    Bayardo Jr., R.J., Pehoushek, J.D.: Counting models using connected components. In: Proc. AAAI/IAAI 2000, pp. 157–162. AAAI Press/The MIT Press (2000)Google Scholar
  17. 17.
    Gebser, M., Kaufmann, B., Schaub, T.: Solution enumeration for projected boolean search problems. In: van Hoeve, W.-J., Hooker, J.N. (eds.) CPAIOR 2009. LNCS, vol. 5547, pp. 71–86. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  18. 18.
    Davies, J., Bacchus, F.: Using more reasoning to improve #SAT solving. In: Proc. AAAI 2007, pp. 185–190. AAAI Press, Menlo Park (2007)Google Scholar
  19. 19.
    Morgado, A., Marques-Silva, J.: Good learning and implicit model enumeration. In: Proc. ICTAI 2005, pp. 131–136. IEEE Computer Society, Los Alamitos (2005)Google Scholar
  20. 20.
    Darwiche, A.: New advances in compiling CNF to decomposable negation normal form. In: Proc. ECAI 2004, pp. 328–332. IOS Press, Amsterdam (2004)Google Scholar
  21. 21.
    Achterberg, T.: Constraint Integer Programming. PhD thesis, Technische Universität Berlin (2007),
  22. 22.
    Achterberg, T., Heinz, S., Koch, T.: Counting solutions of integer programs using unrestricted subtree detection. In: Perron, L., Trick, M.A. (eds.) CPAIOR 2008. LNCS, vol. 5015, pp. 278–282. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  23. 23.
    Eén, N., Sörensson, N.: An extensible SAT solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Tommi Junttila
    • 1
  • Petteri Kaski
    • 2
  1. 1.Department of Information and Computer ScienceAalto UniversityAaltoFinland
  2. 2.Department of Information and Computer ScienceHelsinki Institute for Information Technology HIIT, Aalto UniversityAaltoFinland

Personalised recommendations