PicoSAT Essentials

In this article we describe and evaluate optimized compact data structures for watching literals. Experiments with our SAT solver PicoSAT show that this low-level optimization not only saves memory, but also turns out to speed up the SAT solver considerably. We also discuss how to store proof traces compactly in memory and further unique features of PicoSAT including an aggressive restart schedule.

[1]  Bart Selman,et al.  Boosting Combinatorial Search Through Randomization , 1998, AAAI/IAAI.

[2]  Armin Biere,et al.  Extended Resolution Proofs for Conjoining BDDs , 2006, CSR.

[3]  Manu Sridharan,et al.  Debugging overconstrained declarative models using unsatisfiable cores , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[4]  Alexander Nadel Backtrack Search Algorithms for Propositional Logic Satisfiability: Review and Innovations , 2002 .

[5]  Adnan Darwiche,et al.  A Lightweight Component Caching Scheme for Satisfiability Solvers , 2007, SAT.

[6]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[7]  Henry A. Kautz,et al.  Towards Understanding and Harnessing the Potential of Clause Learning , 2004, J. Artif. Intell. Res..

[8]  Adnan Darwiche,et al.  RSat 2.0: SAT Solver Description , 2006 .

[9]  Slawomir Pilarski,et al.  Speeding up SAT for EDA , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[10]  Allen Van Gelder Independently Checkable Proofs from Decision Procedures: Issues and Progress , 2005, LPAR.

[11]  Armin Biere The Evolution from LIMMAT to NANOSAT , 2004 .

[12]  Joël Ouaknine,et al.  Deciding Bit-Vector Arithmetic with Abstraction , 2007, TACAS.

[13]  Sharad Malik,et al.  Validating SAT solvers using an independent resolution-based checker: practical implementations and other applications , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[14]  Bernd Becker,et al.  Multithreaded SAT Solving , 2007, 2007 Asia and South Pacific Design Automation Conference.

[15]  David Zuckerman,et al.  Optimal Speedup of Las Vegas Algorithms , 1993, Inf. Process. Lett..

[16]  Sharad Malik,et al.  New Features of the SAT ’ 04 versions of zChaff Zhaohui , 2004 .

[17]  Lawrence Ryan Efficient algorithms for clause-learning SAT solvers , 2004 .

[18]  Kenneth L. McMillan,et al.  Interpolation and SAT-Based Model Checking , 2003, CAV.

[19]  Armin Biere,et al.  Extended Resolution Proofs for Symbolic SAT Solving with Quantification , 2006, SAT.

[20]  Armin Biere The AIGER And-Inverter Graph (AIG) Format Version 20070427 , 2007 .

[21]  Allen Van Gelder Extracting (Easily) Checkable Proofs from a Satisfiability Solver that Employs both Preorder and Postorder Resolution , 2002, ISAIM.

[22]  Kenneth L. McMillan,et al.  Automatic Abstraction without Counterexamples , 2003, TACAS.

[23]  Wolfgang Küchlin,et al.  Formal methods for the validation of automotive product configuration data , 2003, Artificial Intelligence for Engineering Design, Analysis and Manufacturing.

[24]  Allen Van Gelder Verifying Propositional Unsatisfiability: Pitfalls to Avoid , 2007, SAT.

[25]  Eugene Goldberg,et al.  Verification of proofs of unsatisfiability for CNF formulas , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[26]  Jinbo Huang,et al.  The Effect of Restarts on the Efficiency of Clause Learning , 2007, IJCAI.

[27]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002, Discret. Appl. Math..

[28]  Hantao Zhang,et al.  SATO: An Efficient Propositional Prover , 1997, CADE.

[29]  Armin Biere,et al.  Effective Preprocessing in SAT Through Variable and Clause Elimination , 2005, SAT.

[30]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[31]  Allen Van Gelder Generalizations of Watched Literals for Backtracking Search , 2002, ISAIM.

[32]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[33]  Armin Biere,et al.  Decomposing SAT Problems into Connected Components , 2006, J. Satisf. Boolean Model. Comput..

[34]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[35]  Sharad Malik,et al.  Cache Performance of SAT Solvers: a Case Study for Efficient Implementation of Algorithms , 2003, SAT.