Realisability semantics of parametric polymorphism, general references and recursive types

被引:14
|
作者
Birkedal, Lars [1 ]
Stovring, Kristian [1 ]
Thamsborg, Jacob [1 ]
机构
[1] IT Univ Copenhagen, DK-2300 Copenhagen S, Denmark
关键词
LOGICAL RELATIONS; CATEGORY; MODEL;
D O I
10.1017/S0960129510000162
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
We present a realisability 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 that include general reference types. The interpretation uses a new approach to modelling 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.
引用
收藏
页码:655 / 703
页数:49
相关论文
共 21 条