dc.description.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. | en |