Validating QBF Invalidity in HOL4

The Quantified Boolean Formulae (QBF) solver Squolem can generate certificates of validity, based on Skolem functions. We present independent checking of these certificates in the HOL4 theorem prover. This enables HOL4 users to benefit from Squolem's automation for valid QBF problems. Detailed performance data shows that LCF-style checking of validity certificates is often (but not always) feasible even for large QBF instances. Additionally, our work provides high correctness assurances for Squolem's claims of validity and uncovered a soundness bug in a previous version of its certificate validator QBV.

[1]  Joe Hurd An LCF-Style Interface between HOL and First-Order Logic , 2002, CADE.

[2]  Alonzo Church,et al.  A formulation of the simple theory of types , 1940, Journal of Symbolic Logic.

[3]  Graham Steel,et al.  Deduction with XOR Constraints in Security API Modelling , 2005, CADE.

[4]  Joao Marques-Silva,et al.  Theory and Applications of Satisfiability Testing - SAT 2007, 10th International Conference, Lisbon, Portugal, May 28-31, 2007, Proceedings , 2007, SAT.

[5]  Tobias Nipkow,et al.  The Isabelle Framework , 2008, TPHOLs.

[6]  Marco Benedetti,et al.  QBF-Based Formal Verification: Experience and Perspectives , 2008, J. Satisf. Boolean Model. Comput..

[7]  Luca Pulina,et al.  Learning to Integrate Deduction and Search in Reasoning about Quantified Boolean Formulas , 2009, FroCoS.

[8]  Roy Dyckhoff Automated Reasoning with Analytic Tableaux and Related Methods , 2000, Lecture Notes in Computer Science.

[9]  H. Amjad,et al.  Combining model checking and theorem proving , 2004 .

[10]  Nachum Dershowitz,et al.  Bounded Model Checking with QBF , 2005, SAT.

[11]  Hans Kleine Büning,et al.  On Models for Quantified Boolean Formulas , 2004, Logic versus Approximation.

[12]  Robin Milner,et al.  Principal type-schemes for functional programs , 1982, POPL '82.

[13]  Jonathan P. Bowen Towards Verified Systems , 1994 .

[14]  Hans Kleine Büning,et al.  Resolution for Quantified Boolean Formulas , 1995, Inf. Comput..

[15]  Yves Bertot,et al.  A Short Presentation of Coq , 2008, TPHOLs.

[16]  David Aspinall,et al.  Formalising Java's Data Race Free Guarantee , 2007, TPHOLs.

[17]  Lawrence C. Paulson,et al.  Translating Higher-Order Clauses to First-Order Clauses , 2007, Journal of Automated Reasoning.

[18]  Michael J. C. Gordon,et al.  Edinburgh LCF: A mechanised logic of computation , 1979 .

[19]  Herwig Bruneel,et al.  Performance Evaluation of a Gradual Differentiation Scheme for Telecommunication Networks , 2008, ASMTA.

[20]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[21]  Reinhold Letz,et al.  Lemma and Model Caching in Decision Procedures for Quantified Boolean Formulas , 2002, TABLEAUX.

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

[23]  Wolfgang Lenski,et al.  Logic versus Approximation , 2004, Lecture Notes in Computer Science.

[24]  Daniel Kroening,et al.  A First Step Towards a Unified Proof Checker for QBF , 2007, SAT.

[25]  David B. MacQueen,et al.  The Definition of Standard ML (Revised) , 1997 .

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

[27]  Lawrence C. Paulson,et al.  MetiTarski: An Automatic Theorem Prover for Real-Valued Special Functions , 2010, Journal of Automated Reasoning.

[28]  M.J.C. Gordon,et al.  The HOL Logic and System , 1994 .

[29]  S. Malik,et al.  Validating the result of a quantified Boolean formula (QBF) solver: theory and practice , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[30]  Thomas Kropf,et al.  Integrating A First-order Automatic prover In The HOL Environment , 1991, 1991., International Workshop on the HOL Theorem Proving System and Its Applications.

[31]  Natarajan Shankar,et al.  A Brief Overview of PVS , 2008, TPHOLs.

[32]  G. Plotkin,et al.  Proof, language, and interaction: essays in honour of Robin Milner , 2000 .

[33]  Marco Benedetti,et al.  sKizzo: A Suite to Evaluate and Certify QBFs , 2005, CADE.

[34]  Sascha Böhme,et al.  Fast LCF-Style Proof Reconstruction for Z3 , 2010, ITP.

[35]  Yue Yang,et al.  QB or Not QB: An Efficient Execution Verification Tool for Memory Orderings , 2004, CAV.

[36]  Luca Pulina,et al.  Report of the Third QBF Solvers Evaluation , 2006, J. Satisf. Boolean Model. Comput..

[37]  Michael J. C. Gordon,et al.  From LCF to HOL: a short history , 2000, Proof, Language, and Interaction.

[38]  Albert R. Meyer,et al.  Word problems requiring exponential time(Preliminary Report) , 1973, STOC.

[39]  Andrei Voronkov,et al.  Automated Deduction—CADE-18 , 2002, Lecture Notes in Computer Science.

[40]  Bruno Barras Programming and Computing in HOL , 2000, TPHOLs.

[41]  John Harrison Binary Decision Diagrams as a HOL Derived Rule , 1995, Comput. J..

[42]  Michael Norrish,et al.  A Brief Overview of HOL4 , 2008, TPHOLs.

[43]  Robin Milner,et al.  Definition of standard ML , 1990 .

[44]  Guillaume Melquiond,et al.  Combining Coq and Gappa for Certifying Floating-Point Programs , 2009, Calculemus/MKM.

[45]  Luca Pulina,et al.  Evaluating and certifying QBFs: A comparison of state-of-the-art tools , 2009, AI Commun..