Abstract
The dependency pair technique is a powerful method for automated termination and innermost termination proofs of term rewrite systems (TRSs). For any TRS, it generates inequality constraints that have to be satisfied by well-founded orders. We improve the dependency pair technique by considerably reducing the number of constraints produced for (innermost) termination proofs. Moreover, we extend transformation techniques to manipulate dependency pairs that simplify (innermost) termination proofs significantly. To fully mechanize the approach, we show how transformations and the search for suitable orders can be mechanized efficiently. We implemented our results in the automated termination prover AProVE and evaluated them on large collections of examples.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theor. Comput. Sci. 236, 133–178 (2000)
Arts, T., Giesl, J.: A collection of examples for termination of term rewriting using dependency pairs. Technical report AIB-2001-09, RWTH Aachen, Germany. Available from http://aib.informatik.rwth-aachen.de (2001)
Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge, UK (1998)
Borralleras, C.: Ordering-based methods for proving termination automatically. Ph.D. thesis, Universitat Politècnica de Catalunya, Spain (2003)
Borralleras, C., Ferreira, M., Rubio, A.: Complete monotonic semantic path orderings. In: Proceedings of the 17th CADE. LNAI 1831, pp. 346–364 (2000)
Contejean, E., Marché, C., Monate, B., Urbain, X.: CiME version 2. Available from http://cime.lri.fr (2000)
Dershowitz, N.: Termination of rewriting. J. Symb. Comput. 3, 69–116 (1987)
Dershowitz, N., Lindenstrauss, N., Sagiv, Y., Serebrenik, A.: A general framework for automatic termination analysis of logic programs. Appl. Algebra Eng. Commun. Comput. 12(1–2), 117–156 (2001)
Geser, A., Hofbauer, D., Waldmann, J.: Match-bounded string rewriting systems. Appl. Algebra Eng. Commun. Comput. 15(3–4), 149–171 (2004)
Giesl, J.: Generating polynomial orderings for termination proofs. In: Proceedings of the 6th RTA. LNCS 914, pp. 426–431 (1995)
Giesl, J., Arts, T.: Verification of Erlang processes by dependency pairs. Appl. Algebra Eng. Commun. Comput. 12(1–2), 39–72 (2001)
Giesl, J., Arts, T., Ohlebusch, E.: Modular termination proofs for rewriting using dependency pairs. J. Symb. Comput. 34(1), 21–58 (2002)
Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Improving dependency pairs. In: Proceedings of the 10th LPAR, LNAI 2850. pp. 165–179 (2003a)
Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Mechanizing dependency pairs. Technical report AIB-2003-08, RWTH Aachen, Germany. Available from http://aib.informatik.rwth-aachen.de (2003b)
Giesl, J., Thiemann, R., Schneider-Kamp, P.: The dependency pair framework: combining techniques for automated termination proofs. In: Proceedings of the 11th LPAR. LNAI 3452, pp. 301–331 (2005a)
Giesl, J., Thiemann, R., Schneider-Kamp, P.: Proving and disproving termination of higher-order functions. In: Proceedings of the 5th FroCoS. LNAI 3717, pp. 216–231 (2005b)
Giesl, J., Schneider-Kamp, P., Thiemann, R.: AProVE 1.2: Automatic termination proofs in the dependency pair framework. In: Proceedings of the 3rd IJCAR. LNAI 4130, pp. 281–286 (2006a)
Giesl, J., Swiderski, S., Schneider-Kamp, P., Thiemann, R.: Automated termination analysis for Haskell: from term rewriting to programming languages. In: Proceedings of the 17th RTA. LNCS 4098, pp. 297–312 (2006b)
Gramlich, B.: Generalized sufficient conditions for modular termination of rewriting. Appl. Algebra Eng. Commun. Comput. 5, 131–158 (1994)
Gramlich, B.: Abstract relations between restricted termination and confluence properties of rewrite systems. Fundam. Inform. 24, 3–23 (1995)
Gramlich, B.: Termination and confluence properties of structured rewrite systems. Ph.D. thesis, Universität Kaiserslautern, Germany (1996)
Hirokawa, N., Middeldorp, A.: Dependency pairs revisited. In: Proceedings of the 15th RTA. LNCS 3091, pp. 249–268 (2004a)
Hirokawa, N., Middeldorp, A.: Polynomial interpretations with negative coefficients. In: Proceedings of the AISC ’04, LNAI 3249, 185–198 (2004b)
Hirokawa, N., Middeldorp, A.: Tyrolean termination tool. In: Proceedings of the 16th RTA. LNCS 3467, pp. 175–184 (2005a)
Hirokawa, N., Middeldorp, A.: Automating the dependency pair method. Inf. Comput. 199(1–2), 172–199 (2005b)
Hong, H., Jakuš, D.: Testing positiveness of polynomials. J. Autom. Reason. 21(1), 23–38 (1998)
Huet, G., Hullot, J.-M.: Proofs by induction in equational theories with constructors. J. Comput. Syst. Sci. 25, 239–299 (1982)
Knuth, D., Bendix, P.: Simple word problems in universal algebras. In: Leech, J. (ed.) Computational Problems in Abstract Algebra, pp. 263–297. Pergamon Press, Oxford, UK (1970)
Koprowski, A.: TPA: termination proved automatically. In: Proceedings of the 17th RTA. LNCS 4098, pp. 257–266 (2006)
Kusakari, K., Nakamura, M., Toyama, Y.: Argument filtering transformation. In: Proceedings of the 1st PPDP. LNCS 1702, pp. 48–62 (1999)
Lankford, D.: On proving term rewriting systems are Noetherian. Technical report MTP-3, Louisiana Technical University, Ruston, LA (1979)
Lee, C. S., Jones, N. D., Ben-Amram, A. M.: The size-change principle for program termination. In: Proceedings of the 28th POPL, pp. 81–92 (2001)
Lucas, S.: Polynomials over the reals in proofs of termination: from theory to practice. RAIRO Theor. Inform. Appl. 39(3), 547–586 (2005)
Middeldorp, A.: Approximating dependency graphs using tree automata techniques. In: Proceedings of the 1st IJCAR. LNAI 2083, pp. 593–610 (2001)
Middeldorp, A.: Approximations for strategies and termination. In: Proceedings of the 2nd WRS. ENTCS 70(6) (2002)
Ohlebusch, E., Claves, C., Marché, C.: TALP: A tool for termination analysis of logic programs. In: Proceedings of the 11th RTA. LNCS 1833, 270–273 (2000)
Ohlebusch, E.: Advanced Topics in Term Rewriting. Springer, Berlin Heidelberg New York (2002)
Schneider-Kamp, P., Giesl, J., Serebrenik, A., Thiemann, R.: Automated termination analysis for logic programs by term rewriting. In: Proceedings of the 16th LOPSTR. LNCS (2007) (to appear)
Thiemann, R., Giesl, J., Schneider-Kamp, P.: Improved modular termination proofs using dependency pairs. In: Proceedings of the 2nd IJCAR. LNAI 3097, pp. 75–90 (2004)
Thiemann, R., Giesl, J.: The size-change principle and dependency pairs for termination of term rewriting. Appl. Algebra Eng. Commun. Comput. 16(4), 229–270 (2005)
Toyama, Y.: Counterexamples to the termination for the direct sum of term rewriting systems. Inf. Process. Lett. 25, 141–143 (1987)
TPDB web page. http://www.lri.fr/~marche/termination-competition/
Urbain, X.: Modular and incremental automated termination proofs. J. Autom. Reason. 32(4), 315–355 (2004)
Zantema, H.: Termination of term rewriting by semantic labelling. Fundam. Inform. 24, 89–105 (1995)
Zantema, H.: Termination of string rewriting proved automatically. J. Autom. Reason. 34(2), 105–139 (2005)
Author information
Authors and Affiliations
Corresponding author
Additional information
Supported by the Deutsche Forschungsgemeinschaft DFG, grant GI 274/5-1.
Rights and permissions
About this article
Cite this article
Giesl, J., Thiemann, R., Schneider-Kamp, P. et al. Mechanizing and Improving Dependency Pairs. J Autom Reasoning 37, 155–203 (2006). https://doi.org/10.1007/s10817-006-9057-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10817-006-9057-7