Relational parametricity for references and recursive types

  • Authors:
  • Lars Birkedal;Kristian Støvring;Jacob Thamsborg

  • Affiliations:
  • IT University of Copenhagen, DK-2300 Copenhagen S, Denmark;IT University of Copenhagen, DK-2300 Copenhagen S, Denmark;IT University of Copenhagen, DK-2300 Copenhagen S, Denmark

  • Venue:
  • Proceedings of the 4th international workshop on Types in language design and implementation
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a possible world semantics for a call-by-value higher-order programming language with impredicative polymorphism, general references, and recursive types. The model is one of the first relationally parametric models of a programming language with all these features. To model impredicative polymorphism we define the semantics of types via parameterized (world-indexed) logical relations over a universal domain. It is well-known that it is non-trivial to show the existence of logical relations in the presence of recursive types. Here the problems are exacerbated because of general references. We explain what the problems are and present our solution, which makes use of a novel approach to modeling references. We prove that the resulting semantics is adequate with respect to a standard operational semantics and include simple examples of reasoning about contextual equivalence via parametricity.