Skip to search boxSkip to navigationSkip to main content

Realizability Semantics of Parametric Polymorphism, General References, and Recursive Types

  • Lars Birkedal
    ,
  • Kristian Støvring
    ,
  • Jacob Thamsborg
Research Output:
Book / Anthology / Report
Report

Open access

Publication Information

Output type

Research Output:
Book / Anthology / Report
Report

Original language

English

Publication milestones

  • Published - 01/2010

Publication status

Published - 01/2010

Place of publication

Copenhagen

Edition

TR-2010-124

Publisher

IT-Universitetet i København, Denmark

Book series

  • Book series name: IT University Technical Report Series
    Series number: TR-2010-124
    ISSN: 1600-6100

ISBN (Electronic)

9788779492080

Abstract

We present a realizability model for a call-by-value, higher-order programming language with parametric polymorphism, general first-class references, and recursive types. The main novelty is a relational interpretation of open types (as needed for parametricity reasoning) that include general reference types. The interpretation uses a new approach to modeling references.
The universe of semantic types consists of world-indexed families of logical relations over a universal predomain. In order to model general reference types, worlds are finite maps from locations to semantic types: this introduces a circularity between semantic types and worlds that precludes a direct definition of either. Our solution is to solve a recursive equation in an appropriate category of metric spaces. In effect, types are interpreted using a Kripke logical relation over a recursively defined set of worlds.
We illustrate how the model can be used to prove simple equivalences between different implementations of imperative abstract data types.

Access to documents

Final published version, 443.83 KB