Skip to main content
Log in

Analyzing Innermost Runtime Complexity of Term Rewriting by Dependency Pairs

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

We present a modular framework to analyze the innermost runtime complexity of term rewrite systems automatically. Our method is based on the dependency pair framework for termination analysis. In contrast to previous work, we developed a direct adaptation of successful termination techniques from the dependency pair framework in order to use them for complexity analysis. By extensive experimental results, we demonstrate the power of our method compared to existing techniques.

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

Similar content being viewed by others

References

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

    Article  MathSciNet  MATH  Google Scholar 

  2. Avanzini, M., Moser, G., Schnabl, A.: Automated implicit computational complexity analysis. In: Proc. IJCAR ’08, LNAI 5195, pp. 132–138 (2008)

  3. Avanzini, M., Moser, G.: Dependency pairs and polynomial path orders. In: Proc. RTA ’09, LNCS 5595, pp. 48–62 (2009)

  4. Avanzini, M., Moser, G.: Closing the gap between runtime complexity and polytime computability. In: Proc. RTA ’10, LIPIcs 6, pp. 33–48 (2010)

  5. Avanzini, M., Moser, G.: Complexity analysis by graph rewriting. In: Proc. FLOPS ’10, LNCS 6009, pp. 257–271 (2010)

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

  7. Bonfante, G., Cichon, A., Marion, J.-Y., Touzet, H.: Algorithms with polynomial interpretation termination proof. J. Funct. Program. 11(1), 33–53 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  8. Brockschmidt, M., Musiol, R., Otto, C., Giesl, J.: Automated termination proofs for Java programs with cyclic data. In: Proc. CAV ’12, LNCS, pp. 105–122 (2012)

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

    Article  MathSciNet  MATH  Google Scholar 

  10. Geser, A., Hofbauer, D., Waldmann, J., Zantema, H.: On tree automata that certify termination of left-linear term rewriting systems. Inf. Comput. 205(4), 512–534 (2007)

    Article  MathSciNet  MATH  Google Scholar 

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

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

    Article  MathSciNet  MATH  Google Scholar 

  13. 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), 7:1–7:39(2011)

    Google Scholar 

  14. Giesl, J., Ströder, T., Schneider-Kamp, P., Emmes, F., Fuhs, C.: Symbolic evaluation graphs and term rewriting – A general methodology for analyzing logic programs. In: Proc. PPDP ’12, pp. 1–12. ACM Press (2012)

  15. Givan, R., McAllester, D.A.: Polynomial-time computation via local inference relations. ACM Trans. Comput. Log. 3(4), 521–541 (2002)

    Article  MathSciNet  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  17. Hirokawa, N., Moser, G.: Automated complexity analysis based on the dependency pair method. In: Proc. IJCAR ’08, LNAI 5195, pp. 364–379 (2008)

  18. Hirokawa, N., Moser, G.: Complexity, graphs, and the dependency pair method. In: Proc. LPAR ’08, LNAI 5330, pp. 652–666 (2008)

  19. Hirokawa, N., Moser, G.: Automated complexity analysis based on the dependency pair method. CoRR http://arxiv.org/abs/1102.3129 (2011)

  20. Hofbauer, D., Lautemann, C.: Termination proofs and the length of derivations. In: Proc. RTA ’89, LNCS 355, pp. 167–177 (1989)

  21. Hofmann, M.: Linear types and non-size-increasing polynomial time computation. In: Proc. LICS ’99, pp. 464–473. IEEE Press (1999)

  22. Koprowski, A., Waldmann, J.: Max/plus tree automata for termination of term rewriting. Acta Cybern. 19(2), 357–392 (2009)

    MathSciNet  MATH  Google Scholar 

  23. Marion, J.-Y., Péchoux, R.: Characterizations of polynomial complexity classes with a better intensionality. In: Proc. PPDP ’08, pp. 79–88. ACM Press (2008)

  24. Moser, G., Schnabl, A., Waldmann, J.: Complexity analysis of term rewriting based on matrix and context dependent interpretations. In: Proc. FSTTCS ’08, LIPIcs 2, pp. 304–315 (2008)

  25. Moser, G.: Personal Communication (2010)

  26. Neurauter, F., Zankl, H., Middeldorp, A.: Revisiting matrix interpretations for polynomial derivational complexity of term rewriting. In: Proc. LPAR ’10, LNAI 6397, pp. 550–564 (2010)

  27. Noschinski, L., Emmes, F., Giesl, J.: A dependency pair framework for innermost complexity analysis of term rewrite systems. In: Proc. CADE ’11, LNAI 6803, pp. 422–438 (2011)

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

  29. Waldmann, J.: Polynomially bounded matrix interpretations. In: Proc. RTA ’10, LIPIcs 6, pp. 357–372 (2010)

  30. Zankl, H., Korp, M.: Modular complexity analysis via relative complexity. In: Proc. RTA ’10, LIPIcs 6, pp. 385–400 (2010)

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.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Noschinski, L., Emmes, F. & Giesl, J. Analyzing Innermost Runtime Complexity of Term Rewriting by Dependency Pairs. J Autom Reasoning 51, 27–56 (2013). https://doi.org/10.1007/s10817-013-9277-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10817-013-9277-6

Keywords

Navigation