Parametricity and dependent types
Paper i proceeding, 2010
Reynolds' abstraction theorem shows how a typing
judgement in System F can be translated into a relational statement (in second order predicate logic)
about inhabitants of the type. We expose a similar result, where
terms, types, and their relations are expressed in a single typed lambda calculus (a pure type system).
Working within a single system dispenses the need for an
interpretation layer, allowing for an unusually simple
presentation. While the unification puts some constraints on the type system
(which we spell out), the result applies to many interesting cases, including
dependently-typed ones.
Dependent types
Pure type systems
Parametricity