Results 1 
7 of
7
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 8 (2 self)
 Add to MetaCart
(Show Context)
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
A fresh look at programming with names and binders
"... A wide range of computer programs, including compilers and theorem provers, manipulate data structures that involve names and binding. However, the design of programming idioms which allow performing these manipulations in a safe and natural style has, to a large extent, remained elusive. In this pa ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
A wide range of computer programs, including compilers and theorem provers, manipulate data structures that involve names and binding. However, the design of programming idioms which allow performing these manipulations in a safe and natural style has, to a large extent, remained elusive. In this paper, we present a novel approach to the problem. Our proposal can be viewed either as a programming language design or as a library: in fact, it is currently implemented within Agda. enough to support multiple concrete implementations: we present one in nominal style and one in de Bruijn style. We use logical relations to prove that “welltyped programs do not mix names with different scope”. We exhibit an adequate encoding of Pittsstyle nominal terms into our system. Keywords: names, binders, metaprogramming, name abstraction, higherorder abstract syntax
Dependent Types for a Nominal Logical Framework
, 2012
"... We present a logical framework based on the nominal approach to representing syntax with binders. First we extend nominal terms, which have a builtin nameabstraction operator and a firstorder notion of substitution for variables, with a captureavoiding substitution operator for names. We then bu ..."
Abstract
 Add to MetaCart
(Show Context)
We present a logical framework based on the nominal approach to representing syntax with binders. First we extend nominal terms, which have a builtin nameabstraction operator and a firstorder notion of substitution for variables, with a captureavoiding substitution operator for names. We then build a dependent type system for this extended syntax
Investigations into Algebra and Topology over Nominal Sets
, 2011
"... The last decade has seen a surge of interest in nominal sets and their applications to formal methods for programming languages. This thesis studies two subjects: algebra and duality in the nominal setting. In the first part, we study universal algebra over nominal sets. At the heart of our approach ..."
Abstract
 Add to MetaCart
The last decade has seen a surge of interest in nominal sets and their applications to formal methods for programming languages. This thesis studies two subjects: algebra and duality in the nominal setting. In the first part, we study universal algebra over nominal sets. At the heart of our approach lies the existence of an adjunction of descent type between nominal sets and a category of manysorted sets. Hence nominal sets are a full reflective subcategory of a manysorted variety. This is presented in Chapter 2. Chapter 3 introduces functors over manysorted varieties that can be presented by operations and equations. These are precisely the functors that preserve sifted colimits. They play a central role in Chapter 4, which shows how one can systematically transfer results of universal algebra from a manysorted variety to nominal sets. However, the equational logic obtained is more expressive than the nominal equational logic of Clouston and Pitts, respectively, the nominal algebra of Gabbay and Mathijssen. A uniform fragment of our logic with the same expressivity
Nominal Coalgebraic Data Types . . .
"... We investigate final coalgebras in nominal sets. This allows us to define types of infinite data with binding for which all constructions automatically respect alpha equivalence. We give applications to the infinitary lambda calculus. ..."
Abstract
 Add to MetaCart
We investigate final coalgebras in nominal sets. This allows us to define types of infinite data with binding for which all constructions automatically respect alpha equivalence. We give applications to the infinitary lambda calculus.
via nominal Scott domains
, 2014
"... Program equivalence in functional metaprogramming ..."
(Show Context)