Skip to main content
Log in

Proving Termination by Dependency Pairs and Inductive Theorem Proving

Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

Current techniques and tools for automated termination analysis of term rewrite systems (TRSs) are already very powerful. However, they fail for algorithms whose termination is essentially due to an inductive argument. Therefore, we show how to couple the dependency pair method for termination of TRSs with inductive theorem proving. As confirmed by the implementation of our new approach in the tool AProVE, now TRS termination techniques are also successful on this important class of algorithms.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

References

  1. AProVE web site: http://aprove.informatik.rwth-aachen.de/eval/Induction/ (2010). Accessed December 2010

  2. Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theor. Comput. Sci. 236, 133–178 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  3. Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)

    Google Scholar 

  4. Ben Cherifa, A., Lescanne, P.: Termination of rewriting systems by polynomial interpretations and its implementation. Sci. Comput. Program. 9(2), 137–159 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  5. Bouhoula, A., Rusinowitch, M.: SPIKE: a system for automatic inductive proofs. In: Proc. AMAST’95. LNCS, vol. 936, pp. 576–577 (1995)

  6. Boyer, R.S., Moore, JS.: A Computational Logic. Academic Press, New York (1979)

    MATH  Google Scholar 

  7. Brauburger, J., Giesl, J.: Termination analysis by inductive evaluation. In: Proc. CADE’98. LNAI, vol. 1421, pp. 254–269 (1998)

  8. Bundy, A.: The automation of proof by mathematical induction. In: Robinson, J.A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. 1, pp. 845–911. Elsevier and MIT Press (2001)

  9. Comon, H.: Inductionless induction. In: Robinson, J.A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. 1, pp. 913–962. Elsevier and MIT Press (2001)

  10. Contejean, E., Paskevich, A., Urbain, X., Courtieu, P., Pons, O., Forest, J.: A3PAT, an approach for certified automated termination proofs. In: Proc. PEPM’10, pp. 63–72. ACM Press, New York (2010)

    Google Scholar 

  11. Endrullis, J., Waldmann, J., Zantema, H.: Matrix interpretations for proving termination of term rewriting. J. Autom. Reason. 40(2,3), 195–220 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  12. Fuhs, C., Giesl, J., Middeldorp, A., Schneider-Kamp, P., Thiemann, R., Zankl, H.: SAT solving for termination analysis with polynomial interpretations. In: Proc. SAT’07. LNCS, vol. 4501, pp. 340–354 (2007)

  13. Giesl, J.: Termination analysis for functional programs using term orderings. In: Proc. SAS’95. LNCS, vol. 983, pp. 154–171 (1995)

  14. Giesl, J., Thiemann, R., Schneider-Kamp, P.: The dependency pair framework: combining techniques for automated termination proofs. In: Proc. LPAR’04. LNAI, vol. 3452, pp. 301–331 (2005)

  15. Giesl, J., Schneider-Kamp, P., Thiemann, R.: AProVE 1.2: automatic termination proofs in the dependency pair framework. In: Proc. IJCAR’06. LNAI, vol. 4130, pp. 281–286 (2006)

  16. Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Mechanizing and improving dependency pairs. J. Autom. Reason. 37(3), 155–203 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  17. Giesl, J., Thiemann, R., Swiderski, S., Schneider-Kamp, P.: Proving termination by bounded increase. In: Proc. CADE’07. LNAI, vol. 4603, pp. 443–459 (2007)

  18. Giesl, J., Raffelsieper, M., Schneider-Kamp, P., Swiderski, S., Thiemann, R.: Automated termination proofs for Haskell by term rewriting. ACM Trans. Program. Lang. Syst. 33(2) (2011, to appear). Preliminary version appeared in Proc. RTA’06. LNCS, vol. 4098, pp. 297–312 (2006)

  19. Gnaedig, I., Kirchner, H.: Termination of rewriting under strategies. ACM Trans. Comput. Log. 10(2), 10:1–10:52 (2008)

    MathSciNet  Google Scholar 

  20. Hirokawa, N., Middeldorp, A.: Automating the dependency pair method. Inf. Comput. 199(1,2), 172–199 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  21. Hirokawa, N., Middeldorp, A.: Tyrolean Termination Tool: techniques and features. Inf. Comput. 205(4), 474–511 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  22. Kapur, D., Musser, D.R.: Proof by consistency. Artif. Intell. 31(2), 125–157 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  23. Kapur, D., Narendran, P., Zhang, H.: On sufficient completeness and related properties of term rewriting systems. Acta Inf. 24, 395–415 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  24. Kaufmann, M., Manolios, P., Moore, JS.: Computer-Aided Reasoning: An Approach. Kluwer, Norwell (2000)

    Google Scholar 

  25. Korp, M., Middeldorp, A.: Beyond dependency graphs. In: Proc. CADE’09. LNAI, vol. 5663, pp. 339–354 (2009)

  26. Krauss, A.: Certified size-change termination. In: Proc. CADE’07. LNAI, vol. 4603, pp. 460–475 (2007)

  27. Lankford, D.: On Proving Term Rewriting Systems are Noetherian. Technical Report MTP-3, Louisiana Technical University, Ruston, LA, USA (1979)

  28. Lucas, S., Meseguer, J.: Order-sorted dependency pairs. In: Proc. PPDP’08, pp. 108–119. ACM Press, New York (2008)

    Google Scholar 

  29. Manolios, P., Vroon, D.: Termination analysis with calling context graphs. In: Proc. CAV’06. LNCS, vol. 4144, pp. 401–414 (2006)

  30. Ohlebusch, E.: Termination of logic programs: transformational methods revisited. Appl. Algebra Eng. Commun. Comput. 12(1,2), 73–116 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  31. Otto, C., Brockschmidt, M., von Essen, C., Giesl, J.: Automated termination analysis of Java Bytecode by term rewriting. In: Proc. RTA’10. LIPIcs, vol. 6, pp. 259–276 (2010)

  32. Panitz, S.E., Schmidt-Schauß, M.: TEA: automatically proving termination of programs in a non-strict higher-order functional language. In: Proc. SAS’97. LNCS, vol. 1302, pp. 345–360 (1997)

  33. Plaisted, D.A.: Equational reasoning and term rewriting systems. In: Gabbay, D.M., Hogger, C.J., Robinson, J.A. (eds.) Handbook of Logic in Artificial Intelligence and Logic Programming, vol. 1, pp. 273–364. Oxford University Press, London (1993)

    Google Scholar 

  34. van de Pol, J.: Modularity in Many-Sorted Term Rewriting. Master’s thesis, Utrecht University (1992). Available from http://homepages.cwi.nl/~vdpol/papers/

  35. Schneider-Kamp, P., Thiemann, R., Annov, E., Codish, M., Giesl, J.: Proving termination using recursive path orders and SAT solving. In: Proc. FroCoS’07. LNAI, vol. 4720, pp. 267–282 (2007)

  36. Schneider-Kamp, P., Giesl, J., Serebrenik, A., Thiemann, R.: Automated termination proofs for logic programs by term rewriting. ACM Trans. Comput. Log. 11(1), 2:1–2:52 (2009)

    Article  MathSciNet  Google Scholar 

  37. Swiderski, S., Parting, M., Giesl, J., Fuhs, C., Schneider-Kamp, P.: Termination analysis by dependency pairs and inductive theorem proving. In: Proc. CADE’09. LNAI, vol. 5663, pp. 322–338 (2009)

  38. Thiemann, R., Sternagel, C.: Certification of termination proofs using CeTA. In: Proc. TPHOLs’09. LNCS, vol. 5674, pp. 452–468 (2009)

  39. Toyama, Y.: Counterexamples to termination for the direct sum of term rewriting systems. Inf. Process. Lett. 25(3), 141–143 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  40. Walther, C.: Mathematical induction. In: Gabbay, D.M., Hogger, C.J., Robinson, J.A. (eds.) Handbook of Logic in Artificial Intelligence and Logic Programming, vol. 2, pp. 127–228. Oxford University Press, London (1994)

    Google Scholar 

  41. Walther, C.: On proving the termination of algorithms by machine. Artif. Intell. 71(1), 101–157 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  42. Walther, C., Schweitzer, S.: About VeriFun. In: Proc. CADE’03. LNAI, vol. 2741, pp. 322–327 (2003)

  43. Zankl, H., Hirokawa, N., Middeldorp, A.: KBO orientability. J. Autom. Reason. 43(2), 173–201 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  44. Zantema, H.: Termination of term rewriting: interpretation and type elimination. J. Symb. Comput. 17(1), 23–50 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  45. Zhang, H., Kapur, D., Krishnamoorthy, M.S.: A mechanizable induction principle for equational specifications. In: Proc. CADE’88. LNAI, vol. 310, pp. 162–181 (1988)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jürgen Giesl.

Additional information

Supported by the DFG grant GI 274/5-3, the DFG Research Training Group 1298 (AlgoSyn), the G.I.F. grant 966-116.6, and the Danish Natural Science Research Council.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fuhs, C., Giesl, J., Parting, M. et al. Proving Termination by Dependency Pairs and Inductive Theorem Proving. J Autom Reasoning 47, 133–160 (2011). https://doi.org/10.1007/s10817-010-9215-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10817-010-9215-9

Keywords

Navigation