Matrix Interpretations for Proving Termination of Term Rewriting

We present a new method for automatically proving termination of term rewriting. It is based on the well-known idea of interpretation of terms where every rewrite step causes a decrease, but instead of the usual natural numbers we use vectors of natural numbers, ordered by a particular non-total well-founded ordering. Function symbols are interpreted by linear mappings represented by matrices. This method allows to prove termination and relative termination. A modification of the latter in which strict steps are only allowed at the top, turns out to be helpful in combination with the dependency pair transformation. By bounding the dimension and the matrix coefficients, the search problem becomes finite. Our implementation transforms it to a Boolean satisfiability problem (SAT), to be solved by a state-of-the-art SAT solver. Our implementation performs well on the Termination Problem Data Base: better than 5 out of 6 tools that participated in the 2005 termination competition in the category of term rewriting.

[1]  Dieter Hofbauer,et al.  Termination Proofs and the Length of Derivations (Preliminary Version) , 1989, RTA.

[2]  Nachum Dershowitz Termination of Linear Rewriting Systems (Preliminary Version) , 1981, ICALP.

[3]  Jürgen Giesl,et al.  Automated Termination Proofs with AProVE , 2004, RTA.

[4]  Dieter Hofbauer,et al.  Termination of String Rewriting with Matrix Interpretations , 2006, RTA.

[5]  Jürgen Giesl,et al.  Automatic Termination Proofs in the Dependency Pair Framework , 2006, IJCAR.

[6]  Johannes Waldmann Matchbox: A Tool for Match-Bounded String Rewriting , 2004, RTA.

[7]  Jürgen Giesl,et al.  Proving and Disproving Termination of Higher-Order Functions , 2005, FroCoS.

[8]  Nao Hirokawa,et al.  Dependency Pairs Revisited , 2004, RTA.

[9]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[10]  Dieter Hofbauer,et al.  Termination of {aa->bc, bb->ac, cc->ab} , 2006, Inf. Process. Lett..

[11]  Jürgen Giesl,et al.  The Dependency Pair Framework: Combining Techniques for Automated Termination Proofs , 2005, LPAR.

[12]  Hans Zantema,et al.  Termination of Term Rewriting: Interpretation and Type Elimination , 1994, J. Symb. Comput..

[13]  Hans Zantema,et al.  Reducing Right-Hand Sides for Termination , 2005, Processes, Terms and Cycles.

[14]  Jürgen Giesl,et al.  Termination of term rewriting using dependency pairs , 2000, Theor. Comput. Sci..

[15]  Nao Hirokawa,et al.  Automating the Dependency Pair Method , 2005, CADE.

[16]  Nao Hirokawa,et al.  Tyrolean Termination Tool , 2005, RTA.

[17]  Armin Biere,et al.  Effective Preprocessing in SAT Through Variable and Clause Elimination , 2005, SAT.