Mechanical Verification of SAT Refutations with Extended Resolution

We present a mechanically-verified proof checker developed with the ACL2 theorem-proving system that is general enough to support the growing variety of increasingly complex satisfiability (SAT) solver techniques, including those based on extended resolution. A common approach to assure the correctness of SAT solvers is to emit a proof of unsatisfiability when no solution is reported to exist. Contemporary proof checkers only check logical equivalence using resolution-style inference. However, some state-of-the-art, conflict-driven clause-learning SAT solvers use preprocessing, inprocessing, and learning techniques, that cannot be checked solely by resolution-style inference. We have developed a mechanically-verified proof checker that assures refutation clauses preserve satisfiability. We believe our approach is sufficiently expressive to validate all known SAT-solver techniques.

[1]  Jim Woodcock,et al.  Theoretical Aspects of Computing - ICTAC 2010, 7th International Colloquium, Natal, Rio Grande do Norte, Brazil, September 1-3, 2010. Proceedings , 2010, ICTAC.

[2]  Yves Bertot,et al.  Interactive Theorem Proving and Program Development: Coq'Art The Calculus of Inductive Constructions , 2010 .

[3]  Armin Biere,et al.  PicoSAT Essentials , 2008, J. Satisf. Boolean Model. Comput..

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

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

[6]  Marijn J. H. Heule,et al.  Verifying Refutations with Extended Resolution , 2013, CADE.

[7]  Filip Maric,et al.  Formal verification of a modern SAT solver by shallow embedding into Isabelle/HOL , 2010, Theor. Comput. Sci..

[8]  Allen Van Gelder,et al.  Verifying RUP Proofs of Propositional Unsatisfiability , 2008, ISAIM.

[9]  Stéphane Lescuyer,et al.  A Reflexive Formalization of a SAT Solver in Coq , 2008 .

[10]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[11]  Panagiotis Manolios,et al.  Computer-Aided Reasoning: An Approach , 2011 .

[12]  Inês Lynce,et al.  Conflict-Driven Clause Learning SAT Solvers , 2009, Handbook of Satisfiability.

[13]  Laurent Théry,et al.  Verifying SAT and SMT in Coq for a fully automated decision procedure , 2011 .

[14]  Pierre Castéran,et al.  Interactive Theorem Proving and Program Development , 2004, Texts in Theoretical Computer Science An EATCS Series.

[15]  Sol Swords,et al.  Verified AIG Algorithms in ACL2 , 2013, ACL2.

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

[17]  Robert K. Brayton,et al.  Using SAT for combinational equivalence checking , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[18]  Tjark Weber Efficiently Checking Propositional Resolution Proofs in Isabelle / HOL , 2006 .

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

[20]  Stephen A. Cook,et al.  A short proof of the pigeon hole principle using extended resolution , 1976, SIGA.

[21]  Oliver Kullmann,et al.  On a Generalization of Extended Resolution , 1999, Discret. Appl. Math..

[22]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[23]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[24]  Jared Davis,et al.  Proceedings International Workshop on the ACL2 Theorem Prover and its Applications , 2013 .

[25]  P. Kam,et al.  : 4 , 1898, You Can Cross the Massacre on Foot.

[26]  Armin Haken,et al.  The Intractability of Resolution , 1985, Theor. Comput. Sci..

[27]  Duckki Oe Extended Abstract: Combining a Logical Framework with an RUP Checker for SMT Proofs , 2011 .

[28]  Natarajan Shankar,et al.  The Mechanical Verification of a DPLL-Based Satisfiability Solver , 2011, LSFA.

[29]  Gilles Audemard,et al.  A Restriction of Extended Resolution for Clause Learning SAT Solvers , 2010, AAAI.

[30]  Kevin Clancy,et al.  versat: A Verified Modern SAT Solver , 2012, VMCAI.

[31]  Armin Biere,et al.  Inprocessing Rules , 2012, IJCAR.

[32]  G. S. Tseitin On the Complexity of Derivation in Propositional Calculus , 1983 .

[33]  Lawrence Charles Paulson,et al.  Isabelle/HOL: A Proof Assistant for Higher-Order Logic , 2002 .

[34]  Leonardo Mendonça de Moura,et al.  Computation in Real Closed Infinitesimal and Transcendental Extensions of the Rationals , 2013, CADE.

[35]  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.

[36]  Bernd Fischer,et al.  Industrial-Strength Certified SAT Solving through Verified SAT Proof Checking , 2010, ICTAC.

[37]  Filip Maric,et al.  Formalization and Implementation of Modern SAT Solvers , 2009, Journal of Automated Reasoning.

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

[39]  F. Mari Formal verification of a modern SAT solver by shallow embedding into Isabelle/HOL , 2010 .

[40]  Hasan Amjad,et al.  Efficiently checking propositional refutations in HOL theorem provers , 2009, J. Appl. Log..

[41]  Armin Biere,et al.  Automated Reencoding of Boolean Formulas , 2012, Haifa Verification Conference.