Superposition with Structural Induction

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10483)

Abstract

Superposition-based provers have been successfully used to discharge proof obligations stemming from proof assistants. However, many such obligations require induction to be proved. We present a new extension of typed superposition that can perform structural induction. Several inductive goals can be attempted within a single saturation loop, by leveraging \(\text {AVATAR}\) [1]. Lemmas obtained by generalization or theory exploration can be introduced during search, used, and proved, all in the same search space. We describe an implementation and present some promising results.

References

  1. 1.
    Voronkov, A.: AVATAR: the architecture for first-order theorem provers. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 696–710. Springer, Cham (2014). doi:10.1007/978-3-319-08867-9_46 Google Scholar
  2. 2.
    Paulson, L.C., Blanchette, J.C.: Three years of experience with Sledgehammer, a practical link between automatic and interactive theorem provers. In: Sutcliffe, G., Schulz, S., Ternovska, E. (eds.) IWIL 2010, EasyChair (2012)Google Scholar
  3. 3.
    Kaliszyk, C., Urban, J.: Learning-assisted automated reasoning with Flyspeck. J. Autom. Reason. 53(2), 173–213 (2014)MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    Schulz, S.: E - a brainiac theorem prover. AI Commun. 15, 111–126 (2002)MATHGoogle Scholar
  5. 5.
    Riazanov, A., Voronkov, A.: Vampire 1.1 (system description). In: Goré, R., Leitsch, A., Nipkow, T. (eds.) IJCAR 2001. LNCS, vol. 2083, pp. 376–380. Springer, Heidelberg (2001). doi:10.1007/3-540-45744-5_29 CrossRefGoogle Scholar
  6. 6.
    Weidenbach, C., Schmidt, R.A., Hillenbrand, T., Rusev, R., Topic, D.: System Description: Spass Version 3.0. In: Pfenning, F. (ed.) CADE 2007. LNCS, vol. 4603, pp. 514–520. Springer, Heidelberg (2007). doi:10.1007/978-3-540-73595-3_38 CrossRefGoogle Scholar
  7. 7.
    Bachmair, L., Ganzinger, H.: On restrictions of ordered paramodulation with simplification. In: Stickel, M.E. (ed.) CADE 1990. LNCS, vol. 449, pp. 427–441. Springer, Heidelberg (1990). doi:10.1007/3-540-52885-7_105 CrossRefGoogle Scholar
  8. 8.
    Kovács, L., Robillard, S., Voronkov, A.: Coming to terms with quantified reasoning. In: Castagna, G., Gordon, A.D. (eds.) POPL 2017, pp. 260–270. ACM (2017)Google Scholar
  9. 9.
    Kaufmann, M., Moore, J.S.: ACL2: an industrial strength version of Nqthm. In: Computer Assurance, COMPASS 1996, pp. 23–34. IEEE (1996)Google Scholar
  10. 10.
    Biundo, S., Hummel, B., Hutter, D., Walther, C.: The karlsruhe induction theorem proving system. In: Siekmann, J.H. (ed.) CADE 1986. LNCS, vol. 230, pp. 672–674. Springer, Heidelberg (1986). doi:10.1007/3-540-16780-3_132 CrossRefGoogle Scholar
  11. 11.
    Stratulat, S.: A unified view of induction reasoning for first-order logic. In: Turing-100, The Alan Turing Centenary Conference (2012)Google Scholar
  12. 12.
    Reynolds, A., Kuncak, V.: Induction for SMT solvers. In: D’Souza, D., Lal, A., Larsen, K.G. (eds.) VMCAI 2015. LNCS, vol. 8931, pp. 80–98. Springer, Heidelberg (2015). doi:10.1007/978-3-662-46081-8_5 Google Scholar
  13. 13.
    Kersani, A., Peltier, N.: Combining superposition and induction: a practical realization. In: Fontaine, P., Ringeissen, C., Schmidt, R.A. (eds.) FroCoS 2013. LNCS, vol. 8152, pp. 7–22. Springer, Heidelberg (2013). doi:10.1007/978-3-642-40885-4_2 CrossRefGoogle Scholar
  14. 14.
    Beeson, M.: Otter-lambda, a Theorem-prover with Untyped Lambda-unification. In: Proceedings of the Workshop on Empirically Successful First Order Reasoning, 2nd International Joint Conference on Automated Reasoning (2004)Google Scholar
  15. 15.
    Wand, D., Weidenbach, C.: Automatic induction inside superposition (unpublished), April 2017. http://people.mpi-inf.mpg.de/dwand/datasup/d.pdf
  16. 16.
    Riazanov, A., Voronkov, A.: Splitting without backtracking (2001)Google Scholar
  17. 17.
    Claessen, K., Johansson, M., Rosén, D., Smallbone, N.: TIP: tons of inductive problems. In: Kerber, M., Carette, J., Kaliszyk, C., Rabe, F., Sorge, V. (eds.) CICM 2015. LNCS, vol. 9150, pp. 333–337. Springer, Cham (2015). doi:10.1007/978-3-319-20615-8_23 CrossRefGoogle Scholar
  18. 18.
    Bundy, A., Stevens, A., van Harmelen, F., Ireland, A., Smaill, A.: Rippling: a heuristic for guiding inductive proofs. Artif. Intell. 62(2), 185–253 (1993)MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Boyer, R.S., Moore, J.S.: A Computational Logic Handbook: Formerly Notes and Reports in Computer Science and Applied Mathematics. Elsevier, San Diego (2014)Google Scholar
  20. 20.
    Kapur, D., Subramaniam, M.: Lemma discovery in automating induction. In: McRobbie, M.A., Slaney, J.K. (eds.) CADE 1996. LNCS, vol. 1104, pp. 538–552. Springer, Heidelberg (1996). doi:10.1007/3-540-61511-3_112 Google Scholar
  21. 21.
    Aubin, R.: Strategies for mechanizing structural induction. In: IJCAI (1977)Google Scholar
  22. 22.
    Dowek, G., Hardin, T., Kirchner, C.: Theorem proving modulo. J. Autom. Reason. 31, 33–72 (2003)MathSciNetCrossRefMATHGoogle Scholar
  23. 23.
    Burel, G.: Embedding deduction modulo into a prover. In: Dawar, A., Veith, H. (eds.) CSL 2010. LNCS, vol. 6247, pp. 155–169. Springer, Heidelberg (2010). doi:10.1007/978-3-642-15205-4_15 CrossRefGoogle Scholar
  24. 24.
    Barrett, C., Fontaine, P., Tinelli, C.: The satisfiability modulo theories library (SMT-LIB) (2016). http://www.SMT-LIB.org
  25. 25.
    Baumgartner, P., Waldmann, U.: Hierarchic superposition with weak abstraction. In: Bonacina, M.P. (ed.) CADE 2013. LNCS, vol. 7898, pp. 39–57. Springer, Heidelberg (2013). doi:10.1007/978-3-642-38574-2_3 CrossRefGoogle Scholar
  26. 26.
    Reynolds, A., Blanchette, J.C.: A decision procedure for (Co)datatypes in SMT solvers. In: Felty, A.P., Middeldorp, A. (eds.) CADE 2015. LNCS, vol. 9195, pp. 197–213. Springer, Cham (2015). doi:10.1007/978-3-319-21401-6_13 CrossRefGoogle Scholar
  27. 27.
    Barrett, C., Shikanian, I., Tinelli, C.: An abstract decision procedure for satisfiability in the theory of inductive data types. J. Satisf. Boolean Model. Comput. 3, 21–46 (2007)MathSciNetMATHGoogle Scholar
  28. 28.
    de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). doi:10.1007/978-3-540-78800-3_24 CrossRefGoogle Scholar
  29. 29.
    Horbach, M., Weidenbach, C.: Superposition for fixed domains. ACM Trans. Comput. Log. (TOCL) 11(4), 27 (2010)MathSciNetMATHGoogle Scholar
  30. 30.
    Zhang, H., Kapur, D., Krishnamoorthy, M.S.: A mechanizable induction principle for equational specifications. In: Lusk, E., Overbeek, R. (eds.) CADE 1988. LNCS, vol. 310, pp. 162–181. Springer, Heidelberg (1988). doi:10.1007/BFb0012831 CrossRefGoogle Scholar
  31. 31.
    Claessen, K., Johansson, M., Rosén, D., Smallbone, N.: Hipspec: automating inductive proofs of program properties. In: ATx/WInG@ IJCAR (2012)Google Scholar
  32. 32.
    Runciman, C., Naylor, M., Lindblad, F.: Smallcheck and lazy smallcheck: automatic exhaustive testing for small values. ACM Sigplan Not. 44, 37–48 (2008)CrossRefGoogle Scholar
  33. 33.
    Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. ACM Sigplan Not. 46(4), 53–64 (2011)CrossRefGoogle Scholar
  34. 34.
    Lindblad, F.: Property directed generation of first-order test data. In: Trends in Functional Programming, pp. 105–123, Citeseer (2007)Google Scholar
  35. 35.
    Cruanes, S.: Extending superposition with integer arithmetic, structural induction, and beyond. Ph.D. thesis, École polytechnique, September 2015Google Scholar
  36. 36.
    Kotelnikov, E., Kovács, L., Reger, G., Voronkov, A.: The Vampire and the FOOL. In: Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs, pp. 37–48. ACM (2016)Google Scholar
  37. 37.
    Sutcliffe, G.: The TPTP problem library and associated infrastructure: the FOF and CNF parts, v3.5.0. J. Autom. Reason. 43(4), 337–362 (2009)CrossRefMATHGoogle Scholar
  38. 38.
    Johansson, M., Dixon, L., Bundy, A.: Conjecture synthesis for inductive theories. J. Autom. Reason. 47, 251–289 (2010)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.University of Lorraine, CNRS, Inria, LORIANancyFrance

Personalised recommendations