Realisability semantics of parametric polymorphism, general references and recursive types
- Lars Birkedal,
- Kristian Støvring,
- Jacob Junker Thamsborg
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-reviewPublication Information
Output type
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-reviewOriginal language
EnglishPages from-to (Number of pages)
Pages 655-703 Journal (Volume, Issue Number)
Mathematical Structures in Computer Science (Volume 20, Issue 4)Publication milestones
- Published - 2010
Publication status
Published - 2010
ISSN
0960-1295Publication IDs
- Scopus: 77957270312
Abstract
We present a realizability model for a call-by-value, higherorder 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.
Publication metrics
PlumX
Citations
18
Captures
4
