Term rewriting with variable binding: an initial algebra approach

We present an extension of first-order term rewriting systems, which involves variable binding in the term language. We develop the systems called binding term rewriting systems (BTRSs) in a stepwise manner; firstly we present the term language, then formulate equational logic, and finally define rewrite systems by two styles: rewrite logic and pattern matching styles. The novelty of this development is that we follow an initial algebra approach in an extended notion of Σ-algebras in various functor categories. These are based on Fiore-Plotkin-Turi's presheaf semantics of variable binding and Lüth-Ghani's monadic semantics of term rewriting systems. We characterise the terms, equational logic and rewrite systems for BTRSs are initial algebras in suitable categories. Finally, we discuss our design choice of BTRSs from a semantic perspective.

[1]  Andrew M. Pitts,et al.  A new approach to abstract syntax involving binders , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[2]  Amy P. Felty,et al.  Higher-Order Abstract Syntax in Coq , 1995, TLCA.

[3]  I. Stark,et al.  A fully abstract domain model for the /spl pi/-calculus , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[4]  Henk Barendregt,et al.  The Lambda Calculus: Its Syntax and Semantics , 1985 .

[5]  Daniele Turi,et al.  Semantics of name and value passing , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[6]  Edmund Robinson Variations on Algebra: Monadicity and Generalisations of Equational Therories , 2002, Formal Aspects of Computing.

[7]  D. Turi,et al.  Functional Operational Semantics and its Denotational Dual , 1996 .

[8]  Gérard Huet,et al.  On the Uniform Halting Problem for Term Rewriting Systems , 1978 .

[9]  Andrew M. Pitts,et al.  A Metalanguage for Programming with Bound Names Modulo Renaming , 2000, MPC.

[10]  de Ng Dick Bruijn Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem , 1972 .

[11]  G. M. Kelly,et al.  Adjunctions whose counits are coequalizers, and presentations of finitary enriched monads , 1993 .

[12]  Dale A. Miller,et al.  AN OVERVIEW OF PROLOG , 1988 .

[13]  Gordon D. Plotkin,et al.  Abstract syntax and variable binding , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[14]  Pierre Lescanne,et al.  Explicit Substitutions with de Bruijn's Levels , 1995, RTA.

[15]  Dale Miller,et al.  A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification , 1991, J. Log. Comput..

[16]  M. Hoffman Semantical analysis of higher-order abstract syntax , 1999 .

[17]  Makoto Hamana A Logic Programming Language Based on Binding Algebras , 2001, TACS.

[18]  Andrew M. Pitts,et al.  A First Order Theory of Names and Binding , 2001 .

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

[20]  Albert Rubio,et al.  The higher-order recursive path ordering , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[21]  Christoph Lüth Compositional Term Rewriting: An Algebraic Proof of Toyama's Theorem , 1996, RTA.

[22]  George Gratzer,et al.  Universal Algebra , 1979 .

[23]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[24]  Tobias Nipkow,et al.  Higher-order critical pairs , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[25]  Jean-Pierre Jouannaud,et al.  The Calculus of algebraic Constructions , 1999, RTA.

[26]  Marcelo P. Fiore,et al.  Semantic analysis of normalisation by evaluation for typed lambda calculus , 2002, PPDP '02.

[27]  Jan Willem Klop,et al.  Combinatory reduction systems , 1980 .

[28]  Ian Stark Categorical models for local names , 1996, LISP Symb. Comput..

[29]  Desmond Fearnley-Sander,et al.  Universal Algebra , 1982 .

[30]  Miki Tanaka Abstract Syntax and Variable Binding for Linear Binders , 2000, MFCS.

[31]  Atsushi Ohori,et al.  A typed context calculus , 2001, Theor. Comput. Sci..

[32]  Davide Sangiorgi,et al.  A Fully Abstract Model for the [pi]-calculus , 1996, Inf. Comput..

[33]  Jean-Pierre Jouannaud,et al.  Inductive-data-type systems , 2002, Theor. Comput. Sci..

[34]  Christoph Lüth,et al.  Monads and Modular Term Rewriting , 1997, Category Theory and Computer Science.