Proving termination of membership equational programs

Advanced typing, matching, and evaluation strategy features, as well as very general conditional rules, are routinely used in equational programming languages such as, for example, <sc>ASF+SDF</sc>, <sc>OBJ</sc>, <sc>CafeOBJ</sc>, <sc>Maude</sc>, and equational subsets of <sc>ELAN</sc> and <sc>CASL</sc>. Proving termination of equational programs having such expressive features is important but nontrivial, because some of those features may not be supported by standard termination methods and tools, such as <sc>muterm</sc>, <sc>C<i>i</i>ME</sc>, <sc>AProVE</sc>, <sc>TTT</sc>, <sc>Termptation</sc>, etc. Yet, use of the features may be essential to ensure termination. We present a sequence of theory transformations that can be used to bridge the gap between expressive equational programs and termination tools, prove the correctness of such transformations, and discuss a prototype tool performing the transformations on <sc>Maude</sc> equational programs and sending the resulting transformed theories to some of the aforementioned tools.

[1]  Salvador Lucas,et al.  mu-term: A Tool for Proving Termination of Context-Sensitive Rewriting , 2004, RTA.

[2]  S. Falke,et al.  AProVE : A System for Proving Termination , 2003 .

[3]  Salvador Lucas,et al.  Polynomials for Proving Termination of Context-Sensitive Rewriting , 2004, FoSSaCS.

[4]  Claude Marché,et al.  Proving Termination of Rewriting with C i ME , 2003 .

[5]  Maria C. F. Ferreira,et al.  Context-Sensitive AC-Rewriting , 1999, RTA.

[6]  Hans Zantema,et al.  Termination of Context-Sensitive Rewriting , 1997, RTA.

[7]  Hélène Kirchner,et al.  System Presentation -- CARIBOO: An induction based proof tool for termination with strategies , 2002, PPDP '02.

[8]  José Meseguer,et al.  Specification and proof in membership equational logic , 2000, Theor. Comput. Sci..

[9]  Enno Ohlebusch,et al.  Hierarchical termination revisited , 2002, Inf. Process. Lett..

[10]  Arie van Deursen,et al.  Language Prototyping: An Algebraic Specification Approach , 1996, AMAST Series in Computing.

[11]  Enno Ohlebusch,et al.  Advanced Topics in Term Rewriting , 2002, Springer New York.

[12]  Peter D. Mosses,et al.  CASL: the Common Algebraic Specification Language , 2002, Theor. Comput. Sci..

[14]  Salvador Lucas,et al.  Termination of programs with strategy annotations , 2003 .

[15]  José Meseguer,et al.  Membership algebra as a logical framework for equational specification , 1997, WADT.

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

[17]  Salvador Lucas,et al.  Context-sensitive Computations in Functional and Functional Logic Programs , 1998, J. Funct. Log. Program..

[18]  Roberto Bruni,et al.  Generalized Rewrite Theories , 2003, ICALP.

[19]  Enno Ohlebusch,et al.  Modular Termination Proofs for Rewriting Using Dependency Pairs , 2002, J. Symb. Comput..

[20]  Claude Kirchner,et al.  ELAN from a rewriting logic point of view , 2002, Theor. Comput. Sci..

[21]  Jürgen Giesl,et al.  Transformation techniques for context-sensitive rewrite systems , 2004, J. Funct. Program..

[22]  Salvador Lucas,et al.  Termination of Context-Sensitive Rewriting by Rewriting , 1996, ICALP.

[23]  Peter D. Mosses,et al.  CASL User Manual , 2004, Lecture Notes in Computer Science.

[24]  Xavier Urbain,et al.  Automated Incremental Termination Proofs for Hierarchically Defined Term Rewriting Systems , 2001, IJCAR.

[25]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

[26]  Nao Hirokawa,et al.  Tsukuba Termination Tool , 2003, RTA.

[27]  Salvador Lucas,et al.  Recursive Path Orderings Can Be Context-Sensitive , 2002, CADE.

[28]  Salvador Lucas Context-sensitive rewriting strategies , 2002 .

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