Extending SAT Solver with Parity Reasoning

Aalto University, P.O. Box 11000, FI-00076 Aalto www.aalto. fi Author Tero Laitinen Name of the doctoral dissertation Extending SAT Solver with Parity Reasoning Publisher School of Science Unit Department of Information and Computer Science Series Aalto University publication series DOCTORAL DISSERTATIONS 177/2014 Field of research Theoretical Computer Science Manuscript submitted 10 September 2014 Date of the defence 21 November 2014 Permission to publish granted (date) 29 October 2014 Language English Monograph Article dissertation (summary + original articles) Abstract Propositional conflict-driven clause-learning (CDCL) satisfiability (SAT) solvers have been successfully applied in a number of industrial domains. In some application areas such as circuit verification, bounded model checking, logical cryptanalysis, and approximate model counting, some requirements can be succinctly captured with parity (xor) constraints. However, satisfiability solvers that typically operate in conjunctive normal form (CNF) may perform poorly with straightforward translation of parity constraints to CNF.Propositional conflict-driven clause-learning (CDCL) satisfiability (SAT) solvers have been successfully applied in a number of industrial domains. In some application areas such as circuit verification, bounded model checking, logical cryptanalysis, and approximate model counting, some requirements can be succinctly captured with parity (xor) constraints. However, satisfiability solvers that typically operate in conjunctive normal form (CNF) may perform poorly with straightforward translation of parity constraints to CNF. This work studies how CDCL SAT solvers can be enhanced to handle problems with parity constraints using the recently introduced DPLL(XOR) framework where the SAT solver is coupled with a parity constraint solver module. Different xor-deduction systems ranging from plain unit propagation through equivalence reasoning to complete incremental Gauss-Jordan elimination are presented. Techniques to analyze xor-deduction system derivations are developed, allowing one to obtain smaller clausal explanations for implied literals and also to learn new parity constraints in the conflict analysis process. It is proven that these techniques can be used to simulate a complete xor-deduction system on a restricted class of instances and allow very short unsatisfiability proofs for some formulas whose CNF translations are hard for resolution. Fast approximating tests to detect whether unit propagation or equivalence reasoning is enough to deduce all implied literals are presented. Methods to decompose sets of parity constraints into subproblems that can be handled separately are developed. The decomposition methods can greatly reduce the size of parity constraint matrices when using GaussJordan elimination on dense matrices and allow one to choose appropriate xor-deduction system for each subproblem. Efficient translations to simulate equivalence reasoning and stronger parity reasoning are developed. It is shown that equivalence reasoning can be simulated by adding a polynomial amount of redundant parity constraints to the problem, but without using additional variables, an exponential number of parity constraints are needed in the worst case. It is proven that resolution simulates equivalence reasoning efficiently. The presented techniques are experimentally evaluated on a variety of challenging problems originating from a number of encryption ciphers and from SAT Competition benchmark instances.