Results 1  10
of
13
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
(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
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
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 12 (3 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
Stone duality for nominal Boolean algebras with NEW
 In Proceedings of the 4th international conference on algebra and coalgebra in computer science (CALCO 2011), volume 6859 of Lecture Notes in Computer Science
, 2011
"... Abstract. We define Boolean algebras over nominal sets with a functionsymbol Nmirroring the N‘fresh name ’ quantifier. We also define dual notions of nominal topology and Stone space, prove a representation theorem over fields of nominal sets, and extend this to a Stone duality. 1 ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
Abstract. We define Boolean algebras over nominal sets with a functionsymbol Nmirroring the N‘fresh name ’ quantifier. We also define dual notions of nominal topology and Stone space, prove a representation theorem over fields of nominal sets, and extend this to a Stone duality. 1
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

Cited by 3 (0 self)
 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.
Principal Types for Nominal Theories
"... Abstract. We define rank 1 polymorphic types for nominal rewrite rules and equations. Typing environments type atoms, variables, and function symbols, and since we follow a Currystyle approach there is no need to fully annotate terms with types. Our system has principal types, and we give rule and ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. We define rank 1 polymorphic types for nominal rewrite rules and equations. Typing environments type atoms, variables, and function symbols, and since we follow a Currystyle approach there is no need to fully annotate terms with types. Our system has principal types, and we give rule and axiom formats to guarantee preservation of types under both rewriting and equality reasoning. This is nontrivial because substitution does not avoid capture, so a substituted symbol can—if we are not careful—appear in inconsistent typing contexts.
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