Five Axioms of Alpha-Conversion

We present five axioms of name-carrying lambda-terms identified up to alpha-conversion—that is, up to renaming of bound variables. We assume constructors for constants, variables, application and lambda-abstraction. Other constants represent a function Fv that returns the set of free variables in a term and a function that substitutes a term for a variable free in another term. Our axioms are (1) equations relating Fv and each constructor, (2) equations relating substitution and each constructor, (3) alpha-conversion itself, (4) unique existence of functions on lambda-terms defined by structural iteration, and (5) construction of lambda-abstractions given certain functions from variables to terms. By building a model from de Bruijn’s nameless lambda-terms, we show that our five axioms are a conservative extension of HOL. Theorems provable from the axioms include distinctness, injectivity and an exhaustion principle for the constructors, principles of structural induction and primitive recursion on lambda-terms, Hindley and Seldin’s substitution lemmas and the existence of their length function. These theorems and the model have been mechanically checked in the Cambridge HOL system.

[1]  Richard J. Boulton,et al.  Experience with Embedding Hardware Description Languages in HOL , 1992, TPCD.

[2]  T. Melham A mechanized theory of the π-calculus in HOL , 1992 .

[3]  Elsa L. Gunter Why we can't have SML-style datatype Declarations in HOL , 1992, TPHOLs.

[4]  J. Roger Hindley,et al.  Introduction to combinators and λ-calculus , 1986, Acta Applicandae Mathematicae.

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

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

[7]  Bengt Nordström,et al.  Programming in Martin-Löf's Type Theory , 1990 .

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

[9]  Carolyn L. Talcott,et al.  A Theory of Binding Structures and Applications to Rewriting , 1993, Theor. Comput. Sci..

[10]  James McKinna,et al.  Pure Type Systems Formalized , 1993, TLCA.

[11]  Seán Matthews,et al.  Implementing FS0 in Isabelle: Adding Structure at the Metalevel , 1996, DISCO.

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

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

[14]  Haskell B. Curry,et al.  Combinatory Logic, Volume I , 1959 .

[15]  André Hirschowitz,et al.  Higher-Order Abstract Syntax with Induction in Coq , 1994, LPAR.

[16]  Frank Pfenning,et al.  A Proof of the Church-Rosser Theorem and its Representation in a Logical Framework , 1992 .

[17]  Robert Pollack The theory of LEGO , 1995 .

[18]  P. J. Landin The Mechanical Evaluation of Expressions , 1964, Comput. J..

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

[20]  Thomas F. Melham A Mechanized Theory of the Pi-Calculus in HOL , 1994, Nord. J. Comput..

[21]  Jim Alves-Foss,et al.  Higher Order Logic Theorem Proving and its Applications 8th International Workshop, Aspen Grove, Ut, Usa, September 11-14, 1995 : Proceedings , 1995 .

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

[23]  William C. Frederick,et al.  A Combinatory Logic , 1995 .

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

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

[26]  A. Church The calculi of lambda-conversion , 1941 .

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

[28]  Andrew D. Gordon,et al.  A Mechanisation of Name-Carrying Syntax up to Alpha-Conversion , 1993, HUG.