Abstract
This paper describes an integration of Satisfiability Modulo Theories (SMT) solvers with the HOL4 theorem prover. Proof obligations are passed from the interactive HOL4 prover to the SMT solver, which can often prove them automatically. This makes state-of-the-art SMT solving techniques available to users of the HOL4 system, thereby increasing the degree of automation for a substantial fragment of its logic. We compare a translation to Yices’s native input format with a translation to SMT-LIB format.
Similar content being viewed by others
References
Barrett, C., Deters, M., Oliveras, A., Stump, A.: Design and results of the 4th Annual Satisfiability Modulo Theories Competition (SMT-COMP ’08) (to appear)
Barrett, C., Stump, A., Tinelli, C.: The SMT-LIB standard: Version 2.0, August 2010. Available from http://combination.cs.uiowa.edu/smtlib/papers/smt-lib-reference-v2.0-r10.08.28.pdf . Retrieved October 22 (2010)
Barrett, C., Tinelli, C.: CVC3. In: Damm, W., Hermanns, H. (eds.) Computer Aided Verification, 19th International Conference, CAV 2007, Proceedings. LNCS, vol. 4590, pp. 298–302. Springer, Berlin (2007)
Barsotti D., Prensa Nieto L., Tiu A.: Verification of clock synchronization algorithms: experiments on a combination of deductive tools. Electron. Notes Theor. Comput. Sci. 145, 63–78 (2006)
Bertot Y., Castéran P.: Interactive Theorem Proving and Program Development, Coq’Art: the Calculus of Inductive Constructions. Springer, Berlin (2004)
Böhme, S.: Proof reconstruction for Z3 in Isabelle/HOL. In: 7th International Workshop on Satisfiability Modulo Theories (SMT ’09) (2009)
Böhme, S., Weber, T.: Fast LCF-style proof reconstruction for Z3. In: Kaufmann, M., Paulson, L.C. (eds.) Interactive Theorem Proving, First International Conference, ITP 2010, Proceedings. LNCS, vol. 6172, pp. 179–194. Springer, Berlin (2010)
Church A.: A formulation of the simple theory of types. J. Symb. Log. 5, 56–68 (1940)
Collavizza, H., Gordon, M.: Integration of theorem-proving and constraint programming for software verification. Technical report, Laboratoire d’Informatique, Signaux et Systèmes de Sophia-Antipolis, November (2008)
Conchon, S., Contejean, E., Kanig, J., Lescuyer, S.: Lightweight integration of the Ergo theorem prover inside a proof assistant. In: AFM ’07: Proceedings of the Second Workshop on Automated Formal Methods, pp. 55–59. ACM Press, New York (2007)
de Moura, L.M., Bjørner, N.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, 14th International Conference, TACAS 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Proceedings. LNCS, vol. 4963, pp. 337–340. Springer, Berlin (2008)
Dutertre, B., de Moura, L.: The YICES SMT solver. Available from http://yices.csl.sri.com/tool-paper.pdf. Retrieved October 22 (2010)
Erkök, L., Matthews, J.: Using Yices as an automated solver in Isabelle/HOL. In: AFM ’08: Proceedings of the Third Workshop on Automated Formal Methods, pp. 3–13. ACM Press, New York (2008)
Gordon M.: From LCF to HOL: a short history. In: Plotkin, G.D., Stirling, C., Tofte, M. (eds) Proof, Language, and Interaction, Essays in Honour of Robin Milner., pp. 169–186. MIT Press, Cambridge (2000)
Harrison, J.: The HOL Light theorem prover. Available from http://www.cl.cam.ac.uk/jrh13/hol-light/. Retrieved October 22 (2010)
Harrison, J.: A HOL theory of Euclidean space. In: Hurd, J., Melham, T.F. (eds.) Theorem Proving in Higher Order Logics, 18th International Conference, TPHOLs 2005, Proceedings. LNCS, vol. 3603, pp. 114–129. Springer, Berlin (2005)
HOL 4 Kananaskis 5. Available from http://hol.sourceforge.net/. Retrieved October 22 (2010)
Huelsbergen, L.: A portable C interface for Standard ML of New Jersey, January 1996. Available from http://www.smlnj.org/doc/SMLNJ-C/smlnj-c.ps. Retrieved October 22 (2010)
Hurd, J.: An LCF-style interface between HOL and first-order logic. In: Voronkov, A. (eds.) Automated Deduction–CADE-18, 18th International Conference on Automated Deduction, Copenhagen, Denmark, July 27–30, 2002, Proceedings. LNCS, vol. 2392, pp. 134–138. Springer, Berlin (2002)
Hurlin, C., Chaieb, A., Fontaine, P., Merz, S., Weber, T.: Practical proof reconstruction for first-order logic and set-theoretical constructions. In: Dixon, L., Johansson M. (eds.) Isabelle Workshop 2007, Proceedings, pp. 2–13. (2007)
Kroening D., Strichman O.: Decision Procedures—An Algorithmic Point of View. Springer, Berlin (2008)
McLaughlin, S., Barrett, C., Ge, Y.: Cooperating theorem provers: a case study combining HOL-Light and CVC Lite. In: Armando, A., Cimatti, A. (eds.) Proceedings of the Third Workshop on Pragmatics of Decision Procedures in Automated Reasoning (PDPAR 2005). Electronic Notes in Theoretical Computer Science, vol. 144(2), pp. 43–51. Elsevier, Amsterdam (2006)
Meng J., Paulson L.C.: Translating higher-order clauses to first-order clauses. J. Autom. Reason. 40(1), 35–60 (2008)
Milner R., Tofte M., Harper R., MacQueen D.: The Definition of Standard ML—Revised. MIT Press, Cambridge (1997)
Myreen, M.O., Slind, K., Gordon, M.J.C.: Machine-code verification for multiple architectures—an application of decompilation into logic. In: Cimatti, A., Jones, R.B. (eds.) Formal Methods in Computer-Aided Design, 8th International Conference, FMCAD 2008, Proceedings. IEEE (2008)
Nipkow T., Paulson L.C., Wenzel M.: Isabelle/HOL—A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Berlin (2002)
Norrish, M.: Complete integer decision procedures as derived rules in HOL. In: Basin, D.A., Wolff, B. (eds.) Theorem Proving in Higher Order Logics, 16th International Conference, TPHOLs 2003, Proceedings. LNCS, vol. 2758, pp. 71–86. Springer, Berlin (2003)
Norrish, M., Slind, K.: The HOL System Description, 2007. Available from http://hol.sourceforge.net/documentation.html. Retrieved October 22 (2010)
Owre, Sam: PVS specification and verification system, July 2008. Available from http://pvs.csl.sri.com/. Retrieved October 22, (2010)
Owre, S., Rushby, J.M., Shankar, N.: PVS: a prototype verification system. In: Kapur, D. (eds.) Automated Deduction—CADE-11, 11th International Conference on Automated Deduction, Proceedings. LNAI, vol. 607, pp. 748–752. Springer, Berlin (1992)
Paulson, L.C., Susanto, K.W.: Source-level proof reconstruction for interactive theorem proving. In: Schneider, K., Brandt, J. (eds.) Theorem Proving in Higher Order Logics, 20th International Conference, TPHOLs 2007, Proceedings. LNCS, vol. 4732, pp. 232–245. Springer, Berlin (2007)
Ranise, S., Tinelli, C.: The SMT-LIB standard: Version 1.2, August 2006. Available from http://combination.cs.uiowa.edu/smtlib/papers/format-v1.2-r06.08.30.pdf. Retrieved October 22 (2010)
Slind, K., Norrish, M.: A brief overview of HOL4. In: Mohamed O.A., Munoz, C., Tahar, S. (eds.) Theorem Proving in Higher Order Logics, 21st International Conference, TPHOLs 2008, Proceedings. LNCS, vol. 5170, pp. 28–32. Springer, Berlin (2008)
Sutcliffe G., Suttner C.: The state of CASC. AI Commun. 19(1), 35–48 (2006)
Weber, T.: SAT-based Finite Model Generation for Higher-Order Logic. PhD thesis, Institut für Informatik, Technische Universität München, Germany, April (2008)
Weber T., Amjad H.: Efficiently checking propositional refutations in HOL theorem provers. J. Appl. Log. 7, 26–40 (2009)
Zhang, L., Malik, S.: The quest for efficient Boolean satisfiability solvers. In: Voronkov, A. (eds.) Automated Deduction—CADE-18, 18th International Conference on Automated Deduction, Proceedings. LNCS, vol. 2392, pp. 295–313. Springer, Berlin (2002)
Author information
Authors and Affiliations
Corresponding author
Additional information
This work was supported by EPSRC grant EP/F067909/1.
Rights and permissions
About this article
Cite this article
Weber, T. SMT solvers: new oracles for the HOL theorem prover. Int J Softw Tools Technol Transfer 13, 419–429 (2011). https://doi.org/10.1007/s10009-011-0188-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-011-0188-8