Skip to main content

Reconstruction of Z3’s Bit-Vector Proofs in HOL4 and Isabelle/HOL

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7086))

Abstract

The Satisfiability Modulo Theories (SMT) solver Z3 can generate proofs of unsatisfiability. We present independent reconstruction of unsatisfiability proofs for bit-vector theories in the theorem provers HOL4 and Isabelle/HOL. Our work shows that LCF-style proof reconstruction for the theory of fixed-size bit-vectors, although difficult because Z3’s proofs provide limited detail, is often possible. We thereby obtain high correctness assurances for Z3’s results, and increase the degree of proof automation for bit-vector problems in HOL4 and Isabelle/HOL.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amjad, H.: Data compression for proof replay. Journal of Automated Reasoning 41(3–4), 193–218 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  2. Barrett, C., Stump, A., Tinelli, C.: The SMT-LIB Standard: Version 2.0. In: Gupta, A., Kroening, D. (eds.) Proceedings of the 8th International Workshop on Satisfiability Modulo Theories, Edinburgh, England (2010)

    Google Scholar 

  3. Barrett, C.W., Tinelli, C.: CVC3. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 298–302. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. Bertot, Y.: A Short Presentation of Coq. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) TPHOLs 2008. LNCS, vol. 5170, pp. 12–16. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  5. Blanchette, J.C., Böhme, S., Paulson, L.C.: Extending Sledgehammer with SMT Solvers. In: Bjørner, N., Sofronie-Stokkermans, V. (eds.) CADE 2011. LNCS, vol. 6803, pp. 116–130. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  6. Böhme, S.: Proof reconstruction for Z3 in Isabelle/HOL. In: 7th International Workshop on Satisfiability Modulo Theories, SMT 2009 (2009)

    Google Scholar 

  7. Böhme, S., Moskal, M., Schulte, W., Wolff, B.: HOL-Boogie — An Interactive Prover-Backend for the Verifying C Compiler. Journal of Automated Reasoning 44(1–2), 111–114 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  8. Böhme, S., Weber, T.: Fast LCF-Style Proof Reconstruction for Z3. In: Kaufmann, M., Paulson, L.C. (eds.) ITP 2010. LNCS, vol. 6172, pp. 179–194. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  9. Böhme, S., Weber, T.: Designing proof formats: A user’s perspective. In: First Workshop on Proof Exchange for Theorem Proving (to appear, 2011)

    Google Scholar 

  10. Brummayer, R., Biere, A.: Fuzzing and delta-debugging SMT solvers. In: 7th International Workshop on Satisfiability Modulo Theories, SMT 2009 (2009)

    Google Scholar 

  11. Collavizza, H., Gordon, M.: Integration of theorem-proving and constraint programming for software verification. Tech. rep., Laboratoire d’Informatique, Signaux et Systèmes de Sophia-Antipolis (2008)

    Google Scholar 

  12. Conchon, S., Contejean, E., Kanig, J., Lescuyer, S.: Lightweight integration of the Ergo theorem prover inside a proof assistant. In: AFM 2007: Proceedings of the Second Workshop on Automated Formal Methods, pp. 55–59. ACM Press (2007)

    Google Scholar 

  13. Dawson, J.: Isabelle theories for machine words. Electronic Notes in Theoretical Computer Science 250(1), 55–70 (2009); Proceedings of the Seventh International Workshop on Automated Verification of Critical Systems (AVoCS 2007)

    Article  Google Scholar 

  14. Erkök, L., Matthews, J.: Using Yices as an automated solver in Isabelle/HOL. In: AFM 2008: Proceedings of the Third Workshop on Automated Formal Methods, pp. 3–13. ACM Press (2008)

    Google Scholar 

  15. Fontaine, P., Marion, J.-Y., Merz, S., Nieto, L.P., Tiu, A.F.: Expressiveness + Automation + Soundness: Towards Combining SMT Solvers and Interactive Proof Assistants. In: Hermanns, H. (ed.) TACAS 2006. LNCS, vol. 3920, pp. 167–181. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  16. Fontaine, P., Merz, S., Woltzenlogel Paleo, B.: Compression of Propositional Resolution Proofs Via Partial Regularization. In: Bjørner, N., Sofronie-Stokkermans, V. (eds.) CADE 2011. LNCS, vol. 6803, pp. 237–251. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  17. Fox, A.C.J.: LCF-Style Bit-Blasting in HOL4. In: van Eekelen, M., Geuvers, H., Schmaltz, J., Wiedijk, F. (eds.) ITP 2011. LNCS, vol. 6898, pp. 357–362. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  18. Fox, A.C.J., Gordon, M.J.C., Myreen, M.O.: Specification and verification of ARM hardware and software. In: Hardin, D.S. (ed.) Design and Verification of Microprocessor Systems for High-Assurance Applications, pp. 221–248. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  19. Ge, Y., Barrett, C.: Proof translation and SMT-LIB benchmark certification: A preliminary report. In: 6th International Workshop on Satisfiability Modulo Theories, SMT 2008 (2008)

    Google Scholar 

  20. Gordon, M., Wadsworth, C.P., Milner, R.: Edinburgh LCF. LNCS, vol. 78. Springer, Heidelberg (1979)

    MATH  Google Scholar 

  21. Gordon, M.J.C., Pitts, A.M.: The HOL logic and system. In: Towards Verified Systems. Real-Time Safety Critical Systems Series vol. 2, ch. 3, pp. 49–70. Elsevier (1994)

    Google Scholar 

  22. Haftmann, F., Wenzel, M.: Constructive Type Classes in Isabelle. In: Altenkirch, T., McBride, C. (eds.) TYPES 2006. LNCS, vol. 4502, pp. 160–174. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  23. Harrison, J.: A HOL Theory of Euclidean Space. In: Hurd, J., Melham, T.F. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 114–129. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  24. Hurlin, C., Chaieb, A., Fontaine, P., Merz, S., Weber, T.: Practical proof reconstruction for first-order logic and set-theoretical constructions. In: Proceedings of the Isabelle Workshop 2007, Bremen, Germany, pp. 2–13 (July 2007)

    Google Scholar 

  25. Kroening, D., Strichman, O.: Decision Procedures – An Algorithmic Point of View. Springer, Heidelberg (2008)

    MATH  Google Scholar 

  26. McLaughlin, S., Barrett, C., Ge, Y.: Cooperating theorem provers: A case study combining HOL-Light and CVC Lite. Electronic Notes in Theoretical Computer Science 144(2), 43–51 (2006)

    Article  MATH  Google Scholar 

  27. Milner, R., Tofte, M., Harper, R., MacQueen, D.: The Definition of Standard ML– Revised. MIT Press (1997)

    Google Scholar 

  28. de Moura, L.M., Bjørner, N.: Proofs and refutations, and Z3. In: Proceedings of the LPAR 2008 Workshops, Knowledge Exchange: Automated Provers and Proof Assistants, and the 7th International Workshop on the Implementation of Logics. CEUR Workshop Proceedings, vol. 418, CEUR-WS.org (2008)

    Google Scholar 

  29. de Moura, L., Bjørner, N.S.: Z3: An Efficient SMT Solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  30. Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  31. Weber, T.: SMT solvers: New oracles for the HOL theorem prover. International Journal on Software Tools for Technology Transfer (to appear, 2011)

    Google Scholar 

  32. Weber, T., Amjad, H.: Efficiently checking propositional refutations in HOL theorem provers. Journal of Applied Logic 7(1), 26–40 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  33. Wenzel, M.: Parallel proof checking in Isabelle/Isar. In: ACM SIGSAM 2009 International Workshop on Programming Languages for Mechanized Mathematics Systems (2009)

    Google Scholar 

  34. Wintersteiger, C.M., Hamadi, Y., de Moura, L.M.: Efficiently solving quantified bit-vector formulas. In: Bloem, R., Sharygina, N. (eds.) Proceedings of the 10th International Conference on Formal Methods in Computer-Aided Design, FMCAD 2010, Lugano, Switzerland, October 20-23, pp. 239–246. IEEE (2010)

    Google Scholar 

  35. Xu, L., Hutter, F., Hoos, H.H., Leyton-Brown, K.: SATzilla: Portfolio-based algorithm selection for SAT. J. Artif. Intell. Res (JAIR) 32, 565–606 (2008)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Böhme, S., Fox, A.C.J., Sewell, T., Weber, T. (2011). Reconstruction of Z3’s Bit-Vector Proofs in HOL4 and Isabelle/HOL. In: Jouannaud, JP., Shao, Z. (eds) Certified Programs and Proofs. CPP 2011. Lecture Notes in Computer Science, vol 7086. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25379-9_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25379-9_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25378-2

  • Online ISBN: 978-3-642-25379-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics