Results 1  10
of
26
Programming with Intersection Types and Bounded Polymorphism
, 1991
"... representing the official policies, either expressed or implied, of the U.S. Government. ..."
Abstract

Cited by 66 (4 self)
 Add to MetaCart
representing the official policies, either expressed or implied, of the U.S. Government.
Types, Abstraction, and Parametric Polymorphism, Part 2
, 1991
"... The concept of relations over sets is generalized to relations over an arbitrary category, and used to investigate the abstraction (or logicalrelations) theorem, the identity extension lemma, and parametric polymorphism, for Cartesianclosedcategory models of the simply typed lambda calculus and P ..."
Abstract

Cited by 53 (1 self)
 Add to MetaCart
The concept of relations over sets is generalized to relations over an arbitrary category, and used to investigate the abstraction (or logicalrelations) theorem, the identity extension lemma, and parametric polymorphism, for Cartesianclosedcategory models of the simply typed lambda calculus and PLcategory models of the polymorphic typed lambda calculus. Treatments of Kripke relations and of complete relations on domains are included.
HasCASL: Towards Integrated Specification and Development of Functional Programs
, 2002
"... The development of programs in modern functional languages such as Haskell calls for a widespectrum specification formalism that supports the type system of such languages, in particular higher order types, type constructors, and parametric polymorphism, and contains a functional language as an exe ..."
Abstract

Cited by 25 (11 self)
 Add to MetaCart
The development of programs in modern functional languages such as Haskell calls for a widespectrum specification formalism that supports the type system of such languages, in particular higher order types, type constructors, and parametric polymorphism, and contains a functional language as an executable subset in order to facilitate rapid prototyping. We lay out the design of HasCasl, a higher order extension of the algebraic specification language Casl that is geared towards precisely this purpose. Its semantics is tuned to allow program development by specification refinement, while at the same time staying close to the settheoretic semantics of first order Casl. The number of primitive concepts in the logic has been kept as small as possible; we demonstrate how various extensions to the logic, in particular general recursion, can be formulated within the language itself.
The Discrete Objects in the Effective Topos
 Proc. London Math. Soc
, 1990
"... The original aim of this paper was to give a rather quick and undemanding proof that the effective topos contains two nontrivial small (i.e. internal) full subcategories which are closed under all small limits in the topos (and hence in particular are internally complete). The interest in such subc ..."
Abstract

Cited by 25 (6 self)
 Add to MetaCart
The original aim of this paper was to give a rather quick and undemanding proof that the effective topos contains two nontrivial small (i.e. internal) full subcategories which are closed under all small limits in the topos (and hence in particular are internally complete). The interest in such subcategories arises from
Notes on Sconing and Relators
, 1993
"... This paper describes a semantics of typed lambda calculi based on relations. The main mathematical tool is a categorytheoretic method of sconing, also called glueing or Freyd covers. Its correspondence to logical relations is also examined. 1 Introduction Many modern programming languages feature ..."
Abstract

Cited by 24 (0 self)
 Add to MetaCart
This paper describes a semantics of typed lambda calculi based on relations. The main mathematical tool is a categorytheoretic method of sconing, also called glueing or Freyd covers. Its correspondence to logical relations is also examined. 1 Introduction Many modern programming languages feature rather sophisticated typing mechanisms. In particular, languages such as ML include polymorphic data types, which allow considerable programming flexibility. Several notions of polymorphism were introduced into computer science by Strachey [Str67], among them the important notion of parametric polymorphism. Strachey's intuitive definition is that a polymorphic function is parametric if it has a uniformly given algorithm in all types, that is, if the function's behavior is independent of the type at which the function is instantiated. Reynolds [Rey83] proposed a mathematical definition of parametric polymorphic functions by means of invariance with respect to certain relations induced by typ...
A CategoryTheoretic Account of Program Modules
 Mathematical Structures in Computer Science
, 1994
"... The typetheoretic explanation of modules proposed to date (for programming languages like ML) is unsatisfactory, because it does not capture that evaluation of typeexpressions is independent from evaluation of programexpressions. We propose a new explanation based on \programming languages as inde ..."
Abstract

Cited by 23 (6 self)
 Add to MetaCart
The typetheoretic explanation of modules proposed to date (for programming languages like ML) is unsatisfactory, because it does not capture that evaluation of typeexpressions is independent from evaluation of programexpressions. We propose a new explanation based on \programming languages as indexed categories" and illustrates how ML can be extended to support higher order modules, by developing a categorytheoretic semantics for a calculus of modules with dependent types. The paper outlines also a methodology, which may lead to a modular approach in the study of programming languages. Introduction The addition of module facilities to programming languages is motivated by the need to provide a better environment for the development and maintenance of large programs. Nowadays many programming languages include such facilities. Throughout the paper Standard ML (see [Mac85, HMM86, MTH90]) is taken as representative for these languages. The implementation of module facilities has been ...
On an interpretation of second order quantification in first order intuitionistic propositional logic
 JOURNAL OF SYMBOLIC LOGIC, 57: 33 { 52
, 1992
"... We prove the following surprising property of Heyting's intuitionistic propositional calculus, IpC. Consider the collection of formulas, , built up from propositional variables (p; q; r; : ::) and falsity (?) using conjunction (^), disjunction (_) and implication (!). Write ` to indicate that such a ..."
Abstract

Cited by 23 (0 self)
 Add to MetaCart
We prove the following surprising property of Heyting's intuitionistic propositional calculus, IpC. Consider the collection of formulas, , built up from propositional variables (p; q; r; : ::) and falsity (?) using conjunction (^), disjunction (_) and implication (!). Write ` to indicate that such a formula is intuitionistically valid. We show that for each variable p and formula there exists a formula Ap (e ectively computable from), containing only variables not equal to p which occur in, and such that for all formulas not involving p, ` ! Ap if and only if ` !. Consequently quanti cation over propositional variables can be modelled in IpC, and there is an interpretation of the second order propositional calculus, IpC2, in IpC which restricts to the identity on rst order propositions. An immediate corollary is the strengthening of the usual Interpolation Theorem for IpC to the statement that there are least and greatest interpolant formulas for any given pair of formulas. The result also has a number of interesting consequences for the algebraic counterpart of IpC, the theory of Heyting algebras. In particular we show that a model of IpC² can be constructed whose algebra of truthvalues is equal to any given Heyting algebra.
On functors expressible in the polymorphic typed lambda calculus
 Logical Foundations of Functional Programming
, 1990
"... This is a preprint of a paper that has been submitted to Information and Computation. ..."
Abstract

Cited by 16 (1 self)
 Add to MetaCart
This is a preprint of a paper that has been submitted to Information and Computation.
Modified Realizability Toposes and Strong Normalization Proofs (Extended Abstract)
 Typed Lambda Calculi and Applications, LNCS 664
, 1993
"... ) 1 J. M. E. Hyland 2 C.H. L. Ong 3 University of Cambridge, England Abstract This paper is motivated by the discovery that an appropriate quotient SN 3 of the strongly normalising untyped 3terms (where 3 is just a formal constant) forms a partial applicative structure with the inherent appl ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
) 1 J. M. E. Hyland 2 C.H. L. Ong 3 University of Cambridge, England Abstract This paper is motivated by the discovery that an appropriate quotient SN 3 of the strongly normalising untyped 3terms (where 3 is just a formal constant) forms a partial applicative structure with the inherent application operation. The quotient structure satisfies all but one of the axioms of a partial combinatory algebra (pca). We call such partial applicative structures conditionally partial combinatory algebras (cpca). Remarkably, an arbitrary rightabsorptive cpca gives rise to a tripos provided the underlying intuitionistic predicate logic is given an interpretation in the style of Kreisel's modified realizability, as opposed to the standard Kleenestyle realizability. Starting from an arbitrary rightabsorptive cpca U , the tripostotopos construction due to Hyland et al. can then be carried out to build a modified realizability topos TOPm (U ) of nonstandard sets equipped with an equali...
Normal Forms and CutFree Proofs as Natural Transformations
 in : Logic From Computer Science, Mathematical Science Research Institute Publications 21
, 1992
"... What equations can we guarantee that simple functional programs must satisfy, irrespective of their obvious defining equations? Equivalently, what nontrivial identifications must hold between lambda terms, thoughtof as encoding appropriate natural deduction proofs ? We show that the usual syntax g ..."
Abstract

Cited by 12 (4 self)
 Add to MetaCart
What equations can we guarantee that simple functional programs must satisfy, irrespective of their obvious defining equations? Equivalently, what nontrivial identifications must hold between lambda terms, thoughtof as encoding appropriate natural deduction proofs ? We show that the usual syntax guarantees that certain naturality equations from category theory are necessarily provable. At the same time, our categorical approach addresses an equational meaning of cutelimination and asymmetrical interpretations of cutfree proofs. This viewpoint is connected to Reynolds' relational interpretation of parametricity ([27], [2]), and to the KellyLambekMac LaneMints approach to coherence problems in category theory. 1 Introduction In the past several years, there has been renewed interest and research into the interconnections of proof theory, typed lambda calculus (as a functional programming paradigm) and category theory. Some of these connections can be surprisingly subtle. Here we a...