Verifying Propositional Unsatisfiability: Pitfalls to Avoid
The importance of producing a certificate of unsatisfiability is increasingly recognized for high performance propositional satisfiability solvers. The leading solvers develop a conflict graph as the basis for deriving (or “learning”) new clauses. Extracting a resolution derivation from the conflict graph is theoretically straightforward, but it turns out to have some surprising practical pitfalls (as well as the unsurprising problem that resolution proofs can be extremely long). These pitfalls are exposed, solutions are presented, and analyzed for worse cases. Dramatic improvements on industrial benchmarks are demonstrated.
KeywordsConflict Graph Unit Clause Resolution Proof Antecedent Clause Clause Learning
Unable to display preview. Download preview PDF.
- 1.Baase, S., Van Gelder, A.: Computer Algorithms: Introduction to Design and Analysis, 3rd edn. Addison-Wesley, Reading (2000)Google Scholar
- 3.Goldberg, E., Novikov, Y.: Berkmin: a fast and robust sat-solver. In: Proc. Design, Automation and Test in Europe, pp. 142–149 (2002)Google Scholar
- 4.Goldberg, E., Novikov, Y.: Verification of proofs of unsatisfiability for CNF formulas. In: Proc. Design, Automation and Test in Europe, pp. 886–891 (2003)Google Scholar
- 6.Moskewicz, M., et al.: Chaff: Engineering an efficient SAT solver. In: 39th Design Automation Conference (2001)Google Scholar
- 7.Van Gelder, A.: Decision procedures should be able to produce (easily) checkable proofs. In: CP02 Workshop on Constraints in Formal Verification, Ithaca (2002)Google Scholar
- 9.Zhang, L., Malik, S.: Validating sat solvers using an independent resolution-based checker: Practical implementations and other applications. In: Proc. Design, Automation and Test in Europe (2003)Google Scholar
- 10.Zhang, L., Malik, S.: Extracting small unsatisfiable cores from unsatisfiable boolean formula. In: Proc. Theory and Applications of Satisfiability Testing (2003)Google Scholar
- 11.Zhang, L., et al.: Efficient conflict driven learning in a boolean satisfiability solver. In: ICCAD (2001)Google Scholar