Results 1  10
of
25
Formal Parametric Polymorphism
 THEORETICAL COMPUTER SCIENCE
, 1993
"... A polymorphic function is parametric if its behavior does not depend on the type at which it is instantiated. Starting with Reynolds's work, the study of parametricity is typically semantic. In this paper, we develop a syntactic approach to parametricity, and a formal system that embodies this ..."
Abstract

Cited by 125 (6 self)
 Add to MetaCart
A polymorphic function is parametric if its behavior does not depend on the type at which it is instantiated. Starting with Reynolds's work, the study of parametricity is typically semantic. In this paper, we develop a syntactic approach to parametricity, and a formal system that embodies this approach, called system R . Girard's system F deals with terms and types; R is an extension of F that deals also with relations between types. In R , it is possible to derive theorems about functions from their types, or "theorems for free", as Wadler calls them. An easy "theorem for free" asserts that the type "(X)XBool contains only constant functions; this is not provable in F. There are many harder and more substantial examples. Various metatheorems can also be obtained, such as a syntactic version of Reynolds's abstraction theorem.
Intuitionistic Model Constructions and Normalization Proofs
, 1998
"... We investigate semantical normalization proofs for typed combinatory logic and weak calculus. One builds a model and a function `quote' which inverts the interpretation function. A normalization function is then obtained by composing quote with the interpretation function. Our models are just ..."
Abstract

Cited by 44 (7 self)
 Add to MetaCart
We investigate semantical normalization proofs for typed combinatory logic and weak calculus. One builds a model and a function `quote' which inverts the interpretation function. A normalization function is then obtained by composing quote with the interpretation function. Our models are just like the intended model, except that the function space includes a syntactic component as well as a semantic one. We call this a `glued' model because of its similarity with the glueing construction in category theory. Other basic type constructors are interpreted as in the intended model. In this way we can also treat inductively defined types such as natural numbers and Brouwer ordinals. We also discuss how to formalize terms, and show how one model construction can be used to yield normalization proofs for two different typed calculi  one with explicit and one with implicit substitution. The proofs are formalized using MartinLof's type theory as a meta language and mechanized using the A...
Kripke Logical Relations and PCF
 Information and Computation
, 1995
"... Sieber has described a model of PCF consisting of continuous functions that are invariant under certain (finitary) logical relations, and shown that it is fully abstract for closed terms of up to thirdorder types. We show that one may achieve full abstraction at all types using a form of "Krip ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
Sieber has described a model of PCF consisting of continuous functions that are invariant under certain (finitary) logical relations, and shown that it is fully abstract for closed terms of up to thirdorder types. We show that one may achieve full abstraction at all types using a form of "Kripke logical relations" introduced by Jung and Tiuryn to characterize definability. To appear in Information and Computation. (Accepted, October 1994) Supported by NSF grant CCR92110829. 1 Introduction The nature of sequential functional computation has fascinated computer scientists ever since Scott remarked on a curious incompleteness phenomenon when he introduced LCF (Logic for Computable Functions) and its continuous function model in 1969 (Scott, 1993). Scott noted that although the functionals definable by terms in PCFthe term language of LCFadmitted a sequential evaluation strategy, there were functions in the model that seemed to require a parallel evaluation strategy. "Sequen...
Logical Relations for Monadic Types
, 2002
"... Logical relations and their generalizations are a fundamental tool in proving properties of lambdacalculi, e.g., yielding sound principles for observational equivalence. We propose a natural notion of logical relations able to deal with the monadic types of Moggi's computational lambdacal ..."
Abstract

Cited by 19 (7 self)
 Add to MetaCart
Logical relations and their generalizations are a fundamental tool in proving properties of lambdacalculi, e.g., yielding sound principles for observational equivalence. We propose a natural notion of logical relations able to deal with the monadic types of Moggi's computational lambdacalculus. The treatment is categorical, and is based on notions of subsconing and distributivity laws for monads. Our approach has a number of interesting applications, including cases for lambdacalculi with nondeterminism (where being in logical relation means being bisimilar), dynamic name creation, and probabilistic systems.
Reflexive Graphs and Parametric Polymorphism
, 1993
"... this paper is to understand why that is a parametric categorical model. In [10] Ma and Reynolds propose a parametricity hypothesis for a functor between categorical models of polymorphism which essentially requires that there is an extension of (a certain form of) an identity relation functor which ..."
Abstract

Cited by 18 (0 self)
 Add to MetaCart
this paper is to understand why that is a parametric categorical model. In [10] Ma and Reynolds propose a parametricity hypothesis for a functor between categorical models of polymorphism which essentially requires that there is an extension of (a certain form of) an identity relation functor which preserve the model structure. There is no mention in the paper of any case when the parametricity hypothesis is satified, nor if there is a canonical completion of a category to one which satisfies the hypothesis. We shall suggest how the construction of a PLcategory of relations on a given category presented in [10] can be viewed as a "parametric completion". We shall also follow the suggestion of Ma in [9] that subtyping is a kind of parametricity requirement and show how to fit subtyping in the same setup. The basic idea is to use reflexive graphs of categories as in [12]. We shall employ their construction to present a kind of parametric completion of a given category. We also give a different presentation of the RELconstruction in [10], and use it to discuss some examples. We show in particular that the RELconstruction acts (essentially) in the same way on a category and on its completion. Hence it follows that the identity functor on the completion satisfies the parametricity hypothesis. Discussions with Eugenio Moggi, Peter O'Hearn, Edmund Robinson, and Thomas Streicher were very useful. Paul Taylor's beutiful diagram macros were used for typesetting all the diagrams in the text. 1 Graphs of categories
An Axiomatic Approach to Binary Logical Relations with Applications to Data Refinement
 Proc. TACS'97, Springer LNCS 1281
, 1997
"... We introduce an axiomatic approach to logical relations and data refinement. We consider a programming language and the monad on the category of small categories generated by it. We identify abstract data types for the language with sketches for the associated monad, and define an axiomatic notion o ..."
Abstract

Cited by 18 (1 self)
 Add to MetaCart
We introduce an axiomatic approach to logical relations and data refinement. We consider a programming language and the monad on the category of small categories generated by it. We identify abstract data types for the language with sketches for the associated monad, and define an axiomatic notion of "relation" between models of such a sketch in a semantic category. We then prove three results: (i) such models lift to the whole language together with the sketch; (ii) any such relation satisfies a soundness condition, and (iii) such relations compose. We do this for both equality of data representations and for an ordered version. Finally, we compare our formulation of data refinement with that of Hoare. This work has been done with the support of the MITI Cooperative Architecture Project. This author also acknowledges the support of Kakenhi. y This author achnowledges the support of the MITI Cooperative Architecture Project. z This author acknowledges the support of EPSRC grant...
Lax Logical Relations
 In 27th Intl. Colloq. on Automata, Languages and Programming, volume 1853 of LNCS
, 2000
"... Lax logical relations are a categorical generalisation of logical relations; though they preserve product types, they need not preserve exponential types. But, like logical relations, they are preserved by the meanings of all lambdacalculus terms. We show that lax logical relations coincide with th ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
Lax logical relations are a categorical generalisation of logical relations; though they preserve product types, they need not preserve exponential types. But, like logical relations, they are preserved by the meanings of all lambdacalculus terms. We show that lax logical relations coincide with the correspondences of Schoett, the algebraic relations of Mitchell and the prelogical relations of Honsell and Sannella on Henkin models, but also generalise naturally to models in cartesian closed categories and to richer languages.
Parametricity as a Notion of Uniformity in Reflexive Graphs
, 2002
"... data types embody uniformity in the form of information hiding. Information hiding enforces the uniform treatment of those entities that dier only on hidden information. ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
data types embody uniformity in the form of information hiding. Information hiding enforces the uniform treatment of those entities that dier only on hidden information.