Speeding up Pseudo-Boolean Propagation

Authors Robert Nieuwenhuis , Albert Oliveras , Enric Rodríguez-Carbonell , Rui Zhao



PDF
Thumbnail PDF

File

LIPIcs.SAT.2024.22.pdf
  • Filesize: 0.98 MB
  • 18 pages

Document Identifiers

Author Details

Robert Nieuwenhuis
  • Barcelogic.com, Barcelona, Spain
Albert Oliveras
  • Technical University of Catalonia, Barcelona, Spain
Enric Rodríguez-Carbonell
  • Technical University of Catalonia, Barcelona, Spain
Rui Zhao
  • Technical University of Catalonia, Barcelona, Spain

Cite AsGet BibTex

Robert Nieuwenhuis, Albert Oliveras, Enric Rodríguez-Carbonell, and Rui Zhao. Speeding up Pseudo-Boolean Propagation. In 27th International Conference on Theory and Applications of Satisfiability Testing (SAT 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 305, pp. 22:1-22:18, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)
https://doi.org/10.4230/LIPIcs.SAT.2024.22

Abstract

Unit propagation is known to be one of the most time-consuming procedures inside CDCL-based SAT solvers. Not surprisingly, it has been studied in depth and the two-watched-literal scheme, enhanced with implementation details boosting its performance, has emerged as the dominant method. In pseudo-Boolean solvers, the importance of unit propagation is similar, but no dominant method exists: counter propagation and watched-based extensions are efficient for different types of constraints, which has opened the door to hybrid methods. However, probably due to the higher complexity of implementing pseudo-Boolean solvers, research efforts have not focused much on concrete implementation details for unit propagation but rather on higher-level aspects of other procedures, such as conflict analysis. In this paper, we present (i) a novel methodology to precisely assess the performance of propagation mechanisms, (ii) an evaluation of implementation variants of the propagation methods present in {RoundingSat} and (iii) a detailed analysis showing that hybrid methods outperform the ones based on a single technique. Our final contribution is to show that a carefully implemented hybrid propagation method is considerably faster than the preferred propagation mechanism in {RoundingSat}, and that this improvement leads to a better overall performance of the solver.

Subject Classification

ACM Subject Classification
  • Theory of computation
Keywords
  • SAT
  • Pseudo-Boolean Solving
  • Implementation-level Details

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. RoundingSAT web page. https://gitlab.com/MIAOresearch/software/roundingsat. Accessed: 2024-03-11.
  2. Roberto Javier Asín Achá and Robert Nieuwenhuis. Curriculum-based course timetabling with SAT and maxsat. Ann. Oper. Res., 218(1):71-91, 2014. Google Scholar
  3. Fadi A. Aloul, Arathi Ramani, Igor L. Markov, and Karem A. Sakallah. Generic ILP versus specialized 0-1 ILP: an update. In Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design, ICCAD '02, pages 450-457, New York, NY, USA, 2002. ACM. URL: https://doi.org/10.1145/774572.774638.
  4. Albert Atserias, Johannes Klaus Fichte, and Marc Thurley. Clause-learning algorithms with many restarts and bounded-width resolution. J. Artif. Intell. Res., 40:353-373, 2011. URL: https://doi.org/10.1613/jair.3152.
  5. Daniel Le Berre and Anne Parrain. The sat4j library, release 2.2. JSAT, 7(2-3):59-6, 2010. URL: http://jsat.ewi.tudelft.nl/content/volume7/JSAT7_4_LeBerre.pdf, URL: https://doi.org/10.3233/SAT190075.
  6. Armin Biere. Picosat essentials. JSAT, 4(2-4):75-97, 2008. URL: http://jsat.ewi.tudelft.nl/content/volume4/JSAT4_5_Biere.pdf.
  7. Armin Biere. Lingeling, Plingeling, PicoSAT and PrecoSAT at SAT Race 2010. Technical report, Institute for Formal Models and Verification, Johannes Kepler University, Altenbergerstr. 69, 4040 Linz, Austria, 2010. Technical Report 10/1, August 2010, FMV Reports Series. Google Scholar
  8. Armin Biere. Lingeling essentials, A tutorial on design and implementation aspects of the the SAT solver lingeling. In Daniel Le Berre, editor, POS-14. Fifth Pragmatics of SAT workshop, a workshop of the SAT 2014 conference, part of FLoC 2014 during the Vienna Summer of Logic, July 13, 2014, Vienna, Austria, volume 27 of EPiC Series in Computing, page 88. EasyChair, 2014. URL: https://doi.org/10.29007/JHD7.
  9. Armin Biere, Katalin Fazekas, Mathias Fleury, and Maximillian Heisinger. CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling entering the SAT Competition 2020. In Tomas Balyo, Nils Froleyks, Marijn Heule, Markus Iser, Matti Järvisalo, and Martin Suda, editors, Proc. of SAT Competition 2020 - Solver and Benchmark Descriptions, volume B-2020-1 of Department of Computer Science Report Series B, pages 51-53. University of Helsinki, 2020. Google Scholar
  10. Armin Biere and Daniel Kröning. Sat-based model checking. In Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, and Roderick Bloem, editors, Handbook of Model Checking, pages 277-303. Springer, 2018. URL: https://doi.org/10.1007/978-3-319-10575-8_10.
  11. Donald Chai and Andreas Kuehlmann. A fast pseudo-boolean constraint solver. IEEE Trans. on CAD of Integrated Circuits and Systems, 24(3):305-317, 2005. Google Scholar
  12. Geoffrey Chu, Aaron Harwood, and Peter J. Stuckey. Cache conscious data structures for boolean satisfiability solvers. J. Satisf. Boolean Model. Comput., 6(1-3):99-120, 2009. URL: https://doi.org/10.3233/SAT190064.
  13. W. Cook, C. Coullard, and Gy. Turan. On the complexity of cutting-plane proofs. Discrete Applied Mathematics, 18:25-38, 1987. Google Scholar
  14. Jo Devriendt. Watched propagation of 0-1 integer linear constraints. In Helmut Simonis, editor, Principles and Practice of Constraint Programming - 26th International Conference, CP 2020, Louvain-la-Neuve, Belgium, September 7-11, 2020, Proceedings, volume 12333 of Lecture Notes in Computer Science, pages 160-176. Springer, 2020. URL: https://doi.org/10.1007/978-3-030-58475-7_10.
  15. Jo Devriendt, Ambros M. Gleixner, and Jakob Nordström. Learn to relax: Integrating 0-1 integer linear programming with pseudo-boolean conflict-driven search. Constraints An Int. J., 26(1):26-55, 2021. URL: https://doi.org/10.1007/S10601-020-09318-X.
  16. Jo Devriendt, Stephan Gocht, Emir Demirovic, Jakob Nordström, and Peter J. Stuckey. Cutting to the core of pseudo-boolean optimization: Combining core-guided search with cutting planes reasoning. In Thirty-Fifth AAAI Conference on Artificial Intelligence, AAAI 2021, Thirty-Third Conference on Innovative Applications of Artificial Intelligence, IAAI 2021, The Eleventh Symposium on Educational Advances in Artificial Intelligence, EAAI 2021, Virtual Event, February 2-9, 2021, pages 3750-3758. AAAI Press, 2021. URL: https://doi.org/10.1609/AAAI.V35I5.16492.
  17. Julian Dolby, Mandana Vaziri, and Frank Tip. Finding Bugs Efficiently With a SAT Solver. In Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 195-204, 2007. URL: https://doi.org/10.1145/1287624.1287653.
  18. Niklas Eén and Niklas Sörensson. An Extensible SAT-solver. In E. Giunchiglia and A. Tacchella, editors, 6th International Conference on Theory and Applications of Satisfiability Testing, SAT '03, volume 2919 of Lecture Notes in Computer Science, pages 502-518. Springer, 2004. Google Scholar
  19. Jan Elffers and Jakob Nordström. Divide and conquer: Towards faster pseudo-boolean solving. In Jérôme Lang, editor, Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, IJCAI 2018, July 13-19, 2018, Stockholm, Sweden, pages 1291-1299. ijcai.org, 2018. URL: https://doi.org/10.24963/ijcai.2018/180.
  20. Ian P. Gent. Optimal implementation of watched literals and more general techniques. J. Artif. Intell. Res., 48:231-251, 2013. URL: https://doi.org/10.1613/JAIR.4016.
  21. Armin Haken. The intractability of resolution. Theoretical Computer Science, 39(2 & 3):297-308, 1985. Google Scholar
  22. Marijn J. H. Heule, Oliver Kullmann, and Victor W. Marek. Solving and verifying the boolean pythagorean triples problem via cube-and-conquer. In Nadia Creignou and Daniel Le Berre, editors, Theory and Applications of Satisfiability Testing - SAT 2016 - 19th International Conference, Bordeaux, France, July 5-8, 2016, Proceedings, volume 9710 of Lecture Notes in Computer Science, pages 228-245. Springer, 2016. URL: https://doi.org/10.1007/978-3-319-40970-2_15.
  23. Steffen Hölldobler, Norbert Manthey, and Ari Saptawijaya. Improving resource-unaware SAT solvers. In Christian G. Fermüller and Andrei Voronkov, editors, Logic for Programming, Artificial Intelligence, and Reasoning - 17th International Conference, LPAR-17, Yogyakarta, Indonesia, October 10-15, 2010. Proceedings, volume 6397 of Lecture Notes in Computer Science, pages 519-534. Springer, 2010. URL: https://doi.org/10.1007/978-3-642-16242-8_37.
  24. Norbert Manthey and Ari Saptawijaya. Towards improving the resource usage of sat-solvers. In Daniel Le Berre, editor, POS-10. Pragmatics of SAT, Edinburgh, UK, July 10, 2010, volume 8 of EPiC Series in Computing, pages 28-40. EasyChair, 2010. URL: https://doi.org/10.29007/3VWV.
  25. João Marques-Silva, Inês Lynce, and Sharad Malik. Conflict-driven clause learning SAT solvers. In Armin Biere, Marijn Heule, Hans van Maaren, and Toby Walsh, editors, Handbook of Satisfiability - Second Edition, volume 336 of Frontiers in Artificial Intelligence and Applications, pages 133-182. IOS Press, 2021. URL: https://doi.org/10.3233/FAIA200987.
  26. Matthew W. Moskewicz, Conor F. Madigan, Ying Zhao, Lintao Zhang, and Sharad Malik. Chaff: engineering an efficient SAT solver. In Proceedings of the 38th annual Design Automation Conference, DAC '01, pages 530-535, New York, NY, USA, 2001. ACM. Google Scholar
  27. Knot Pipatsrisawat and Adnan Darwiche. On the power of clause-learning SAT solvers as resolution engines. Artif. Intell., 175(2):512-525, 2011. URL: https://doi.org/10.1016/j.artint.2010.10.002.
  28. Olivier Roussel and Vasco M. Manquinho. Pseudo-boolean and cardinality constraints. In A. Biere, M. Heule, H. van Maaren, and T. Walsh, editors, Handbook of Satisfiability, volume 185 of Frontiers in AI and Applications, pages 695-733. IOS Press, 2009. URL: https://doi.org/10.3233/978-1-58603-929-5-695.
  29. Hossein M. Sheini and Karem A. Sakallah. Pueblo: A modern pseudo-boolean SAT solver. In 2005 Design, Automation and Test in Europe Conference and Exposition (DATE 2005), 7-11 March 2005, Munich, Germany, pages 684-685. IEEE Computer Society, 2005. URL: https://doi.org/10.1109/DATE.2005.246.
  30. Hossein M. Sheini and Karem A. Sakallah. Pueblo: A hybrid pseudo-boolean SAT solver. JSAT, 2(1-4):165-189, 2006. Google Scholar
  31. Mate Soos, Karsten Nohl, and Claude Castelluccia. Extending SAT solvers to cryptographic problems. In Oliver Kullmann, editor, Theory and Applications of Satisfiability Testing - SAT 2009, 12th International Conference, SAT 2009, Swansea, UK, June 30 - July 3, 2009. Proceedings, volume 5584 of Lecture Notes in Computer Science, pages 244-257. Springer, 2009. URL: https://doi.org/10.1007/978-3-642-02777-2_24.
  32. Yichen Xie and Alexander Aiken. Saturn: A SAT-Based Tool for Bug Detection. In Proceedings of the 17th International Conference on Computer Aided Verification, CAV 2005, pages 139-143, 2005. URL: https://doi.org/10.1007/11513988_13.
  33. L. Zhang and S. Malik. Cache Performance of SAT Solvers: A Case Study for Efficient Implementation of Algorithms. In E. Giunchiglia and A. Tacchella, editors, 6th International Conference on Theory and Applications of Satisfiability Testing, SAT '03, volume 2919 of Lecture Notes in Computer Science, pages 287-298. Springer, 2004. Google Scholar
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail