Skip to main content

Laissez-Faire Caching for Parallel #SAT Solving

  • Conference paper
  • First Online:
Theory and Applications of Satisfiability Testing -- SAT 2015 (SAT 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9340))

Abstract

The problem of counting the number of satisfying assignments of a propositional formula (#SAT) can be considered to be the big brother of the well known SAT problem. However, the higher computational complexity and a lack of fast solvers currently limit its usability for real world problems.

Similar to SAT, utilizing the parallel computation power of modern CPUs could greatly increase the solving speed in the realm of #SAT. However, in comparison to SAT there is an additional obstacle for the parallelization of #SAT that is caused by the usage of conflict learning together with the #SAT specific techniques of component caching and sub-formula decomposition. The combination can result in an incorrect final result being computed due to incorrect values in the formula cache. This problem is easily resolvable in a sequential solver with a depth-first node order but requires additional care and handling in a parallel one. In this paper we introduce laissez-faire caching which allows for an arbitrary node computation order in both a sequential and parallel solver while ensuring a correct final result. Additionally, we apply this new caching approach to build countAntom, the world’s first parallel #SAT-solver.

Our experimental results clearly show that countAntom achieves considerable speedups through the parallel computation while maintaining correct results on a large variety of benchmarks coming from different real-world applications. Moreover, our analysis indicates that laissez-faire caching only adds a small computational overhead.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Garey, M.R., Johnson, D.S.: Computers and Intractability; A Guide to the Theory of NP-Completeness. W.H. Freeman & Co., New York (1990)

    MATH  Google Scholar 

  2. Schubert, T., Lewis, M., Becker, B.: PaMiraXT: Parallel SAT solving with threads and message passing. Journal on Satisfiability, Boolean Modeling and Computation 6, 203–222 (2009)

    MATH  Google Scholar 

  3. Biere, A.: Lingeling, plingeling and treengeling entering the sat competition 2013. In: Proceedings of SAT Competition 2013. vol. B-2013-1. University of Helsinki, Department of Computer Science Series of Publications (2013)

    Google Scholar 

  4. Hamadi, Y., Jabbour, S., Sais, L.: Manysat: a parallel SAT solver. Journal on Satisfiability, Boolean Modeling and Computation 6(4), 245–262 (2009)

    MATH  Google Scholar 

  5. Sang, T., Bacchus, F., Beame, P., Kautz, H.A., Pitassi, T.: Combining component caching and clause learning for effective model counting. In: SAT 2004 - The Seventh International Conference on Theory and Applications of Satisfiability Testing 10–13 May 2004 Vancouver BC Canada Online Proceedings (2004)

    Google Scholar 

  6. 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)

    Chapter  Google Scholar 

  7. Meel, K.S.: Sampling techniques for boolean satisfiability. CoRR abs/1404.6682 (2014)

    Google Scholar 

  8. Davis, M., Logemann, G., Loveland, D.: A machine program for theorem-proving. Commun. ACM 5(7), 394–397 (1962)

    Article  MathSciNet  MATH  Google Scholar 

  9. Bayardo, R.J., Pehoushek, J.D.: Counting models using connected components. In: AAAI National Conference, pp. 157–162 (2000)

    Google Scholar 

  10. Bacchus, F., Dalmao, S., Pitassi, T.: Algorithms and complexity results for #sat and bayesian inference. In: 44th annual IEEE Symposium on Foundations of Computer Science (FOCS), pp. 340–351 (2004)

    Google Scholar 

  11. Schubert, T., Lewis, M., Becker, B.: Antom - solver description. SAT Race (2010)

    Google Scholar 

  12. Kempf, B.: The boost.threads library. C/C++ Users Journal (2002)

    Google Scholar 

  13. Sang, T., Beame, P., Kautz, H.: Heuristics for fast exact model counting. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 226–240. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Sauer, M., Burchard, J., Schubert, T., Polian, I., Becker, B.: Waveform-guided fault injection by clock manipulation. In: TRUDEVICE: First Workshop on Trustworthy Manufacturing and Utilization of Secure Devices (2013)

    Google Scholar 

  15. Corno, F., Reorda, M.S., Squillero, G.: RT-level ITC’99 benchmarks and first ATPG results. IEEE Des. Test 17(3), 44–53 (2000)

    Article  Google Scholar 

  16. Brglez, F., Bryan, D., Kozminski, K.: Combinational profiles of sequential benchmark circuits. In: IEEE International Symposium on Circuits and Systems, vol. 3, pp. 1929–1934 (1989)

    Google Scholar 

  17. Brglez, F., Fujiwara, H.: A neutral netlist of 10 combinational benchmark circuits and a target translator in fortran. In: Proceedings of IEEE Int’l Symposium Circuits and Systems (ISCAS 1985), pp. 677–692. IEEE Press, Piscataway (1985)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jan Burchard .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Burchard, J., Schubert, T., Becker, B. (2015). Laissez-Faire Caching for Parallel #SAT Solving. In: Heule, M., Weaver, S. (eds) Theory and Applications of Satisfiability Testing -- SAT 2015. SAT 2015. Lecture Notes in Computer Science(), vol 9340. Springer, Cham. https://doi.org/10.1007/978-3-319-24318-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-24318-4_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-24317-7

  • Online ISBN: 978-3-319-24318-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics