SBSAT: a State-Based, BDD-Based Satisfiability Solver

We present a new approach to SAT solvers, supporting efficient implementation of highly sophisticated search heuristics over a range of propositional inputs, including CNF formulas, but particularly sets of arbitrary boolean constraints, represented as BDDs. The approach preprocesses the BDDs into state machines to allow for fast inferences based upon any single input constraint. It also simplifies the set of constraints, using a tool set similar to standard BDD engines. And it memoizes search information during an extensive preprocessing phase, allowing for a new form of lookahead, called local-function-complete lookahead. This approach has been incorporated, along with existing tools such as lemmas, to build a SAT tool we call SBSAT.

[1]  J. Freeman Improvements to propositional satisfiability search algorithms , 1995 .

[2]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[3]  Henry Kautz,et al.  Exploiting Variable Dependency in Local Search , 1997, IJCAI 1997.

[4]  Matthew W. Moskewicz,et al.  Engineering a (super?) efficient sat solver , 2001, Design Automation Conference.

[5]  Eugene Goldberg,et al.  Testing satisfiability of CNF formulas by computing a stable set of points , 2002, Annals of Mathematics and Artificial Intelligence.

[6]  Jun Gu,et al.  A BDD SAT solver for satisfiability testing: An industrial case study , 1996, Annals of Mathematics and Artificial Intelligence.

[7]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[8]  Fred S. Annexstein,et al.  On Finding Solutions for Extended Horn Formulas , 1995, Inf. Process. Lett..

[9]  Marco Pistore,et al.  NuSMV Version 2: BDD-based + SAT-based Symbolic Model Checking , 2001 .

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

[11]  Inês Lynce,et al.  Efficient data structures for backtrack search SAT solvers , 2005, Annals of Mathematics and Artificial Intelligence.

[12]  Enrico Giunchiglia,et al.  Applying the Davis-Putnam Procedure to Non-clausal Formulas , 1999, AI*IA.

[13]  Ofer Strichman,et al.  Tuning SAT Checkers for Bounded Model Checking , 2000, CAV.

[14]  Olivier Coudert,et al.  A unified framework for the formal verification of sequential circuits , 1990, ICCAD 1990.

[15]  Richard Statman,et al.  Logic for computer scientists , 1989 .

[16]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[17]  Zhihong Zeng,et al.  A BDD-based satisfiability infrastructure using the unate recursive paradigm , 2000, DATE '00.

[18]  Aarti Gupta,et al.  Integrating a Boolean satisfiability checker and BDDs for combinational equivalence checking , 1998, Proceedings Eleventh International Conference on VLSI Design.

[19]  Sharad Malik,et al.  Efficient conflict driven learning in a Boolean satisfiability solver , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[20]  Andreas Kuehlmann,et al.  Equivalence checking combining a structural SAT-solver, BDDs, and simulation , 2000, Proceedings 2000 International Conference on Computer Design.

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

[22]  Evelina Lamma,et al.  AI*IA 99: Advances in Artificial Intelligence , 2000, Lecture Notes in Computer Science.

[23]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.