Skip to main content
Log in

The size-change principle and dependency pairs for termination of term rewriting

  • Published:
Applicable Algebra in Engineering, Communication and Computing Aims and scope

Abstract

In [24], a new size-change principle was proposed to verify termination of functional programs automatically. We extend this principle in order to prove termination and innermost termination of arbitrary term rewrite systems (TRSs). Moreover, we compare this approach with existing techniques for termination analysis of TRSs (such as recursive path orders or dependency pairs). It turns out that the size-change principle on its own fails for many examples that can be handled by standard techniques for rewriting, but there are also TRSs where it succeeds whereas existing rewriting techniques fail. Moreover, we also compare the complexity of the respective methods. To this end, we develop the first complexity analysis for the dependency pair approach. While the size-change principle is PSPACE-complete, we prove that the dependency pair approach (in combination with classical path orders) is only -complete. To benefit from their respective advantages, we show how to combine the size-change principle with classical orders and with dependency pairs. In this way, we obtain a new approach for automated termination proofs of TRSs which is more powerful than previous approaches. We also show that the combination with dependency pairs does not increase the complexity of the size-change principle, i.e., the combined approach is still PSPACE-complete.

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.

Similar content being viewed by others

References

  1. Anderson, H., Khoo, S. C.: Affine-based size-change termination. In: Proc. 1st APLAS, LNCS 2895, 2003, pp 122–140

  2. Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theoretical Computer Science, 236, 133–178 (2000)

    Google Scholar 

  3. Arts, T., Giesl, J.: A collection of examples for termination of term rewriting using dependency pairs. Technical Report AIB-2001-09, RWTH Aachen, Germany, 2001. Available from http://aib.informatik.rwth-aachen.de

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

  5. Borralleras, C., Ferreira, M., Rubio, A.: Complete monotonic semantic path orderings. In: Proc. 17th CADE, LNAI 1831, 2000, pp 346–364

  6. Dershowitz, N.: Termination of rewriting. Journal of Symbolic Computation, 3, 69–116 (1987)

    Google Scholar 

  7. Dershowitz, N.: 33 examples of termination. In: Proc. French Spring School of Theoretical Computer Science, LNCS 909, 1995, pp 16–26

  8. Dershowitz, N., Lindenstrauss, N., Sagiv, Y., Serebrenik, A.: A general framework for automatic termination analysis of logic programs. Applicable Algebra in Engineering, Communication and Computing, 12(1,2), 117–156 (2001)

    Google Scholar 

  9. Fissore, O., Gnaedig, I., Kirchner, H.: Cariboo: An induction based proof tool for termination with strategies. In: Proc. 4th PPDP, pp 62–73. ACM Press, 2002

  10. Giesl, J., Arts, T.: Verification of Erlang processes by dependency pairs. Applicable Algebra in Engineering, Communication and Computing, 12(1,2), 39–72 (2001)

    Google Scholar 

  11. Giesl, J., Arts, T., Ohlebusch, E.: Modular termination proofs for rewriting using dependency pairs. Journal of Symbolic Computation, 34(1), 21–58 (2002)

    Google Scholar 

  12. Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Improving dependency pairs. In: Proc. 10th LPAR, LNAI 2850, 2003, pp 165–179

  13. Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Automated termination proofs with AProVE. In: Proc. 15th RTA, LNCS 3091, 2004, pp 210–220

  14. Hirokawa, N., Middeldorp, A.: Approximating dependency graphs without using tree automata techniques. In: Proc. 6th WST, 2003

  15. Hirokawa, N., Middeldorp, A.: Automating the dependency pair method. In: Proc. 19th CADE, LNAI 2741, pages 32–46, 2003. Full version to appear in Information and Computation

  16. Hirokawa, N., Middeldorp, A.: Dependency pairs revisited. In: Proc. 15th RTA, LNCS 3091, 2004, pp 249–268

  17. Kamin, S., Lévy, J. J.: Two generalizations of the recursive path ordering. Unpublished Manuscript, University of Illinois, IL, USA, 1980

  18. Knuth, D., Bendix, P.: Simple word problems in universal algebras. In: Leech, J. (ed.), Computational Problems in Abstract Algebra, pp 263–297. Pergamon Press, 1970

  19. Korovin, K., Voronkov, A.: Orienting rewrite rules with the Knuth-Bendix order. Information and Computation, 183, 165–186 (2003)

    Google Scholar 

  20. Krishnamoorthy, M. S., Narendran, P.: On recursive path ordering. Theoretical Computer Science, 40, 323–328 (1985)

    Google Scholar 

  21. Kusakari, K., Nakamura, M., Toyama, Y.: Argument filtering transformation. In: Proc. 1st PPDP, LNCS 1702, 1999, pp 48–62

  22. Lankford, D.: On proving term rewriting systems are Noetherian. Technical Report MTP-3, Louisiana Technical University, Ruston, LA, USA, 1979

  23. Lee, C. S.: Program termination analysis in polynomial time. In: Proc. 1st GPCE, LNCS 2487, 2002, pp 218–235

  24. Lee, C. S., Jones, N. D., Ben-Amram, A. M.: The size-change principle for program termination. In: Proc. 28th POPL, 2001, pp 81–92

  25. Manna, Z., Ness, S.: On the termination of Markov algorithms. In: Proc. 3rd Hawaii International Conference on System Science, 1970, pp 789–792

  26. Middeldorp, A.: Approximations for strategies and termination. In: Proc. WRS '02, ENTCS 70(6), 2002

  27. Savitch, J. W.: Relationships between nondeterministic and deterministic tape complexities. Journal of Computer and System Sciences, 4(2), 177–192 (1970)

    Google Scholar 

  28. Steinbach, J.: Automatic termination proofs with transformation orderings. In: Proc. 6th RTA, LNCS 914, 1995, pp 11–25. Full version appeared as Technical Report SR-92-23, Universität Kaiserslautern, Germany

  29. Thiemann, R., Giesl, J.: Empirical evaluation of the size-change principle for term rewriting. Available from http://www.-i2.informatik.rwth-aachen.de/AProVE/empiricalSCP.ps

  30. Thiemann, R., Giesl, J.: Size-change termination for term rewriting. In: Proc. 14th RTA, LNCS 2706, 2003, pp 264–278

  31. Thiemann, R., Giesl, J., Schneider-Kamp, P.: Improved modular termination proofs using dependency pairs. In: Proc. 2nd IJCAR, LNAI 3097, 2004, pp 75–90

  32. Toyama, Y.: Counterexamples to the termination for the direct sum of term rewriting systems. Information Processing Letters, 25, 141–143 (1987)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jürgen Giesl.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Thiemann, R., Giesl, J. The size-change principle and dependency pairs for termination of term rewriting. AAECC 16, 229–270 (2005). https://doi.org/10.1007/s00200-005-0179-7

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00200-005-0179-7

Keywords

Navigation