Termination of Isabelle Functions via Termination of Rewriting

  • Alexander Krauss
  • Christian Sternagel
  • René Thiemann
  • Carsten Fuhs
  • Jürgen Giesl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6898)

Abstract

We show how to automate termination proofs for recursive functions in (a first-order subset of) Isabelle/HOL by encoding them as term rewrite systems and invoking an external termination prover. Our link to the external prover includes full proof reconstruction, where all necessary properties are derived inside Isabelle/HOL without oracles. Apart from the certification of the imported proof, the main challenge is the formal reduction of the proof obligation produced by Isabelle/HOL to the termination of the corresponding term rewrite system. We automate this reduction via suitable tactics which we added to the IsaFoR library.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1999)MATHGoogle Scholar
  2. 2.
    Barthe, G., Forest, J., Pichardie, D., Rusu, V.: Defining and reasoning about recursive functions: A practical tool for the coq proof assistant. In: Hagiya, M. (ed.) FLOPS 2006. LNCS, vol. 3945, pp. 114–129. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Blanqui, F., Koprowski, A.: CoLoR: a Coq library on well-founded rewrite relations and its application to the automated verification of termination certificates. Math. Struct. Comp. Science (2011) (to appear)Google Scholar
  4. 4.
    Boyer, R.S., Moore, J S.: A Computational Logic. Academic Press, London (1979)MATHGoogle Scholar
  5. 5.
    Bulwahn, L., Krauss, A., Nipkow, T.: Finding lexicographic orders for termination proofs in Isabelle/HOL. In: Schneider, K., Brandt, J. (eds.) TPHOLs 2007. LNCS, vol. 4732, pp. 38–53. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Contejean, E., Courtieu, P., Forest, J., Pons, O., Urbain, X.: Certification of automated termination proofs. In: Konev, B., Wolter, F. (eds.) FroCos 2007. LNCS (LNAI), vol. 4720, pp. 148–162. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Endrullis, J., Waldmann, J., Zantema, H.: Matrix interpretations for proving termination of term rewriting. J. Autom. Reasoning 40(2-3), 195–220 (2008)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Giesl, J., Arts, T.: Verification of Erlang processes by dependency pairs. Appl. Algebr. Eng. Comm 12(1,2), 39–72 (2001)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Giesl, J., Schneider-Kamp, P., Thiemann, R.: AProVE 1.2: Automatic termination proofs in the dependency pair framework. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 281–286. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    Gordon, M.: From LCF to HOL: A short history. In: Proof, Language, and Interaction, pp. 169–185. MIT Press, Cambridge (2000)Google Scholar
  11. 11.
    Korp, M., Sternagel, C., Zankl, H., Middeldorp, A.: Tyrolean termination tool 2. In: Treinen, R. (ed.) RTA 2009. LNCS, vol. 5595, pp. 295–304. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  12. 12.
    Krauss, A.: Certified size-change termination. In: Pfenning, F. (ed.) CADE 2007. LNCS (LNAI), vol. 4603, pp. 460–475. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Krauss, A.: Partial and nested recursive function definitions in higher-order logic. J. Autom. Reasoning 44(4), 303–336 (2010)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Marchiori, M.: Logic programs as term rewriting systems. In: Rodríguez-Artalejo, M., Levi, G. (eds.) ALP 1994. LNCS, vol. 850, pp. 223–241. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  15. 15.
    Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL — A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)MATHGoogle Scholar
  16. 16.
    Ohlebusch, E.: Termination of logic programs: Transformational methods revisited. Appl. Algebr. Eng. Comm. 12(1-2), 73–116 (2001)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Sternagel, C.: Automatic Certification of Termination Proofs. PhD thesis, Institut für Informatik, Universität Innsbruck, Austria (2010)Google Scholar
  18. 18.
    Sternagel, C., Thiemann, R.: Certified subterm criterion and certified usable rules. In: Proc. RTA 2010, LIPIcs, vol. 6, pp. 325–340 (2010)Google Scholar
  19. 19.
    Thiemann, R., Sternagel, C.: Certification of termination proofs using CeTA. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 452–468. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  20. 20.
    Zantema, H.: Termination of term rewriting by semantic labelling. Fundamenta Informaticae 24, 89–105 (1995)MathSciNetMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Alexander Krauss
    • 1
  • Christian Sternagel
    • 2
  • René Thiemann
    • 2
  • Carsten Fuhs
    • 3
  • Jürgen Giesl
    • 3
  1. 1.Institut für InformatikTechnische Universität MünchenGermany
  2. 2.Institute of Computer ScienceUniversity of InnsbruckAustria
  3. 3.LuFG Informatik 2RWTH Aachen UniversityGermany

Personalised recommendations