Simplification and termination of strategies in rule-based languages

In rule-based languages, control of rule application can be expressed thanks to strategy constructors. The paper addresses termination of such strategy-guided evaluation. To fix ideas, we use the ELAN strategy language. We first give a sufficient criterion for ELAN-like strategies to terminate, only lying on rewrite rules involved in the strategy. We then give a simplification process of strategies, itself described by rewriting, to empower the previous criterion. This simplification can also make proofs of other program properties easier.

[1]  Jim Woodcock,et al.  A tactic calculus — abridged version , 1996, Formal Aspects of Computing.

[2]  Patrick Viry,et al.  Equational rules for rewriting logic , 2002, Theor. Comput. Sci..

[3]  Ataru T. Nakagawa,et al.  An overview of CAFE specification environment-an algebraic approach for creating, verifying, and maintaining formal specifications over networks , 1997, First IEEE International Conference on Formal Engineering Methods.

[4]  Hélène Kirchner,et al.  Termination of Rewriting with Local Strategies , 2001, Electron. Notes Theor. Comput. Sci..

[5]  Paul Klint A Meta-Environment for Generating Programming Environments , 1989, Algebraic Methods.

[6]  Jaco van de Pol,et al.  Just-in-time: On Strategy Annotations , 2001, WRS.

[7]  Bernhard Gramlich,et al.  On Termination and Confluence Properties of Disjoint and Constructor-Sharing Conditional Rewrite Systems , 1996, Theor. Comput. Sci..

[8]  Claude Kirchner,et al.  Rewriting with Strategies in ELAN: A Functional Semantics , 2001, Int. J. Found. Comput. Sci..

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

[10]  Michael Hanus,et al.  Reduction Strategies for Declarative Programming , 2001, WRS.

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

[12]  Gert Smolka,et al.  Encapsulated Search for Higher-order Concurrent Constraint Programming , 1994, ILPS.

[13]  Richard B. Kieburtz A Logic for Rewriting Strategies , 2001, Electron. Notes Theor. Comput. Sci..

[14]  Hélène Kirchner,et al.  Induction for termination with local strategies , 2001 .

[15]  Joseph A. Goguen,et al.  Software Engineering with Obj: Algebraic Specification In Action , 2010 .

[16]  Jim Woodcock,et al.  A Tactic Calculus - Full version , 1996 .

[17]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[18]  Eelco Visser,et al.  A core language for rewriting , 1998, WRLA.

[19]  Gert Smolka The Oz Programming Model , 1996 .

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

[21]  Michael Hanus,et al.  Controlling Search in Declarative Programs , 1998, PLILP/ALP.

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

[23]  Marian Vittek Elan : un cadre logique pour le prototypage de langages de programmation avec contraintes , 1994 .

[24]  Nachum Dershowitz,et al.  Canonical Conditional Rewrite Systems , 1988, CADE.

[25]  Isabelle Gnaedig,et al.  Termination of ELAN strategies by simplification - Extended version - , 2003 .

[26]  Salvador Lucas Termination of (Canonical) Context-Sensitive Rewriting , 2002, RTA.

[27]  Hélène Kirchner,et al.  Outermost ground termination , 2004, WRLA.