## Subtyping and Parametricity (1993)

### Cached

### Download Links

- [www.dcs.ed.ac.uk]
- [www.research.digital.com]
- [research.microsoft.com]
- [homepages.inf.ed.ac.uk]
- [www.dcs.ed.ac.uk]
- [www.dcs.ed.ac.uk]
- DBLP

### Other Repositories/Bibliography

Citations: | 12 - 2 self |

### BibTeX

@MISC{Plotkin93subtypingand,

author = {Gordon Plotkin and Luca Cardelli},

title = {Subtyping and Parametricity},

year = {1993}

}

### Years of Citing Articles

### OpenURL

### Abstract

In this paper we study the interaction of subtyping and parametricity. We describe a logic for a programming language with parametric polymorphism and subtyping. The logic supports the formal definition and use of relational parametricity. We give two models for it, and compare it with other formal systems for the same language. In particular, we examine the "Penn interpretation" of subtyping as implicit coercion. Without subtyping, parametricity yields, for example, an encoding of abstract types and of initial algebras, with the corresponding proof principles of simulation and induction. With subtyping, we obtain partially abstract types and certain initial order-sorted algebras, and may derive proof principles for them. 1 Introduction A function is polymorphic if it works on inputs of several types. We may distinguish various notions of polymorphism, particularly parametric polymorphism (e.g. [Rey83]) and subtype polymorphism (e.g. [CW85]). These may exist in isolation, as in ML [MT...

### Citations

1571 | The Definition of Standard ML
- Milner, Harper
- 1990
(Show Context)
Citation Context ...f several types. We may distinguish various notions of polymorphism, particularly parametric polymorphism (e.g. [Rey83]) and subtype polymorphism (e.g. [CW85]). These may exist in isolation, as in ML =-=[MTH90]-=- or in Amber [Car86], but they can also interact, with useful results. For example, a theory of object-oriented programming has been based on a certain kind of bounded polymorphism (e.g. [CHC90, Bru93... |

763 | On understanding types, data abstraction, and polymorphism
- Cardelli, Wegner
- 1985
(Show Context)
Citation Context ... function is polymorphic if it works on inputs of several types. We may distinguish various notions of polymorphism, particularly parametric polymorphism (e.g. [Rey83]) and subtype polymorphism (e.g. =-=[CW85]-=-). These may exist in isolation, as in ML [MTH90] or in Amber [Car86], but they can also interact, with useful results. For example, a theory of object-oriented programming has been based on a certain... |

292 |
Abstract types have existential type
- Mitchell, Plotkin
- 1988
(Show Context)
Citation Context ...ows that the type of move is isomorphic to (Int × Int) → (Int × Int), and hence can indeed contain a genuine move function. 5.2 Partially abstract types Just as existential types model abstract types =-=[MP85]-=-, bounded existential types model a corresponding programming construct: partially abstract types [CW85]. A partially abstract type is a type whose representation is left unspecified, but whose proper... |

243 | Inheritance is not subtyping - Cook, Hill, et al. - 1990 |

240 |
Interprétation Fonctionnelle et Élimination des Coupures de L’arithmétique D’order Supérieur
- Girard
- 1972
(Show Context)
Citation Context ...n be viewed as an analogue of Scott’s LCF, that is, as a fairly general system for proving properties of programs. Here the programs are those of System F≤, which is an extension of Girard’s System F =-=[Gir72]-=- with subtyping, abstracted from work of Cardelli and Wegner [CW85] by Curien and Ghelli [CG92, CG94]. Our logic for F≤ is an extension of the logic for F presented in [PA93]. Beyond its possible use ... |

206 | Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations
- Goguen, Meseguer
- 1992
(Show Context)
Citation Context ... setting I to be µX≤B. A[X] when A[B] ≤ B. One would like I ≤ B to hold; however the obvious attempt ∀X≤B. ((A[X] → X) → X) does not work. One can construct a variety of initial order-sorted algebras =-=[GM92]-=- and final order-sorted co-algebras. Let L be a finite partial order over the set of names (recall section 5.1); for each l ∈ L let Al[ � X] be a type expression with � X a vector of |L| variables all... |

124 | Formal parametric polymorphism
- Abadi, Cardelli, et al.
- 1993
(Show Context)
Citation Context ...rch Center. † Digital Equipment Corporation, Systems Research Center, 130 Lytton Avenue, Palo Alto, California 94301, USA. in previous work [ACC93, PA93]. In this paper we extend the formalization of =-=[PA93]-=- to a programming language with subtyping. A logic serves as the setting for this study. This logic can be viewed as an analogue of Scott’s LCF, that is, as a fairly general system for proving propert... |

116 | Inheritance as implicit coercion
- Breazu-Tannen, Coquand, et al.
- 1991
(Show Context)
Citation Context ...eed we formulate a stronger theory, which may be said to embody Strachey’s view of parametric polymorphism for F≤, and conjecture that it is derivable. We also examine the “Penn interpretation” of F≤ =-=[BCGS91]-=-, with its view of subtyping as implicit coercion. This interpretation is based on a translation from F≤ to F. We show that this translation can be extended to formulae; theorems of the logicsfor F≤ a... |

111 | An extension of system F with sub-typing
- Cardelli, Martini, et al.
- 1994
(Show Context)
Citation Context ...least one non-trivial model, it follows that if two terms of the same type can be proved equal in our logic, then they are observationally equivalent. A variant F<: of F≤ was given by Cardelli et al. =-=[CMMS94]-=-. A weakened version is derivable within our logic. Both this version and the full F<: yield some of the results associated with parametricity, frequently with a limitation to closed terms. Our logic ... |

87 |
A modest model of records, inheritance, and bounded quantification
- Bruce, Longo
(Show Context)
Citation Context ...he appropriate general form for parametric models of F≤ and of our logic, we do construct particular models— indeed two such. The first is a parametric per model combining the idea of Bruce and Longo =-=[BL90]-=- of treating subtypes as subpers with that of Bainbridge et al. [BFSS90] of forcing parametricity into per models of System F. The second is a closed-term model, following an idea of Moggi for System ... |

53 | Types, Abstraction and Parametric Polymorphism, Part 2 - Ma, Reynolds - 1992 |

45 |
Functorial polymorphism
- Bainbridge, Freyd, et al.
- 1990
(Show Context)
Citation Context ...ic, we do construct particular models— indeed two such. The first is a parametric per model combining the idea of Bruce and Longo [BL90] of treating subtypes as subpers with that of Bainbridge et al. =-=[BFSS90]-=- of forcing parametricity into per models of System F. The second is a closed-term model, following an idea of Moggi for System F [Mog86]. Having at least one non-trivial model, it follows that if two... |

38 | Extensible records in a pure calculus of subtyping
- Cardelli
- 1994
(Show Context)
Citation Context ... certain expected properties, for example that two extensible records of a type A are equal if they agree on the fields declared in A. 5.1 Extensible records Extensible record types are treated as in =-=[Car92]-=-. One fixes an ordered, countably infinite list of names li (i = 1, 2, . . .) and takes the record type Π∗ l∈LAl (where L is a finite set of names) to be Πi≤n+1Bi where n is the greatest index of any ... |

37 |
Proof Theoretic Studies about a Minimal Type System Integrating Inclusion and Parametric Polymorphism
- Ghelli
- 1990
(Show Context)
Citation Context ... are valid (in the now evident sense): Lemma 5 1. Let B and C be closed type expressions and let t and u be closed terms of type B → C. Then t �B→C u iff tv �C uv for all closed terms v of type B. 2. =-=[Ghe90]-=- Let t and u be closed terms of type Top. Then t �Top u. 3. Let ∀X≤B. A[X] be a closed type expression and let t and u be closed terms of that type. Then t � ∀X≤B.A[X] u iff tC � A[C] uC for all close... |

26 | Categorical data types in parametric polymorphism - Hasegawa - 1994 |

13 | Pierre-Louis Curien. Formal parametric polymorphism - Abadi, Cardelli - 1993 |

7 | Parametricity as subtyping
- Ma
- 1992
(Show Context)
Citation Context ...tricity and subtyping has been little considered. As mentioned above, System F<: of Cardelli et al. incorporates a modest notion of parametricity (partly motivated by dinaturality considerations). Ma =-=[Ma92]-=- expresses parametricity for F via a translation into a language with subtyping and intersection types. Ma focuses on parametricity in F, not on parametricity in his target language with subtyping. Th... |

3 |
The maximum consistent theory of the second order fij-lambda calculus
- Moggi
- 1986
(Show Context)
Citation Context ...f treating subtypes as subpers with that of Bainbridge et al. [BFSS90] of forcing parametricity into per models of System F. The second is a closed-term model, following an idea of Moggi for System F =-=[Mog86]-=-. Having at least one non-trivial model, it follows that if two terms of the same type can be proved equal in our logic, then they are observationally equivalent. A variant F<: of F≤ was given by Card... |

1 | type checking in a staticallytyped object-oriented programming language - Safe - 1993 |

1 |
Decidability and confluence of βηtop≤ reduction
- Curien, Ghelli
- 1994
(Show Context)
Citation Context ... all formulae involved are wellformed given E and G. The proof system has three parts: standard rules for the connectives and quantifiers; equational axioms (corresponding to the equational system of =-=[CG94]-=-); and a schema to express relational parametricity. We adopt the convention that if an axiom φ is written, what is meant is that the sequent Γ ⊢E;G φ is asserted, provided φ and all formulae in Γ are... |

1 | Decidability and confluence of fijtop reduction - Curien, Ghelli - 1994 |