PSI 2017: Perspectives of System Informatics pp 322-336 | Cite as
WhaleProver: First-Order Intuitionistic Theorem Prover Based on the Inverse Method
Abstract
The first-order intuitionistic logic is a formal theory from the family of constructive theories. In intuitionistic logic, it is possible to extract a particular example \(x=a\) and a proof of a formula P(a) from a proof of a formula \(\exists x\,P(x)\). Thanks to this feature, intuitionistic logic has many applications in mathematics and computer science. Several modern proof assistants include automated tactics for the first-order intuitionistic logic which could simplify the task of solving challenging problems, e.g. formal verification of software, hardware, and protocols.
In this article, we present a new theorem prover (named WhaleProver) for full first-order intuitionistic logic. Testing on the ILTP benchmarking library has shown that WhaleProver performance is comparable with state-of-the-art intuitionistic provers. Our prover has solved more than 800 problems from the ILTP version 1.1.2. Some of them are intractable for other provers.
WhaleProver is based on the inverse method proposed by S. Yu. Maslov. We introduce an intuitionistic inverse method calculus which is in turn a special kind of sequent calculus. Then, we describe how to adopt for this calculus several existing proof search strategies which were proposed for different logical calculi by S. Yu. Maslov, V.P. Orevkov, A.A. Voronkov, and other authors. In addition, we suggest new proof search strategy that allows avoiding redundant inferences. This article includes results of experiments with WhaleProver on the ILTP library. We believe that WhaleProver can be used further as a test bench for different inference procedures and strategies, as well as for educational purposes.
Keywords
Automated reasoning Proof assistants Theorem proving Inverse method Intuitionistic logic ILTPReferences
- 1.Constable, R. L.: On building constructive formal theories of computation. Noting the roles of Turing, Church, and Brouwer. In: Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science (LICS 2012), pp. 2–8 (2012)Google Scholar
- 2.Degtyarev, A., Voronkov, A.: The inverse method. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. 1, pp. 179–272. Elsevier, Amsterdam (2001)CrossRefGoogle Scholar
- 3.Dragalin, A.G.: Mathematical intuitionism. Introduction to proof theory (Russian). Nauka, Moscow (1979). English transl. in Translations of Mathematical Monographs 67 (1988)Google Scholar
- 4.Imogen GitHub page. https://github.com/seanmcl/imogen
- 5.Kleene, S.C.: Permutability of inferences in Gentzen’s calculi LK and LJ. Mem. Amer. Math. Soc. 10, 1–26 (1952). Russian transl. in “Matematicheskaya teoriya logicheskogo vyvoda”, 208–236 “Nauka”, Moscow (1967)MathSciNetMATHGoogle Scholar
- 6.Kunze, F.: Towards the integration of an intuitionistic first-order prover into Coq. In: Proceedings of the 1st International Workshop Hammers for Type Theories (HaTT 2016) (2016). https://arxiv.org/abs/1606.05948
- 7.Lifschitz, V.: What is the inverse method? J. Autom. Reasoning 5(1), 1–23 (1989)MathSciNetCrossRefMATHGoogle Scholar
- 8.Maslov, S.Y.: The inverse method for establishing deducibility for logical calculi (Russian). Trudy Matem. Inst. AN SSSR 98, 26–87 (1968). English transl. in Proc. Steklov Inst. of Mathematics 98, 25–95, AMS, Providence (1971)MATHGoogle Scholar
- 9.Maslov, S.Y.: Deduction-search tactics based on unification of the order of members in a favourable set (Russian). Zap. Nauchn. Sem. LOMI 16, 126–136 (1969). English transl. in Seminars in Mathematics. Steklov Math. Inst. 16, Consultants Bureau, New York - London (1971)Google Scholar
- 10.Maslov, S.Y.: Deduction search in calculi of general type (Russian). Zap. Nauchn. Sem. LOMI 32, 59–65 (1972). English transl. in Journal of Soviet Mathematics, vol. 6, no. 4, 395–400 (1976)Google Scholar
- 11.Maslov, S.Y.: The inverse methods and tactics for establishing deducibility for a calculus with functional symbols (Russian). Trudy Matem. Inst. AN SSSR 121, 14–56 (1972). English transl. in Proc. Steklov Inst. of Mathematics 121, 11–60, AMS, Providence (1974)Google Scholar
- 12.McCune, W.: Prover9 and Mace4 (2005–2010). https://www.cs.unm.edu/~mccune/mace4/
- 13.McLaughlin, S., Pfenning, F.: Efficient intuitionistic theorem proving with the polarized inverse method. In: Schmidt, R.A. (ed.) CADE 2009. LNCS (LNAI), vol. 5663, pp. 230–244. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02959-2_19 CrossRefGoogle Scholar
- 14.Mints, G.: Resolution strategies for the intuitionistic logic. In: Mayoh, B., Tyugu, E., Penjam, J. (eds.) Constraint Programming. NATO ASI F, vol. 131, pp. 289–311. Springer, Heidelberg (1994). https://doi.org/10.1007/978-3-642-85983-0_11 CrossRefGoogle Scholar
- 15.Mints, G.: Decidability of the class E by Maslov’s inverse method. In: Blass, A., Dershowitz, N., Reisig, W. (eds.) Fields of Logic and Computation. LNCS, vol. 6300, pp. 529–537. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15025-8_26 CrossRefGoogle Scholar
- 16.Orevkov, V.P.: Obratnyi metod poiska vyvoda dlia skulemovskikh predvarennykh formul ischisleniia predikatov (Russian). In: Adamenko, A.N., Kuchukov, A.M.: Logicheskoe programmirovanie i Visual Prolog, appendix 4, 952–965, BHV, St. Petersburg (2003)Google Scholar
- 17.Otten, J.: Non-clausal connection-based theorem proving in intuitionistic first-order logic. In: Proceedings of the 2nd International Workshop on Automated Reasoning in Quantified Non-Classical Logics (ARQNL/IJCAR 2016), CEUR Workshop Proceedings, vol. 1770, pp. 9–20 (2016). http://ceur-ws.org/Vol-1770/
- 18.Pavlov, V., Pak, V.: The inverse method application for non-classical logics. Nonlinear Phenom. Complex Syst. 18(2), 181–190 (2015)MathSciNetMATHGoogle Scholar
- 19.Pavlov, V.A., Pak, V.G.: An experimental computer program for automated reasoning in intuitionistic logic using the inverse method (Russian). SPbSPU J. Comput. Sci. Telecommun. Control Syst. 6(234), 70–80 (2015)Google Scholar
- 20.Raths, T., Otten, J., Kreitz, C.: The ILTP library: benchmarking automated theorem provers for intuitionistic logic. In: Beckert, B. (ed.) TABLEAUX 2005. LNCS (LNAI), vol. 3702, pp. 333–337. Springer, Heidelberg (2005). https://doi.org/10.1007/11554554_28 CrossRefGoogle Scholar
- 21.Schmitt, S., Lorigo, L., Kreitz, C., Nogin, A.: JProver: integrating connection-based theorem proving into interactive proof assistants. In: Goré, R., Leitsch, A., Nipkow, T. (eds.) IJCAR 2001. LNCS, vol. 2083, pp. 421–426. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45744-5_34 CrossRefGoogle Scholar
- 22.Sutcliffe, G., Suttner, C.: Evaluating general purpose automated theorem proving systems. Artif. Intell. 131(1–2), 39–54 (2001)MathSciNetCrossRefMATHGoogle Scholar
- 23.Tammet, T.: A resolution theorem prover for intuitionistic logic. In: McRobbie, M.A., Slaney, J.K. (eds.) CADE 1996. LNCS, vol. 1104, pp. 2–16. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-61511-3_65 CrossRefGoogle Scholar
- 24.The ILTP Library. Provers and Results. http://iltp.de/results.html
- 25.Voronkov, A.: Theorem proving in non-standard logics based on the inverse method. In: Kapur, D. (ed.) CADE 1992. LNCS, vol. 607, pp. 648–662. Springer, Heidelberg (1992). https://doi.org/10.1007/3-540-55602-8_198 Google Scholar