## A Review of Three Techniques for Formally Representing Variable Binding (2006)

### Cached

### Download Links

Citations: | 1 - 0 self |

### BibTeX

@MISC{Vaughan06areview,

author = {Jeffrey A. Vaughan},

title = {A Review of Three Techniques for Formally Representing Variable Binding},

year = {2006}

}

### OpenURL

### Abstract

This paper compares three models for formal reasoning about programming languages with binding. Higher order abstract syntax (hoas) uses meta-level binding to represent object-level binding [PE88]. Nominal Logic couples a concrete representation of bound variables with a formal apparatus for safely manipulating bound variables [Pit03]. The locally named binding representation places bound and free variables in different syntactic sorts [MP99]. This paper surveys each binding model, and compares it to the others and to Gordon and Melham’s axiomatization of the untyped lambda calculus [GM97]. Comparisons are made based on expressive power, transparency to human readers, and suitability for mechanized reasoning of each binding model. Each system excels in one area; hoas is most expressive, Nominal Logic most transparent, and locally named most mechanizable.

### Citations

884 |
A Formulation of the Simple Theory of Types
- Church
- 1940
(Show Context)
Citation Context ... gives hoas its name. Pfenning and Elliot define these constants in polymorphic lambda calculus with pairs and pattern matching. While logics, including Church’s, do not always include these features =-=[Chu40]-=-, Pfenning and Elliot found them essential for practical encodings. 7 Here we follow the convention that first order constants are base values, second order constants correspond to functions over base... |

803 |
Isabelle/HOL: A Proof Assistant for Higher-Order Logic. Volume 2283
- Nipkow, Paulson, et al.
- 2002
(Show Context)
Citation Context ...completed [Gab01]. Urban, with Tasson and Berghofer, is currently developing a nominal datatype package for Isabelle/HOL. However, because he is working in Isabelle/HOL (which includes Hilbert choice =-=[NPW02]-=-), Urban’s treatment differs in several ways from pure Nominal Logical. For example, predicates must be individually proved equivariant—this property is no longer free. A major benefit of Urban’s pack... |

766 |
Types and Programming Languages
- Pierce
- 2002
(Show Context)
Citation Context ...alpha equivalence and beta reduction depend on substitution. Variable confusion makes substitution hard to define [Bar84]. To illustrate, let us compare several potential definitions of substitutions =-=[Pie02]-=-. The first and simplest is [x := s]x �⊗ s [x := s]y �⊗ y where x �= y [x := s](t t ′ ) �⊗ ([x := s]t) ([x := s]t ′ ) [x := s](fn y. t) �⊗ fn y. [x := s]t. 3 In some contexts the encoding of binding a... |

720 | A framework for defining logics - Harper, Honsell, et al. - 1993 |

342 | Foundations for Programming Languages - Mitchell - 1996 |

328 | System description: Twelf - a meta-logical framework for deductive systems - Pfenning, Schürmann - 1999 |

325 | Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem. Indagationes Mathematicae
- Bruijn
- 1972
(Show Context)
Citation Context ...ing models. An ideal model is not only expressive, but also transparent and mechanizable. I will say a binding model is transparent when statements in the model: are easy for humans to read and write =-=[dB72]-=-, follow standard mathematical convention, and are accessible to nonspecialists [ABF + 05]. The first and second conditions help readers establish the adequacy of formal theories [HC05, Mit96]. The be... |

313 |
Higher-order abstract syntax
- Pfenning, Elliott
- 1988
(Show Context)
Citation Context ... Abstract This paper compares three models for formal reasoning about programming languages with binding. Higher order abstract syntax (hoas) uses meta-level binding to represent object-level binding =-=[PE88]-=-. Nominal Logic couples a concrete representation of bound variables with a formal apparatus for safely manipulating bound variables [Pit03]. The locally named binding representation places bound and ... |

295 |
The Lambda Calculus: Its Syntax and Semantics, volume 103
- Barendregt
- 1984
(Show Context)
Citation Context ...utes the application of an abstraction to an argument. The formal definitions of both alpha equivalence and beta reduction depend on substitution. Variable confusion makes substitution hard to define =-=[Bar84]-=-. To illustrate, let us compare several potential definitions of substitutions [Pie02]. The first and simplest is [x := s]x �⊗ s [x := s]y �⊗ y where x �= y [x := s](t t ′ ) �⊗ ([x := s]t) ([x := s]t ... |

246 | The Formal Semantics of Programming Languages: An Introduction - Winskel - 1993 |

203 | Melham, editors. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic - Gordon, F - 1993 |

181 | Nominal Logic: A First Order Theory of Names and Binding
- Pitts
- 2001
(Show Context)
Citation Context ...s) uses meta-level binding to represent object-level binding [PE88]. Nominal Logic couples a concrete representation of bound variables with a formal apparatus for safely manipulating bound variables =-=[Pit03]-=-. The locally named binding representation places bound and free variables in different syntactic sorts [MP99]. This paper surveys each binding model, and compares it to the others and to Gordon and M... |

153 |
Proving and applying program transformations expressed with second-order patterns
- Huet, Lang
- 1978
(Show Context)
Citation Context ...ere we follow the convention that first order constants are base values, second order constants correspond to functions over base types, and third order constants have types like (term → term) → term =-=[HL78]-=-. 11sOur encoding is over the signature Con : const → term Lam : (term → term) → term App : term → term → term Let : (α → term) → α → term If : term → term → term. Note that both Lam and Let are highe... |

111 |
An algorithm for testing conversion in type theory
- Coquand
- 1991
(Show Context)
Citation Context ...em [MM04]. 5.2 Evaluation McKinna and Pollack’s locally named representation is reasonably easy for humans. While using two sorts of variables is unconventional, it has appeared in earlier literature =-=[Coq91]-=-. Additionally, the scheme is similar to the Barendregt variable convention. In either case, free and bound names are drawn from distinct sets; McKinna and Pollack are simply more explicit about this.... |

88 | Nominal Techniques in Isabelle/HOL
- Urban
(Show Context)
Citation Context ...atoms and inhabit distinguished sorts. The logic contains functions to swap atoms and to test if an atom is fresh with respect to an object. While such operations can be defined in higher order logic =-=[UT05]-=- or the Calculus of Inductive Constructions [AB06], such work is outside the scope of this paper. 6.1 Distinguishing Features The key idea of Nominal Logic is that substitution and renaming are the wr... |

84 |
Axiomatic set theory
- Suppes
- 1960
(Show Context)
Citation Context ...eory can be formalized either with or without the axiom of choice. One important consequence of this axiom is that, given an infinite set of unordered elements, you can select an element from the set =-=[Sup72]-=-. The sequence of vis allows us to obtain a fresh z, regardless of how sets are axiomatized. 5sis consistent with the Gordon-Melham axioms. Thus, consistency with the Gordon-Melham axioms will be the ... |

80 | Towards a mechanized metatheory of Standard ML
- Lee, Crary, et al.
- 2007
(Show Context)
Citation Context ...variety of theorems about Mini-ML including compiler correctness, value soundness, and type preservation [PS99, Pfe]. Lee, Crary, and Harper formalized a semantics for Standard ML using hoas in Twelf =-=[LCH07]-=-. Despite these great successes, mechanizing hoas is not easy. Because meta-level abstractions (identified only up to β- or βη-equivalence) are a component of abstract syntax terms, structural inducti... |

60 |
The essence of ML type inference
- Pottier, Rémy
- 2005
(Show Context)
Citation Context ...[x := s]t ′ ) [x := s](fn y. t) �⊗ fn y. [x := s]t. 3 In some contexts the encoding of binding as functional abstraction is strained. ML type schemes, where sets of variables are bound simultaneously =-=[PR05]-=-, provide one example of this. Cheney [Che05] examines several others and proposes a solution based on Nominal Logic. Such complications fall outside the scope of this paper. 3s(The symbol �⊗ indicate... |

57 | Some lambda calculus and type theory formalized
- McKinna, Pollack
- 1999
(Show Context)
Citation Context ...ation of bound variables with a formal apparatus for safely manipulating bound variables [Pit03]. The locally named binding representation places bound and free variables in different syntactic sorts =-=[MP99]-=-. This paper surveys each binding model, and compares it to the others and to Gordon and Melham’s axiomatization of the untyped lambda calculus [GM97]. Comparisons are made based on expressive power, ... |

56 | Mechanizing metatheory in a logical framework - Harper, Licata |

54 | Five axioms of alpha conversion
- Gordon, Melham
- 1996
(Show Context)
Citation Context ...d and free variables in different syntactic sorts [MP99]. This paper surveys each binding model, and compares it to the others and to Gordon and Melham’s axiomatization of the untyped lambda calculus =-=[GM97]-=-. Comparisons are made based on expressive power, transparency to human readers, and suitability for mechanized reasoning of each binding model. Each system excels in one area; hoas is most expressive... |

41 |
Epigrams on Programming
- Perlis
- 1982
(Show Context)
Citation Context ...sses Gordon and Melham’s work in detail. Formal expressiveness is not the complete story. Indeed, we wish to avoid “the Turing tar-pit in which everything is possible but nothing of interest is easy” =-=[Per82, 54]-=-. That is, we must ensure that it is not merely possible, but also practical, to write proofs using our binding models. An ideal model is not only expressive, but also transparent and mechanizable. I ... |

40 | A formalization of the strong normalization proof for System F - Altenkirch - 1993 |

35 | Combining higher order abstract syntax with tactical theorem proving and (co)induction
- Ambler, Crole, et al.
- 2002
(Show Context)
Citation Context ...gnificant simplifications over traditional proofs—substitution becomes implicit, application trivial, and variable freshness irrelevant—hoas also adds complications. Defining induction is challenging =-=[ACM02]-=-, and Pfenning and Elliot do not mention inductive proofs at all in [PE88]. Additionally, proofs must be written over αβη equivalence classes of meta-level lambda terms [HC05]; this too adds complexit... |

24 |
An overview of Cαml
- Pottier
- 2005
(Show Context)
Citation Context ...ely, this paper ignores the weak higher order abstract syntax [DFH95] and locally nameless [MM04] models, as well as work relevant to implementers, such as Fresh Objective Caml [SP05, Shi05] and Cαml =-=[Pot06]-=-. Denotational semantics style investigations of binding [MO95] and Altenkirch’s model, which quotients alpha-equivalence judgments with bijections on variable names [Alt02], are also neglected. The r... |

23 |
A Theory of Inductive Definitions with AlphaEquivalence
- Gabbay
- 2001
(Show Context)
Citation Context ...ned a system similar to Nominal Logic as a new logic in Isabelle called Isabelle/FM. Although he was able to formalize lambda calculus in this logic, the Isabelle/FM project was never fully completed =-=[Gab01]-=-. Urban, with Tasson and Berghofer, is currently developing a nominal datatype package for Isabelle/HOL. However, because he is working in Isabelle/HOL (which includes Hilbert choice [NPW02]), Urban’s... |

21 |
André Hirschowitz. Higher-order abstract syntax in Coq
- Despeyroux, Felty
- 1995
(Show Context)
Citation Context ...se to declare one model best, and this paper does not do so. Lastly, there is a complex and varied ecosystem of binding models. Unfortunately, this paper ignores the weak higher order abstract syntax =-=[DFH95]-=- and locally nameless [MM04] models, as well as work relevant to implementers, such as Fresh Objective Caml [SP05, Shi05] and Cαml [Pot06]. Denotational semantics style investigations of binding [MO95... |

20 | The Fresh Approach: Functional Programming with Names and Binders - Shinwell - 2004 |

19 | Higher order logic
- Leivant
- 1994
(Show Context)
Citation Context ... abstract syntax. 2 An informal transcript and slides are available from http://fling-l.seas.upenn.edu/ ∼ plclub/cgi-bin/ poplmark/. 2sEverywhere, except for Section 6, we will use higher order logic =-=[Lei94]-=- as our metalogic. Recall that in higher order logic, one may quantify over predicates (∀P x . P (x) =⇒ P (x), for example) and that functions may have higher order sorts like (a → b) → c. While logic... |

12 | A formal treatment of the Barendregt Variable Convention in rule inductions
- Urban, Norrish
- 2005
(Show Context)
Citation Context ...predicate for one particular fresh variable. Thus, this induction principle is as expressive as Gordon and Melham’s. Additionally, Urban and Norrish have derived similar principles for rule induction =-=[UN05]-=-. Pitts treats substitution by defining the following relation: [ := ] ↦→ : relation over (term, var, term, term) 20sWe will read [a := s]t ↦→ t ′ as substituting s for a in t yields t ′ . One axiom i... |

11 | First order logic - Davis - 1993 |

10 |
Twelf User’s Guide: Version 1.4, 2002. Avaiable from http://www.cs.cmu.edu/ ∼ twelf
- Pfenning, Schúrmann
(Show Context)
Citation Context ...ly, it’s quite easy to define inductive relations in their system. Both Hybrid and Twelf provide hoas users with structural induction. Iterative functions are defined in Twelf using logic programming =-=[PS02]-=- and in Hybrid using Hilbert choice. This illustrates that hoas is consistent with axiom GM4, but does not intrinsically entail it. While Pfenning and Elliot only represent closed terms, Ambler and co... |

10 | Fresh objective caml user manual - Shinwell, Pitts - 2005 |

9 | Functional pearl: I am not a number–I am a free variable
- McBride, McKinna
- 2004
(Show Context)
Citation Context ... and this paper does not do so. Lastly, there is a complex and varied ecosystem of binding models. Unfortunately, this paper ignores the weak higher order abstract syntax [DFH95] and locally nameless =-=[MM04]-=- models, as well as work relevant to implementers, such as Fresh Objective Caml [SP05, Shi05] and Cαml [Pot06]. Denotational semantics style investigations of binding [MO95] and Altenkirch’s model, wh... |

9 | Suppes. Axiomatic Set Theory - Patrick - 1972 |

6 |
Proof Theory and Automated Deduction, volume 6 of Applied Logic Series
- Goubault-Larrecq, Mackie
- 1997
(Show Context)
Citation Context ... little guidance. Typical care must be taken to ensure new axioms are consistent. More generally, first order logic—on which Nominal Logic is based—is a weak logic compared with higher order logic 21s=-=[GLM97]-=-. Additionally, Pitts’s definition of Nominal Logic is not compatible with the set-theoretic axiom of choice [Sup72]; this may be a serious impediment in some settings. 7 Comparison 7.1 Expressiveness... |

6 | A comparison of formalizations of the meta-theory of a language with variable binding in Isabelle - Momigliano, Ambler, et al. - 2001 |

6 |
Mechanising Hankin and Barendregt using the Gordon-Melham axioms
- Norrish
- 2003
(Show Context)
Citation Context ... free variables. Other researchers have continued this work, including Norrish who proved the substitution lemma, the Church-Rosser property for β, η, and βη reductions, and the standardization lemma =-=[Nor03]-=-. 3.4 Evaluation The Gordon-Melham axioms provide a formal basis for automated reasoning about the untyped lambda calculus. Both Norrish and Gordon and Melham, found these axioms sufficient to prove i... |

4 |
Full abstraction and recursion
- Mislove, Oles
- 1995
(Show Context)
Citation Context ...FH95] and locally nameless [MM04] models, as well as work relevant to implementers, such as Fresh Objective Caml [SP05, Shi05] and Cαml [Pot06]. Denotational semantics style investigations of binding =-=[MO95]-=- and Altenkirch’s model, which quotients alpha-equivalence judgments with bijections on variable names [Alt02], are also neglected. The rest of this paper is outlined below. Section 2 presents a techn... |

3 | Toward a general theory of names: binding and scope
- Cheney
- 2005
(Show Context)
Citation Context ...:= s]t. 3 In some contexts the encoding of binding as functional abstraction is strained. ML type schemes, where sets of variables are bound simultaneously [PR05], provide one example of this. Cheney =-=[Che05]-=- examines several others and proposes a solution based on Nominal Logic. Such complications fall outside the scope of this paper. 3s(The symbol �⊗ indicates that the definition is incorrect and intend... |

3 | Altenkirch. A formalization of the strong normalization proof for System F - Thorsten - 1993 |

1 |
α-conversion is easy. Under revision with draft available from http://www.cs.nott.ac.uk/ ∼ txa/publ/alpha-draft.pdf
- Altenkirch
- 2002
(Show Context)
Citation Context ...aml [SP05, Shi05] and Cαml [Pot06]. Denotational semantics style investigations of binding [MO95] and Altenkirch’s model, which quotients alpha-equivalence judgments with bijections on variable names =-=[Alt02]-=-, are also neglected. The rest of this paper is outlined below. Section 2 presents a technical prelude to the critical review. It begins with a discussion of formal logic, followed by an informal trea... |

1 |
How to believe a Twelf proof. Available from http: //www.cs.cmu.edu/ ∼ rwh/papers/how/believe-twelf.pdf
- Harper, Crary
- 2005
(Show Context)
Citation Context ...nduction is challenging [ACM02], and Pfenning and Elliot do not mention inductive proofs at all in [PE88]. Additionally, proofs must be written over αβη equivalence classes of meta-level lambda terms =-=[HC05]-=-; this too adds complexity. While some practitioners find hoas convenient, its significant departure from standard mathematical practice and consequent steep learning curve yield a non-transparent bin... |

1 |
A unification algorithm for typed λ-calclus
- Huet
- 1975
(Show Context)
Citation Context ...blished a definitive account of their work. Additionally, mechanized hoas approaches rely on higher order unification, which is undecidable. Fortunately, there are good incomplete algorithms for this =-=[Hue75]-=-. While hoas can be successfully mechanized, such mechanization is complicated and the published results are not completely satisfactory. Hoas is highly expressive. Pfenning and Elliot’s presentation ... |

1 | Computation and deduction. In preparation with Cambridge - Pfenning - 1997 |

1 | Nominal techniques in Coq. To be submitted to LFMTP’06., 2006. [ABF+ 05 - Aydemir, Bohannon |

1 | Altenkirch. α-conversion is easy. Under revision with draft available from http://www.cs.nott.ac.uk/ ∼ txa/publ/alpha-draft.pdf - Thorsten - 2002 |

1 | Available from http://isabelle.in.tum.de/nominal - Urban, Berghofer - 2006 |

1 | under consideration for the - Draft - 2006 |