Results 1 - 10
of
22
The Lazy Lambda Calculus
- Research Topics in Functional Programming
, 1990
"... Introduction The commonly accepted basis for functional programming is the -calculus; and it is folklore that the -calculus is the prototypical functional language in puri ed form. But what is the -calculus? The syntax is simple and classical; variables, abstraction and application in the pure cal ..."
Abstract
-
Cited by 218 (3 self)
- Add to MetaCart
Introduction The commonly accepted basis for functional programming is the -calculus; and it is folklore that the -calculus is the prototypical functional language in puri ed form. But what is the -calculus? The syntax is simple and classical; variables, abstraction and application in the pure calculus, with applied calculi obtained by adding constants. The further elaboration of the theory, covering conversion, reduction, theories and models, is laid out in Barendregt's already classical treatise [Bar84]. It is instructive to recall the following crux, which occurs rather early in that work (p. 39): Meaning of -terms: rst attempt The meaning of a -term is its normal form (if it exists). All terms without normal forms are identi ed. This proposal incorporates such a simple and natural interpretation of the -calculus as
Semantic Domains
, 1990
"... this report started working on denotational semantics in collaboration with Christopher Strachey. In order to fix some mathematical precision, he took over some definitions of recursion theorists such as Kleene, Nerode, Davis, and Platek and gave an approach to a simple type theory of higher-type fu ..."
Abstract
-
Cited by 136 (3 self)
- Add to MetaCart
this report started working on denotational semantics in collaboration with Christopher Strachey. In order to fix some mathematical precision, he took over some definitions of recursion theorists such as Kleene, Nerode, Davis, and Platek and gave an approach to a simple type theory of higher-type functionals. It was only after giving an abstract characterization of the spaces obtained (through the construction of bases) that he realized that recursive definitions of types could be accommodated as well---and that the recursive definitions could incorporate function spaces as well. Though it was not the original intention to find semantics of the so-called untyped -calculus, such a semantics emerged along with many ways of interpreting a very large variety of languages. A large number of people have made essential contributions to the subsequent developments, and they have shown in particular that domain theory is not one monolithic theory, but that there are several different kinds of constructions giving classes of domains appropriate for different mixtures of constructs. The story is, in fact, far from finished even today. In this report we will only be able to touch on a few of the possibilities, but we give pointers to the literature. Also, we have attempted to explain the foundations in an elementary way---avoiding heavy prerequisites (such as category theory) but still maintaining some level of abstraction---with the hope that such an introduction will aid the reader in going further into the theory. The chapter is divided into seven sections. In the second section we introduce a simple class of ordered structures and discuss the idea of fixed points of continuous functions as meanings for recursive programs. In the third section we discuss computable functions and...
Inheritance As Implicit Coercion
- Information and Computation
, 1991
"... . We present a method for providing semantic interpretations for languages with a type system featuring inheritance polymorphism. Our approach is illustrated on an extension of the language Fun of Cardelli and Wegner, which we interpret via a translation into an extended polymorphic lambda calculus. ..."
Abstract
-
Cited by 104 (3 self)
- Add to MetaCart
. We present a method for providing semantic interpretations for languages with a type system featuring inheritance polymorphism. Our approach is illustrated on an extension of the language Fun of Cardelli and Wegner, which we interpret via a translation into an extended polymorphic lambda calculus. Our goal is to interpret inheritances in Fun via coercion functions which are definable in the target of the translation. Existing techniques in the theory of semantic domains can be then used to interpret the extended polymorphic lambda calculus, thus providing many models for the original language. This technique makes it possible to model a rich type discipline which includes parametric polymorphism and recursive types as well as inheritance. A central difficulty in providing interpretations for explicit type disciplines featuring inheritance in the sense discussed in this paper arises from the fact that programs can type-check in more than one way. Since interpretations follow the type...
Kripke-Style Models for Typed Lambda Calculus
- Annals of Pure and Applied Logic
, 1996
"... The semantics of typed lambda calculus is usually described using Henkin models, consisting of functions over some collection of sets, or concrete cartesian closed categories, which are essentially equivalent. We describe a more general class of Kripke-style models. In categorical terms, our Kripke ..."
Abstract
-
Cited by 42 (3 self)
- Add to MetaCart
The semantics of typed lambda calculus is usually described using Henkin models, consisting of functions over some collection of sets, or concrete cartesian closed categories, which are essentially equivalent. We describe a more general class of Kripke-style models. In categorical terms, our Kripke lambda models are cartesian closed subcategories of the presheaves over a poset. To those familiar with Kripke models of modal or intuitionistic logics, Kripke lambda models are likely to seem adequately \semantic." However, when viewed as cartesian closed categories, they do not have the property variously referred to as concreteness, well-pointed-ness, or having enough points. While the traditional lambda calculus proof system is not complete for Henkin models that may have empty types, we prove strong completeness for Kripke models. In fact, every set of equations that is closed under implication is the theory of a single Kripke model. We also develop some properties of logical relations ...
From semantics to rules: A machine assisted analysis
- Proceedings of CSL '93, LNCS 832
, 1999
"... this paper is similar to the one in [2]. In this paper they define a normalization function for simply typed ..."
Abstract
-
Cited by 29 (0 self)
- Add to MetaCart
this paper is similar to the one in [2]. In this paper they define a normalization function for simply typed
Developing Theories of Types and Computability via Realizability
, 2000
"... We investigate the development of theories of types and computability via realizability. ..."
Abstract
-
Cited by 18 (6 self)
- Add to MetaCart
We investigate the development of theories of types and computability via realizability.
Confluence of Untyped Lambda Calculus Via Simple Types
"... We present a new proof of confluence of the untyped lambda calculus by embedding untyped lambda terms into simply typed lambda terms. This embedding allows us to define a reduction on all lambda terms, whose transitive closure is the beta-reduction, using an auxiliary reduction and the beta-reductio ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
We present a new proof of confluence of the untyped lambda calculus by embedding untyped lambda terms into simply typed lambda terms. This embedding allows us to define a reduction on all lambda terms, whose transitive closure is the beta-reduction, using an auxiliary reduction and the beta-reduction on simply typed lambda terms. The confluence of the auxiliary reduction makes explicit the joining of the sets of redexes to be reduced. This embedding allows us to use the confluence of beta-reduction on simply typed lambda terms and thus prove the confluence of the reduction defined. As a consequence we obtain the confluence of beta-reduction in the untyped lambda calculus.
Relating first-order set theories, toposes and categories of classes
- In preparation
, 2006
"... This paper introduces Basic Intuitionistic Set Theory BIST, and investigates it as a first-order set-theory extending the internal logic of elementary toposes. Given an elementary topos, together with the extra structure of a directed structural system of inclusions (dssi) on the topos, a forcing-st ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
This paper introduces Basic Intuitionistic Set Theory BIST, and investigates it as a first-order set-theory extending the internal logic of elementary toposes. Given an elementary topos, together with the extra structure of a directed structural system of inclusions (dssi) on the topos, a forcing-style interpretation of the language of first-order set theory in the topos is given, which conservatively extends the internal logic of the topos. Since every topos is equivalent to one carrying a dssi, the language of first-order has a forcing interpretation in every elementary topos. We prove that the set theory BIST+ Coll (where Coll is the strong Collection axiom) is sound and complete relative to forcing interpretations in toposes with natural numbers object (nno). Furthermore, in the case that the structural system of inclusions is superdirected, the full Separation schema is modelled. We show that every cocomplete topos and every realizability topos can be endowed (up to equivalence) with such a superdirected structural system of inclusions. This provides a uniform explanation for why such “real-world ” toposes model Separation. A large part of the paper is devoted to an alternative notion of category-theoretic model for BIST, which, following the general approach of Joyal and Moerdijk’s Algebraic Set Theory, axiomatizes the structure possessed by categories of classes compatible with ∗Corresponding author. 1Previously, lecturer at Heriot-Watt University (2000–2001), and the IT University of
Partial categorical multi-combinators and church rosser theorems
, 1992
"... Abstract: Categorical Multi-Combinators form a rewriting system developed with the aim of providing efficient implementations of lazy functional languages. The core of the system of Categorical Multi-Combinators consists of only four rewriting laws with a very low pattern-matching complexity. This s ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Abstract: Categorical Multi-Combinators form a rewriting system developed with the aim of providing efficient implementations of lazy functional languages. The core of the system of Categorical Multi-Combinators consists of only four rewriting laws with a very low pattern-matching complexity. This system allows the equivalent of several βreductions to be performed at once, as functions form frames with all their arguments. Although this feature is convenient for most cases of function application it does not allow partially parameterised functions to fetch arguments. This paper presents Partial Categorical Multi-Combinators, a new rewriting system, which removes this drawback. Key Words: functional programming, categorical combinators, explicit substitutions. Category: SD.F.4.1, SD D.3.2

