## Relational interpretations of recursive types in an operational setting (1997)

### Cached

### Download Links

- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.itu.dk]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- DBLP

### Other Repositories/Bibliography

Venue: | Information and Computation |

Citations: | 34 - 3 self |

### BibTeX

@INPROCEEDINGS{Birkedal97relationalinterpretations,

author = {Lars Birkedal and Robert Harper},

title = {Relational interpretations of recursive types in an operational setting},

booktitle = {Information and Computation},

year = {1997},

pages = {458--490},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

Submitted for publication to Information and Computation. A summary of this paper appeared in TACS '97.

### Citations

1562 | The Definition of Standard ML
- Miller, Tofte, et al.
- 1990
(Show Context)
Citation Context ...ons for an ML-like language L with recursive functions and one recursive type. The operational semantics of the language specifies an "eager" or "call-byvalue " evaluation strategy=-=, as in Standard ML [17]-=-. We make no restrictions on the occurrence of the recursively-defined type in its definition --- both positive and negative occurrences are permitted. This complicates the construction of a relationa... |

1065 | Introduction to Lattices and Order - Davey, Priestley - 2002 |

620 | Compiling with Continuations - Appel - 1992 |

605 | The Definition of Standard ML (Revised - Milner, Tofte, et al. - 1997 |

397 |
LCF considered as a programming language
- Plotkin
- 1977
(Show Context)
Citation Context ...d a proof of the minimal invariant property. It turns out that for the language considered here experimental equivalence coincides with contextual equivalence (in the sense of Morris [20] and Plotkin =-=[24]-=-) and with bisimulation equivalence (in the sense of Howe [13] and Pitts [21]). So the choice of relation is a matter of technique, rather than of semantics. It would be interesting to see whether the... |

299 | Definitional interpreters for higher-order programming languages - Reynolds - 1972 |

267 |
Semantics of Programming Languages: Structures and Techniques. Foundations of Computing
- Gunter
- 1992
(Show Context)
Citation Context ...efine some abbreviations of expressions already in the language. This is opposed to introducing new labelled expressions and new notions of reduction for labelled expressions as, e.g., done by Gunter =-=[11]-=-. We will only consider contexts involving parameters of types1 *s2 . We write Cfpg for such a context whose parameters are included in the list p. Given an k-tuple n = (n 1 ; : : : ; n k ) of natural... |

238 |
Interprétation fonctionnelle et elimination des coupures de l’arithmétique d’ordre supérieur. Thèse d’état, Université de Paris 7
- Girard
- 1972
(Show Context)
Citation Context ...retation. The construction of relational interpretations of type systems often raises interesting technical problems. For example, Girard's proof of strong normalization for the secondorders-calculus =-=[10]-=- may be understood as a relational interpretation for a type system with impredicative type quantification. In this paper we are concerned with the construction of relational interpretations for an ML... |

217 | CML: A higher-order concurrent language - Reppy - 1991 |

171 | Call-by-name, call-by-value, and the lambda calculus - Plotkin - 1975 |

156 |
Revised report on the algorithmic language Scheme
- Clinger, Rees
- 1991
(Show Context)
Citation Context ... minimal invariance. One unfortunate consequence of the use of experimental equivalence is that our proof of correctness for cps conversion does not easily extend to control operators such as call/cc =-=[3,12]. The reas-=-on is that we rely on a "uniformity" property of the evaluation relation which states that evaluation steps are parametric in the evaluation context --- if Efeg 7! Efe 0 g, then E 0 feg 7! E... |

154 | Dynamic typing in a statically typed language
- Abadi, Cardelli, et al.
- 1991
(Show Context)
Citation Context ... constructors defined in the previous section. Our construction follows along the lines of Pitts [22]. Definition 69. For alls, define [[ ]] : Radm ae ! Radmsby induction onsas follows. [[0]]R = R 0 [=-=[1]-=-]R = R 1 [[ae]]R = R [[ 1 \Thetas2 ]]R = [[ 1 ]]R \Theta [[ 2 ]]R [[ 1 +s2 ]]R = [[ 1 ]]R + [[ 2 ]]R [[ 1 *s2 ]]R = [[ 1 ]]R * [[ 2 ]]R Note that the operation [[ ]] is well-defined by induction onsan... |

141 |
Type systems for programming languages
- Mitchell
- 1990
(Show Context)
Citation Context ...n used in some compilers for functional languages. 1 Introduction The interpretation of types as relations is a fundamental technique in the study of type systems (see, for example, Mitchell's survey =-=[18]-=- and monograph [19] for examples and references to the literature). The general idea is to associate to each type a relation over a suitable value space in such a way that welltyped terms are related ... |

128 |
Lambda Calculus Models of Programming Languages
- Morris
- 1968
(Show Context)
Citation Context ...perational equivalence classes of closed terms. The choice of operational equivalence is guided by the requirements of the proof. Candidates for operational equivalence include contextual equivalence =-=[20,23]-=- (coincidence of evaluation in all program contexts), bisimilarity [13,21] (existence of a correspondence between evaluation steps), and experimental equivalence [15] (coincidence of closed instances ... |

102 | Compiling With Types - Morrisett - 1995 |

100 | Lambda calculus schemata
- Fischer
- 1972
(Show Context)
Citation Context ... the application to the correctness of program transformations used in compilers of functional languages. In particular, we consider the correctness of the translation into continuation-passing style =-=[6,23]-=-, called the cps transform. The proof relies on the construction of a relational interpretation of L that establishes a correspondence between the evaluation of a program and its continuation-passing ... |

99 | Relational properties of domains
- Pitts
- 1996
(Show Context)
Citation Context ...t the interpretation is defined for a specific model, and it is not clear to what extent the result applies to other models of the language. The question of generality was recently addressed by Pitts =-=[22]-=-, who exploited Freyd's analysis of solutions of recursive domain equations [8,7,9] to construct relational interpretations over domain models of recursive types. In particular, Pitts showed that the ... |

95 | Equality in lazy computation systems
- Howe
- 1989
(Show Context)
Citation Context ...equivalence is guided by the requirements of the proof. Candidates for operational equivalence include contextual equivalence [20,23] (coincidence of evaluation in all program contexts), bisimilarity =-=[13,21]-=- (existence of a correspondence between evaluation steps), and experimental equivalence [15] (coincidence of closed instances in all evaluation contexts). It turns out that all three notions coincide ... |

93 | Typing first-class continuations in ML
- Duba, Harper, et al.
- 1987
(Show Context)
Citation Context ... R 1 2 Rel 1 and all R 2 2 Radm 2 , R 1 * R 2 2 Radm 1 *2 . Proof The strictness condition is straightforward. For completeness, assume 8mm 0 2 I 2 P cof (N jpj+jqj ) : (CfF m g; C 0 fF 0 m 0 g) 2 R: =-=(4)-=- One can show that there are two cases to consider. Case I: CfF! g * C 0 fF 0 ! g * Easy. Case II: CfF! g 7! v and C 0 fF 0 ! g 7! v 0 . By two applications of Lemma 19, there exist V fp 1 g and V 0 f... |

93 |
The De nition of Standard ML
- Milner, Tofte, et al.
- 1990
(Show Context)
Citation Context ...tions for an ML-like language L with recursive functions and one recursive type. The operational semantics of the language speci es an \eager" or \call-byvalue" evaluation strategy, as in Standard ML =-=[17]-=-. We make no restrictions on the occurrence of the recursively-de ned type in its de nition | both positive and negative occurrences are permitted. This complicates the construction of a relational in... |

92 |
Algebraically complete categories
- Freyd
- 1990
(Show Context)
Citation Context ...t extent the result applies to other models of the language. The question of generality was recently addressed by Pitts [22], who exploited Freyd's analysis of solutions of recursive domain equations =-=[8,7,9]-=- to construct relational interpretations over domain models of recursive types. In particular, Pitts showed that the existence of a relational interpretation can, under very general conditions, be red... |

80 | The Revised4 Report on the Algorithmic Language Scheme
- Clinger, Rees
- 1991
(Show Context)
Citation Context ... minimal invariance. One unfortunate consequence of the use of experimental equivalence is that our proof of correctness for cps conversion does not easily extend to control operators such as call/cc =-=[3,12]-=-. The reason is that we rely on a \uniformity" property of the evaluation relation which states that evaluation steps are parametric in the evaluation context | if Efeg 7! Efe 0 g,thenE 0 feg 7! E 0 f... |

75 | Operationally-based theories of program equivalence
- Pitts
- 1997
(Show Context)
Citation Context ...equivalence is guided by the requirements of the proof. Candidates for operational equivalence include contextual equivalence [20,23] (coincidence of evaluation in all program contexts), bisimilarity =-=[13,21]-=- (existence of a correspondence between evaluation steps), and experimental equivalence [15] (coincidence of closed instances in all evaluation contexts). It turns out that all three notions coincide ... |

68 |
Recursive types reduced to induct,ive types
- Freyd
- 1990
(Show Context)
Citation Context ...t extent the result applies to other models of the language. The question of generality was recently addressed by Pitts [22], who exploited Freyd's analysis of solutions of recursive domain equations =-=[8,7,9]-=- to construct relational interpretations over domain models of recursive types. In particular, Pitts showed that the existence of a relational interpretation can, under very general conditions, be red... |

67 | Continuation semantics in typed lambda calculi (summary
- Meyer, Wand
- 1985
(Show Context)
Citation Context ...guage, L ae , is the variant of L obtained by replacing the single recursive type ae by another recursive type ae obtained from ae by a transformation on types similar to that given by Meyer and Wand =-=[16]-=-. We let Type ae denote the set of type expressions of L ae , that is Type ae = Type. The set of target type expressions, denoted Type ae , is defined exactly as Type, but with ae for ae. Below we def... |

62 |
Remarks on algebraically compact categories
- Freyd
- 1991
(Show Context)
Citation Context ...t extent the result applies to other models of the language. The question of generality was recently addressed by Pitts [22], who exploited Freyd's analysis of solutions of recursive domain equations =-=[8,7,9]-=- to construct relational interpretations over domain models of recursive types. In particular, Pitts showed that the existence of a relational interpretation can, under very general conditions, be red... |

49 | Controlling Effects
- Filinski
- 1996
(Show Context)
Citation Context ...re important directions for further research. The treatment of cps conversion given here invites generalization to an arbitrary syntactically-definable monad for the language. Filinski's dissertation =-=[5]-=- is a first step towards a general theory of representation of computational effects. Filinski's work suggests that one could give a fairly general correctness proof along the lines suggested here for... |

46 |
On the relation between direct and continuation semantics
- Reynolds
- 1974
(Show Context)
Citation Context ... construction of a relational interpretation of L that establishes a correspondence between the evaluation of a program and its continuation-passing transform. The result generalizes Reynolds's proof =-=[25]-=- of the relation between direct and continuation semantics for an untyped language to the case of a typed language with a recursive type (which could be taken to be the recursive type corresponding to... |

40 |
Foundations for Programming Languages. Foundations of Computing series
- Mitchell
- 1996
(Show Context)
Citation Context ...ilers for functional languages. 1 Introduction The interpretation of types as relations is a fundamental technique in the study of type systems (see, for example, Mitchell's survey [18] and monograph =-=[19]-=- for examples and references to the literature). The general idea is to associate to each type a relation over a suitable value space in such a way that welltyped terms are related appropriately by th... |

36 | From operational semantics to domain theory
- Mason, Smith, et al.
- 1996
(Show Context)
Citation Context ...include contextual equivalence [20,23] (coincidence of evaluation in all program contexts), bisimilarity [13,21] (existence of a correspondence between evaluation steps), and experimental equivalence =-=[15]-=- (coincidence of closed instances in all evaluation contexts). It turns out that all three notions coincide for the language L, so our decision to work with experimental equivalence is entirely pragma... |

31 | Logical Relations and the Typed -Calculus - Statman - 1985 |

11 | Towards a theory of type structure. Pages 408–425 of: Colloque sur la Programmation - Reynolds - 1974 |

7 |
Typing rst-class continuations in ML
- Duba, Harper, et al.
- 1991
(Show Context)
Citation Context ...emma 102. For all R1 2 Rel 1 and all R2 2 Radm 2, R1 *R2 2 Radm 1* 2. Proof The strictness condition is straightforward. For completeness, assume 8mm 0 2 I 2Pcof(N jpj+jqj ):(CfFmg�C 0 fF 0 m0g) 2 R: =-=(4)-=- One can show that there are two cases to consider. Case I: CfF!g *^C 0 fF 0 !g*Easy. Case II: CfF!g 7! v and C 0 fF 0 !g 7! v 0 .Bytwo applications of Lemma 19, there exist V fp 1g and V 0 fq 1g such... |

4 |
Relational interpretations of recursive types
- Birkedal, Harper
- 1999
(Show Context)
Citation Context ...constructed relations can be seen to provide a notion of equality of terms --- and will therefore be called "relations for equality" --- and can in fact be used to reason about contextual eq=-=uivalence [2]-=-. However, we will not pursue that direction in this extended abstract. Instead we shall view these two sections as providing the necessary understanding for constructing a relational interpretation, ... |

4 |
Controlling E ects
- Filinski
- 1996
(Show Context)
Citation Context ...s are important directions for further research. The treatment ofcpsconversion given here invites generalization to an arbitrary syntactically-de nable monad for the language. Filinski's dissertation =-=[5]-=- is a rst step towards a general theory of representation of computational e ects. Filinski's work suggests that one could give a fairly general correctness proof along the lines suggested here for a ... |

3 | From Operational Semantics to Domain Theory. Information and Computation - Mason, Smith, et al. - 1995 |

3 | Domains for Denotational Semantics. Pages 577-- 613 of - Scott - 1982 |

2 | Implementing Typed Intermediate Languages. Pages 313--323 of - Shao, League - 1998 |

2 | RABBIT: A Compiler for SCHEME. Tech. rept. Memo 474 - Steele - 1978 |

1 |
Relational reasoning about contexts. Unpublished manuscript
- Lassen
(Show Context)
Citation Context ... primitive "run-time type checking" operations such as testing whether or not a value represents a function. (Lassen considers a similar language for which a minimal invariant property is es=-=tablished [14]-=-.) The account given here generalizes their work to the case of a typed language with a recursive type. Their run-time type checking primitives emerge as compositions of recursive unrolling and simple... |

1 |
Recursive types reduced to inductivetypes
- Freyd
- 1990
(Show Context)
Citation Context ...l a ects the result. The latter question was recently addressed by Pitts [17] who showed that Freyd's universal characterization of the solution of a domain equation by the minimal invariant property =-=[6, 5, 7]-=- is su cient tovalidate the construction of a wide class of relational interpretations of recursive types. The starting point for the present work is the observation that for a su ciently rich languag... |