A study of substitution, using nominal techniques and Fraenkel-Mostowksi sets

Fraenkel-Mostowski (FM) set theory delivers a model of names and alpha-equivalence. This model, now generally called the 'nominal' model, delivers inductive datatypes of syntax with alpha-equivalence - rather than inductive datatypes of syntax, quotiented by alpha-equivalence. The treatment of names and alpha-equivalence extends to the entire sets universe. This has proven useful for developing 'nominal' theories of reasoning and programming on syntax with alpha-equivalence, because a sets universe includes elements representing functions, predicates, and behaviour. Often, we want names and alpha-equivalence to model capture-avoiding substitution. In this paper we show that FM set theory models capture-avoiding substitution for names in much the same way as it models alpha-equivalence; as an operation valid for the entire sets universe which coincides with the usual (inductively defined) operation on inductive datatypes. In fact, more than one substitution action is possible (they all agree on sets representing syntax). We present two distinct substitution actions, making no judgement as to which one is 'right' - we suspect this question has the same status as asking whether classical or intuitionistic logic is 'right'. We describe the actions in detail, and describe the overall design issues involved in creating any substitution action on a sets universe. Along the way, we think in new ways about the structure of elements of FM set theory. This leads us to some interesting mathematical concepts, including the notions of planes and crucial elements, which we also describe in detail.

[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]  Michael Gabbay,et al.  We Will Show Them: Essays in Honour of Dov Gabbay, Vol. 1 , 2005 .

[3]  W. Hodges Elementary Predicate Logic , 1983 .

[4]  Antonino Salibra,et al.  The Lattice of Lambda Theories , 2004, J. Log. Comput..

[5]  Marcel Crabbé,et al.  On the Notion of Substitution , 2004, Log. J. IGPL.

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

[7]  Pierre Lescanne,et al.  From λσ to λν: a journey through calculi of explicit substitutions , 1994, POPL '94.

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

[9]  Norman Feldman Axiomatization of Polynomial Substitution Algebras , 1982, J. Symb. Log..

[10]  M. Hanus,et al.  Curry: An Integrated Functional Logic Language , 2003 .

[11]  Christian Urban,et al.  Nominal unification , 2004, Theor. Comput. Sci..

[12]  Murdoch James Gabbay A general mathematics of names , 2007, Inf. Comput..

[13]  Richard Kaye,et al.  Automorphisms of first-order structures , 1994 .

[14]  Nick Benton,et al.  Relational Reasoning in a Nominal Semantics for Storage , 2005, TLCA.

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

[16]  Murdoch James Gabbay,et al.  Capture-avoiding substitution as a nominal algebra , 2007, Formal Aspects of Computing.

[17]  Dov M. Gabbay,et al.  Handbook of Philosophical Logic Vol. 10 , 2001 .

[18]  Frank R. Drake,et al.  NOTES ON LOGIC AND SET THEORY , 1988 .

[19]  Frank Wolter,et al.  We Will Show Them! Essays in Honour of Dov Gabbay, Volume Two , 2005, We Will Show Them!.

[20]  Ralf Hinze,et al.  The Generic Haskell user's guide , 2001 .

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

[22]  Michael Beeson Lambda Logic , 2004, IJCAR.

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

[24]  Andrew M. Pitts,et al.  A New Approach to Abstract Syntax with Variable Binding , 2002, Formal Aspects of Computing.

[25]  Murdoch J. Gabbay The π-Calculus in FM , 2003 .

[26]  Simon L. Peyton Jones,et al.  Scrap your boilerplate: a practical design pattern for generic programming , 2003, TLDI '03.

[27]  Terese Term rewriting systems , 2003, Cambridge tracts in theoretical computer science.

[28]  N Brunner 75 YEARS OF INDEPENDENCE PROOFS BY FRAENKEL-MOSTOWSKI PERMUTATION MODELS. , 1996 .

[29]  Kit Fine,et al.  Reasoning with arbitrary objects , 1988 .

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

[31]  Antonino Salibra On the algebraic models of lambda calculus , 2000, Theor. Comput. Sci..

[32]  Murdoch James Gabbay,et al.  One-and-a-halfth-order Logic , 2008, J. Log. Comput..

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

[34]  Pierre Lescanne From Lambda-sigma to Lambda-upsilon a Journey Through Calculi of Explicit Substitutions. , 1994 .

[35]  J. Benthem,et al.  Higher-Order Logic , 2001 .

[36]  Artur S. d'Avila Garcez,et al.  We Will Show Them! Essays in Honour of Dov Gabbay, Volume One , 2005, We Will Show Them!.

[37]  Christian Urban,et al.  alpha-Prolog: A Logic Programming Language with Names, Binding and a-Equivalence , 2004, ICLP.

[38]  Martin Hofmann,et al.  Nominal Renaming Sets , 2008, LPAR.

[39]  John Macnamara Review: Kit Fine, Reasoning with Arbitrary Objects , 1988 .