Results 1  10
of
16
Structural Recursion with Locally Scoped Names
"... This paper introduces a new recursion principle for inductively defined data modulo αequivalence of bound names that makes use of Oderskystyle local names when recursing over bound names. It is formulated in simply typed λcalculus extended with names that can be restricted to a lexical scope, tes ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
This paper introduces a new recursion principle for inductively defined data modulo αequivalence of bound names that makes use of Oderskystyle local names when recursing over bound names. It is formulated in simply typed λcalculus extended with names that can be restricted to a lexical scope, tested for equality, explicitly swapped and abstracted. The new recursion principle is motivated by the nominal sets notion of “αstructural recursion”, whose use of names and associated freshness sideconditions in recursive definitions formalizes common practice with binders. The new calculus has a simple interpretation in nominal sets equipped with name restriction operations. It is shown to adequately represent αstructural recursion while avoiding the need to verify freshness sideconditions in definitions and computations. The paper is a revised and expanded version of (Pitts, 2010). 1
Simple nominal type theory
"... Abstract. Nominal logic is an extension of firstorder logic with features useful for reasoning about abstract syntax with bound names. For computational applications such as programming and formal reasoning, it is desirable to develop constructive type theories for nominal logic which extend standa ..."
Abstract

Cited by 14 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Nominal logic is an extension of firstorder logic with features useful for reasoning about abstract syntax with bound names. For computational applications such as programming and formal reasoning, it is desirable to develop constructive type theories for nominal logic which extend standard type theories for propositional, first or higherorder logic. This has proven difficult, largely because of complex interactions between nominal logic’s nameabstraction operation and ordinary functional abstraction. This difficulty already arises in the case of propositional logic and simple type theory. In this paper we show how this difficulty can be overcome, and present a simple nominal type theory which enjoys properties such as type soundness and strong normalization, and which can be soundly interpreted using existing nominal set models of nominal logic. We also sketch how recursion combinators for languages with binding structure can be provided. This is an important first step towards understanding the constructive content of nominal logic and incorporating it into existing logics and type theories. 1
Quotients Revisited for Isabelle/HOL
 the Proc. of the 26th ACM Symposium On Applied Computing
, 2011
"... HigherOrder Logic (HOL) is based on a small logic kernel, whose only mechanism for extension is the introduction of safe definitions and of nonempty types. Both extensions are often performed in quotient constructions. To ease the work involved with such quotient constructions, we reimplemented i ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
(Show Context)
HigherOrder Logic (HOL) is based on a small logic kernel, whose only mechanism for extension is the introduction of safe definitions and of nonempty types. Both extensions are often performed in quotient constructions. To ease the work involved with such quotient constructions, we reimplemented in the Isabelle/HOL theorem prover the quotient package by Homeier. In doing so we extended his work in order to deal with compositions of quotients and also specified completely the procedure of lifting theorems from the raw level to the quotient level. The importance for theorem proving is that many formal verifications, in order to be feasible, require a convenient reasoning infrastructure for quotient constructions.
Proof Pearl: A New Foundation for Nominal Isabelle
"... Abstract. Pitts et al introduced a beautiful theory about names and binding based on the notions of permutation and support. The engineering challenge is to smoothly adapt this theory to a theorem prover environment, in our case Isabelle/HOL. We present a formalisation of this work that differs from ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
(Show Context)
Abstract. Pitts et al introduced a beautiful theory about names and binding based on the notions of permutation and support. The engineering challenge is to smoothly adapt this theory to a theorem prover environment, in our case Isabelle/HOL. We present a formalisation of this work that differs from our earlier approach in two important respects: First, instead of representing permutations as lists of pairs of atoms, we now use a more abstract representation based on functions. Second, whereas the earlier work modeled different sorts of atoms using different types, we now introduce a unified atom type that includes all sorts of atoms. Interestingly, we allow swappings, that is permutations build up by two atoms, to be illsorted. As a result of these design changes, we can iron out inconveniences for the user, considerably simplify proofs and also drastically reduce the amount of custom MLcode. Furthermore we can extend the capabilities of Nominal Isabelle to deal with variables that carry additional information. We end up with a pleasing and formalised theory of permutations and support, on which we can build an improved and more powerful version of Nominal Isabelle. 1
Recursion principles for syntax with bindings and substitution
 In ICFP
, 2011
"... We characterize the data type of terms with bindings, freshness and substitution, as an initial model in a suitable Horn theory. This characterization yields a convenient recursive definition principle, which we have formalized in Isabelle/HOL and employed in a series of case studies taken from the ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
We characterize the data type of terms with bindings, freshness and substitution, as an initial model in a suitable Horn theory. This characterization yields a convenient recursive definition principle, which we have formalized in Isabelle/HOL and employed in a series of case studies taken from the λcalculus literature.
Contributions to the Theory of Syntax with Bindings and to Process Algebra
, 2010
"... We develop a theory of syntax with bindings, focusing on: methodological issues concerning the convenient representation of syntax; techniques for recursive definitions and inductive reasoning. Our approach consists of a combination of FOAS (FirstOrder Abstract Syntax) and HOAS (HigherOrder Abst ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
(Show Context)
We develop a theory of syntax with bindings, focusing on: methodological issues concerning the convenient representation of syntax; techniques for recursive definitions and inductive reasoning. Our approach consists of a combination of FOAS (FirstOrder Abstract Syntax) and HOAS (HigherOrder Abstract Syntax) and tries to take advantage of the best of both worlds. The connection between FOAS and HOAS follows some general patterns and is presented as a (formally certified) statement of adequacy. We also develop a general technique for proving bisimilarity in process algebra Our technique, presented as a formal proof system, is applicable to a wide range of process algebras. The proof system is incremental, in that it allows building incrementally an a priori unknown bisimulation, and patternbased, in that it works on equalities of process patterns (i.e., universally quantified equations of process terms containing process variables), thus taking advantage of equational reasoning in a “circular ” manner, inside coinductive proof loops. All the work presented here has been formalized in the Isabelle theorem prover. The formalization is performed in a general setting: arbitrary manysorted syntax with bindings and arbitrary SOSspecified process algebra in de Simone format. The usefulness of our techniques is illustrated by several formalized case studies: a development of callbyname and callbyvalue λcalculus with constants, including ChurchRosser theorems, connection with de Bruijn representation, connection with other Isabelle formalizations, HOAS representation, and contituationpassingstyle (CPS) transformation; a proof in HOAS of strong normalization for the polymorphic secondorder λcalculus (a.k.a. System F). We also indicate the outline and some details of the formal development. ii to Leili R. Marleene iii
Mechanised computability theory
 In Interactive Theorem Proving  Second International Conference, ITP 2011, Berg en Dal, The Netherlands, August 2225, 2011. Proceedings, volume 6898 of Lecture Notes in Computer Science
, 2011
"... Abstract. This paper presents a mechanisation of some basic computability theory. The mechanisation uses two models: the recursive functions and the λcalculus, and shows that they have equivalent computational power. Results proved include the Recursion Theorem, an instance of the smn theorem, t ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
(Show Context)
Abstract. This paper presents a mechanisation of some basic computability theory. The mechanisation uses two models: the recursive functions and the λcalculus, and shows that they have equivalent computational power. Results proved include the Recursion Theorem, an instance of the smn theorem, the existence of a universal machine, Rice’s Theorem, and closure facts about the recursive and recursively enumerable sets. The mechanisation was performed in the HOL4 system and is available online. 1
General Bindings and AlphaEquivalence in Nominal Isabelle
"... Abstract. Nominal Isabelle is a definitional extension of the Isabelle/HOL theorem prover. It provides a proving infrastructure for reasoning about programming language calculi involving named bound variables (as opposed to deBruijn indices). In this paper we present an extension of Nominal Isabell ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
(Show Context)
Abstract. Nominal Isabelle is a definitional extension of the Isabelle/HOL theorem prover. It provides a proving infrastructure for reasoning about programming language calculi involving named bound variables (as opposed to deBruijn indices). In this paper we present an extension of Nominal Isabelle for dealing with general bindings, that means termconstructors where multiple variables are bound at once. Such general bindings are ubiquitous in programming language research and only very poorly supported with single binders, such as lambdaabstractions. Our extension includes new definitions of αequivalence and establishes automatically the reasoning infrastructure for αequated terms. We also prove strong induction principles that have the usual variable convention already built in. 1
LF in LF: Mechanizing the Metatheory of LF in Twelf
 PREPRINT FOR LFMTP’12
, 2012
"... We present a mechanized proof of the metatheory of LF, i.e. the decidability of typechecking and the existence and uniqueness of canonical forms. We use a syntactic approach in which we define a translation from LF to its canonical forms presentation (in which only betashort, etalong terms are wel ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
We present a mechanized proof of the metatheory of LF, i.e. the decidability of typechecking and the existence and uniqueness of canonical forms. We use a syntactic approach in which we define a translation from LF to its canonical forms presentation (in which only betashort, etalong terms are wellformed) and prove soundness and completeness of the translation, establishing that definitional equivalence in LF corresponds to syntactic equivalence in canonical forms. Much recent work is based on the system of canonical forms and hereditary substitution presented herein; our proof also serves to reconcile that presentation with the traditional version based on definitional equivalence.
Formal SOSProofs in the LambdaCalculus
 SOS 2007
, 2007
"... We describe in this paper formalisations for the properties of weakening, typesubstitutivity, subjectreduction and terminationof the usual bigstep evaluation relation. Our language is the lambdacalculus whose simplicity allows us to give theoremprover code for the formal proofs. The formalisati ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
We describe in this paper formalisations for the properties of weakening, typesubstitutivity, subjectreduction and terminationof the usual bigstep evaluation relation. Our language is the lambdacalculus whose simplicity allows us to give theoremprover code for the formal proofs. The formalisations are done in the theorem prover Isabelle/HOL using the nominal datatypepackage. The point of these formalisations is to be as close as possible to the "pencilandpaper" proofs for these properties, but of course be completely rigorous. We describe where the nominal datatype package is of great help with such formalisationsand where one has to invest additional effort in order to obtain formal proofs.