DEPRICATED! This page is kept for reference only. Consider visiting the MiniSat page instead.

Satzoo is a Chaff-like SAT-solver based on watched literals [MZ01] and clause recording [MS99]. It was developed mainly to be able to experiment with new model checking techniques which requires a tighter integration with the SAT-solver. As such, Satzoo takes a more general view on what a "SAT" problem could be, and supports solving a number of related SAT-problems by an incremental SAT interface [WKS01]. Satzoo is also meant to encompass more types of constraints than just clauses. To prototype this, linear constraints over boolean variables [Bar95] were added to the solver. The front end thus supports a subset of the CPLEX lp-format along with DIMACS cnf-format. For lp-files optimization is performed towards the goal function rather than just finding a satisfying assignment.

In the SAT 2003 Competition, Satzoo won the two ``Handmade'' categories, as well as solving both the most number of series and the most number of instances of all solvers in the first round. Click here for details. NEW -- in the 2004 competition, it defended one of its titles: the satisfiable handmade category.

The techniques used in Satzoo are described in the paper An Extensible SAT-solver, co-authored by Niklas Sörensson. A shorter version of this paper will appear in the SAT'03 proceedings. The paper contains a minimal SAT-solver MiniSat, as well as an appendix explaining the difference between this solver and Satzoo. The source code for MiniSat (available below) should provide a good start for anyone interesting in extending a modern SAT-solver.



Features


Initial strategiesClause database simplificationMultiple decision heuristicsIncremental SAT0-1-programming



Downloads


Statically linked binaries for Linux, Solaris, and Windows (through Cygwin) are available, as well as library and header files for the incremental interface:



References


[Bar95] P. Barth ``A Davis-Putnam Based Enumeration Algorithm for Linear pseudo-Boolean Optimization'' in Resarch Report, Max-Planck-Institut für Informatik, MPI-I-95-2-003, 1995.

[ES03] N. Eén, N. Sörensson ``Temporal Induction by Incremental SAT Solving'' First International Workshop on Bounded Model Checking, ENTCS issue 4 volume 89.

[GY02] E. Goldberg, Y. Novikov ``BerkMin: A Fast and Robust SAT Solver'' in Design Automation and Test in Europe, pages 142--149, 2002.

[MS99] J.P. Marques-Silva, K.A. Sakallah ``GRASP: A Search Algorithm for Propositional Satisfiability'' in IEEE Transactions on Computers, vol 48, pages 506--521, 1999.

[MZ01] M.W. Moskewicz, C.F. Madigan, Y. Zhao, L. Zhang, S. Malik ``Chaff: Engineering an Efficient SAT Solver'' in Proc. of the Design Automation Conference, pages 530-535, 2001.

[WKS01] J. Whittemore, J. Kim, K. Sakallah ``SATIRE: a new incremental satisfiability engine'' in Proc. of the 38th conference on Design automation, pages 542--545, 2001.


© Copyright Niklas Eén, 2003