Results 1  10
of
18
Correctness of Data Representations involving Heap Data Structures
 Science of Computer Programming
, 2003
"... While the semantics of local variables in programming languages is by now wellunderstood, the semantics of pointeraddressed heap variables is still an outstanding issue. In particular, the commonly assumed relational reasoning principles for data representations have not been validated in a se ..."
Abstract

Cited by 22 (7 self)
 Add to MetaCart
While the semantics of local variables in programming languages is by now wellunderstood, the semantics of pointeraddressed heap variables is still an outstanding issue. In particular, the commonly assumed relational reasoning principles for data representations have not been validated in a semantic model of heap variables. In this paper, we de ne a parametricity semantics for a Pascallike language with pointers and heap variables which gives such reasoning principles. It is found that the correspondences between data representations are not simply relations between states, but more intricate correspondences that also need to keep track of visible locations whose pointers can be stored and leaked.
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...
Using synthetic domain theory to prove operational properties of a polymorphic programming language based on strictness
 Manuscript
"... We present a simple and workable axiomatization of domain theory within intuitionistic set theory, in which predomains are (special) sets, and domains are algebras for a simple equational theory. We use the axioms to construct a relationally parametric settheoretic model for a compact but powerful ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
We present a simple and workable axiomatization of domain theory within intuitionistic set theory, in which predomains are (special) sets, and domains are algebras for a simple equational theory. We use the axioms to construct a relationally parametric settheoretic model for a compact but powerful polymorphic programming language, given by a novel extension of intuitionistic linear type theory based on strictness. By applying the model, we establish the fundamental operational properties of the language. 1.
Categorical and domain theoretic models of parametric polymorphism
, 2005
"... We present a domaintheoretic model of parametric polymorphism based on admissible per’s over a domaintheoretic model of the untyped lambda calculus. The model is shown to be a model of Abadi & Plotkin’s logic for parametricity, by the construction of an LAPLstructure as defined by the authors ..."
Abstract

Cited by 9 (6 self)
 Add to MetaCart
We present a domaintheoretic model of parametric polymorphism based on admissible per’s over a domaintheoretic model of the untyped lambda calculus. The model is shown to be a model of Abadi & Plotkin’s logic for parametricity, by the construction of an LAPLstructure as defined by the authors in [7, 5]. This construction gives formal proof of solutions to a large class of recursive domain equations, which we explicate. As an example of a computation in the model, we explicitly describe the natural numbers object obtained using parametricity. The theory of admissible per’s can be considered a domain theory for (impredicative) polymorphism. By studying various categories of admissible and chain complete per’s and their relations, we discover a picture very similar to that of domain theory. 1
Synthetic domain theory and models of linear Abadi & Plotkin logic
, 2005
"... Plotkin suggested using a polymorphic dual intuitionistic / linear type theory (PILLY) as a metalanguage for parametric polymorphism and recursion. In recent work the first two authors and R.L. Petersen have defined a notion of parametric LAPLstructure, which are models of PILLY, in which one can r ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
Plotkin suggested using a polymorphic dual intuitionistic / linear type theory (PILLY) as a metalanguage for parametric polymorphism and recursion. In recent work the first two authors and R.L. Petersen have defined a notion of parametric LAPLstructure, which are models of PILLY, in which one can reason using parametricity and, for example, solve a large class of domain equations, as suggested by Plotkin. In this paper we show how an interpretation of a strict version of Bierman, Pitts and Russo’s language Lily into synthetic domain theory presented by Simpson and Rosolini gives rise to a parametric LAPLstructure. This adds to the evidence that the notion of LAPLstructure is a general notion suitable for treating many different parametric models, and it provides formal proofs of consequences of parametricity expected to hold for the interpretation. Finally, we show how these results in combination with Rosolini and Simpson’s computational adequacy result can be used to prove consequences of parametricity for Lily. In particular we show that one can solve domain equations in Lily up to ground contextual equivalence. 1
The GirardReynolds isomorphism (second edition
 Theoretical Computer Science
, 2004
"... polymorphic lambda calculus, F2. Girard additionally proved a Representation Theorem: every function on natural numbers that can be proved total in secondorder intuitionistic predicate logic, P2, can be represented in F2. Reynolds additionally proved an Abstraction Theorem: every term in F2 satisfi ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
polymorphic lambda calculus, F2. Girard additionally proved a Representation Theorem: every function on natural numbers that can be proved total in secondorder intuitionistic predicate logic, P2, can be represented in F2. Reynolds additionally proved an Abstraction Theorem: every term in F2 satisfies a suitable notion of logical relation; and formulated a notion of parametricity satisfied by wellbehaved models. We observe that the essence of Girard’s result is a projection from P2 into F2, and that the essence of Reynolds’s result is an embedding of F2 into P2, and that the Reynolds embedding followed by the Girard projection is the identity. We show that the inductive naturals are exactly those values of type natural that satisfy Reynolds’s notion of parametricity, and as a consequence characterize situations in which the Girard projection followed by the Reynolds embedding is also the identity. An earlier version of this paper used a logic over untyped terms. This version uses a logic over typed term, similar to ones considered by Abadi and Plotkin and by Takeuti, which better clarifies the relationship between F2 and P2. This paper uses colour to enhance its presentation. If the link below is not blue, follow it for the colour version.
Relational Parametricity for Higher Kinds
"... Abstract. Reynolds ’ notion of relational parametricity has been extremely influential and well studied for polymorphic type theories such as System F. The extension of relational parametricity to higher kinded polymorphism, which allows quantification over type operators as well as types, has not b ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Abstract. Reynolds ’ notion of relational parametricity has been extremely influential and well studied for polymorphic type theories such as System F. The extension of relational parametricity to higher kinded polymorphism, which allows quantification over type operators as well as types, has not been as well studied. In this paper we give a model of relational parametricity for System F ω and investigate some of its consequences. 1
CATEGORYTHEORETIC MODELS OF LINEAR ABADI & PLOTKIN LOGIC
, 2008
"... This paper presents a sound and complete categorytheoretic notion of models for Linear Abadi & Plotkin Logic [Birkedal et al., 2006], a logic suitable for reasoning about parametricity in combination with recursion. A subclass of these called parametric LAPL structures can be seen as an axioma ..."
Abstract
 Add to MetaCart
This paper presents a sound and complete categorytheoretic notion of models for Linear Abadi & Plotkin Logic [Birkedal et al., 2006], a logic suitable for reasoning about parametricity in combination with recursion. A subclass of these called parametric LAPL structures can be seen as an axiomatization of domain theoretic models of parametric polymorphism, and we show how to solve general (nested) recursive domain equations in these. Parametric LAPL structures constitute a general notion of model of parametricity in a setting with recursion. In future papers we will demonstrate this by showing how many different models of parametricity and recursion give rise to parametric LAPL structures, including Simpson and Rosolini’s set theoretic models [Rosolini and Simpson, 2004], a syntactic model based on Lily [Pitts, 2000, Bierman et al., 2000] and a model based on admissible pers over a reflexive domain [Birkedal et al., 2007].
Polymorphism, Objects and Abstract Types
, 1998
"... Editor's note: This month's column, by Peter W. O'Hearn, describes the semantics of data abstraction and its importance in accounting for local state. ..."
Abstract
 Add to MetaCart
Editor's note: This month's column, by Peter W. O'Hearn, describes the semantics of data abstraction and its importance in accounting for local state.
Abstract
"... Parametric polymorphism constrains the behavior of pure functional programs in a way that allows the derivation of interesting theorems about them solely from their types, i.e., virtually for free. The formal background of such ‘free theorems ’ is well developed for extensions of the GirardReynolds ..."
Abstract
 Add to MetaCart
Parametric polymorphism constrains the behavior of pure functional programs in a way that allows the derivation of interesting theorems about them solely from their types, i.e., virtually for free. The formal background of such ‘free theorems ’ is well developed for extensions of the GirardReynolds polymorphic lambda calculus by algebraic datatypes and general recursion, provided the resulting calculus is endowed with either a purely strict or a purely nonstrict semantics. But modern functional languages like Clean and Haskell, while using nonstrict evaluation by default, provide means to enforce strict evaluation of subcomputations at will, and thus give the advanced programmer explicit control over the evaluation order. Such selective strictness, of course, does not remain without semantic consequences, and indeed breaks standard parametricity results. This paper develops an operational semantics for a core calculus representing all the language features emphasized above. Its main achievement is the characterization of observational equivalence with respect to this operational semantics by a carefully constructed logical relation. This establishes the formal basis for new parametricity results, as illustrated by several example applications including the first complete correctness proof for short cut fusion in the presence of selective strictness.