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

  • Sascha Böhme
  • Anthony C. J. Fox
  • Thomas Sewell
  • Tjark Weber
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7086)


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Amjad, H.: Data compression for proof replay. Journal of Automated Reasoning 41(3–4), 193–218 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 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. 3.
    Barrett, C.W., Tinelli, C.: CVC3. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 298–302. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 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)CrossRefGoogle Scholar
  5. 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)CrossRefGoogle Scholar
  6. 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. 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)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 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)CrossRefGoogle Scholar
  9. 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. 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. 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. 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. 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)CrossRefGoogle Scholar
  14. 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. 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)CrossRefGoogle Scholar
  16. 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)CrossRefGoogle Scholar
  17. 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)CrossRefGoogle Scholar
  18. 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)CrossRefGoogle Scholar
  19. 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. 20.
    Gordon, M., Wadsworth, C.P., Milner, R.: Edinburgh LCF. LNCS, vol. 78. Springer, Heidelberg (1979)zbMATHGoogle Scholar
  21. 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. 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)CrossRefGoogle Scholar
  23. 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)CrossRefGoogle Scholar
  24. 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. 25.
    Kroening, D., Strichman, O.: Decision Procedures – An Algorithmic Point of View. Springer, Heidelberg (2008)zbMATHGoogle Scholar
  26. 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)CrossRefzbMATHGoogle Scholar
  27. 27.
    Milner, R., Tofte, M., Harper, R., MacQueen, D.: The Definition of Standard ML– Revised. MIT Press (1997)Google Scholar
  28. 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, (2008)Google Scholar
  29. 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)CrossRefGoogle Scholar
  30. 30.
    Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)zbMATHGoogle Scholar
  31. 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. 32.
    Weber, T., Amjad, H.: Efficiently checking propositional refutations in HOL theorem provers. Journal of Applied Logic 7(1), 26–40 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  33. 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. 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. 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)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Sascha Böhme
    • 1
  • Anthony C. J. Fox
    • 2
  • Thomas Sewell
    • 3
  • Tjark Weber
    • 2
  1. 1.Fakultät für InformatikTU MünchenGermany
  2. 2.Computer LaboratoryUniversity of CambridgeUK
  3. 3.National ICT AustraliaAustralia

Personalised recommendations