A New Approach to Abstract Syntax with Variable Binding

Abstract. The permutation model of set theory with atoms (FM-sets), devised by Fraenkel and Mostowski in the 1930s, supports notions of ‘name-abstraction’ and ‘fresh name’ that provide a new way to represent, compute with, and reason about the syntax of formal systems involving variable-binding operations. Inductively defined FM-sets involving the name-abstraction set former (together with Cartesian product and disjoint union) can correctly encode syntax modulo renaming of bound variables. In this way, the standard theory of algebraic data types can be extended to encompass signatures involving binding operators. In particular, there is an associated notion of structural recursion for defining syntax-manipulating functions (such as capture avoiding substitution, set of free variables, etc.) and a notion of proof by structural induction, both of which remain pleasingly close to informal practice in computer science.

[1]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

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

[3]  I. Moerdijk,et al.  Sheaves in geometry and logic: a first introduction to topos theory , 1992 .

[4]  Julian Rathke,et al.  Towards a theory of bisimulation for local names , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[5]  Frank Pfenning,et al.  Primitive recursion for higher-order abstract syntax , 1997, Theoretical Computer Science.

[6]  Peter T. Johnstone Quotients of decidable objects in a topos , 1983 .

[7]  Joseph R. Shoenfield The axioms of set theory , 1977 .

[8]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[9]  Donald A. Martin,et al.  Set Theory and Its Logic. , 1966 .

[10]  John C. Reynolds,et al.  Types, Abstraction and Parametric Polymorphism , 1983, IFIP Congress.

[11]  W. Quine,et al.  Set Theory and Its Logic. , 1965 .

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

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

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

[15]  Rod M. Burstall,et al.  Proving Properties of Programs by Structural Induction , 1969, Comput. J..

[16]  Michael P. Fourman,et al.  Sheaf models for set theory , 1980 .

[17]  Frank Pfenning,et al.  Higher-order abstract syntax , 1988, PLDI '88.

[18]  Andrew D. Gordon,et al.  Five Axioms of Alpha-Conversion , 1996, TPHOLs.

[19]  J. Y. Girard,et al.  Interpretation fonctionelle et elimination des coupures dans l'aritmetique d'ordre superieur , 1972 .

[20]  Andrew M. Pitts,et al.  Observable Properties of Higher Order Functions that Dynamically Create Local Names, or What's new? , 1993, MFCS.

[21]  Dale Miller,et al.  A logic for reasoning with higher-order abstract syntax , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

[22]  Furio Honsell,et al.  pi-calculus in (Co)inductive-type theory , 2001, Theor. Comput. Sci..

[23]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[24]  Alonzo Church,et al.  A formulation of the simple theory of types , 1940, Journal of Symbolic Logic.

[25]  Alley Stoughton,et al.  Substitution Revisited , 1988, Theor. Comput. Sci..

[26]  Joseph A. Goguen,et al.  Initial Algebra Semantics and Continuous Algebras , 1977, J. ACM.

[27]  Thomas Jech About the Axiom of Choice , 1973 .

[28]  Luca Cardelli,et al.  Logical Properties of Name Restriction , 2001, TLCA.

[29]  Kohei Honda,et al.  Elementary structures in process theory (1): Sets with renaming , 2000, Mathematical Structures in Computer Science.

[30]  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).

[31]  S. Lane,et al.  Sheaves In Geometry And Logic , 1992 .

[32]  Christine Paulin-Mohring,et al.  Inductive Definitions in the system Coq - Rules and Properties , 1993, TLCA.

[33]  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.

[34]  Ieke Moerdijk,et al.  Algebraic set theory , 1995 .

[35]  Pierre-Louis Curien Categorical Combinators, Sequential Algorithms, and Functional Programming , 1993, Progress in Theoretical Computer Science.

[36]  Per Martin-Löf,et al.  Intuitionistic type theory , 1984, Studies in proof theory.

[37]  Leslie Lamport,et al.  Should your specification language be typed , 1999, TOPL.

[38]  J. Lambek,et al.  Introduction to higher order categorical logic , 1986 .

[39]  Lawrence Charles Paulson,et al.  Isabelle: A Generic Theorem Prover , 1994 .

[40]  Dana S. Scott,et al.  A Type-Theoretical Alternative to ISWIM, CUCH, OWHY , 1993, Theor. Comput. Sci..

[41]  Carl A. Gunter Semantics of programming languages: structures and techniques , 1993, Choice Reviews Online.

[42]  Marco Pistore,et al.  π-Calculus, structured coalgebras, and minimal HD-automata , 2000 .

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

[44]  Martín Abadi,et al.  A calculus for cryptographic protocols: the spi calculus , 1997, CCS '97.

[45]  I. Stark,et al.  On the Observable Properties of Higher Order Functions that Dynamically Create Local Names (Preliminary Report) , 1993 .

[46]  Ian David Bede Stark,et al.  Names and higher-order functions , 1994 .

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

[48]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[49]  Joëlle Despeyroux,et al.  A Higher-Order Specification of the pi-Calculus , 2000, IFIP TCS.

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