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 条
  • [1] Realizability Semantics of Parametric Polymorphism, General References, and Recursive Types
    Birkedal, Lars
    Stovring, Kristian
    Thamsborg, Jacob
    FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATIONAL STRUCTURES, PROCEEDINGS, 2009, 5504 : 456 - 470
  • [2] On Realisability Semantics for Intersection Types with Expansion Variables
    Kamareddine, Fairouz
    Nour, Karim
    Rahli, Vincent
    Wells, J. B.
    FUNDAMENTA INFORMATICAE, 2012, 121 (1-4) : 153 - 184
  • [3] A complete realisability semantics for intersection types and arbitrary expansion variables
    Kamareddine, Fairouz
    Nour, Karim
    Rahli, Vincent
    Wells, J. B.
    THEORETICAL ASPECTS OF COMPUTING - ICTAC 2008, PROCEEDINGS, 2008, 5160 : 171 - 185
  • [4] Relational reasoning for recursive types and references
    Bohr, Nina
    Birkedal, Lars
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2006, 4279 : 79 - +
  • [5] Game semantics for good general references
    Murawski, Andrzej S.
    Tzevelekos, Nikos
    26TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE (LICS 2011), 2011, : 75 - 84
  • [6] A general recursive schema for argumentation semantics
    Baroni, P
    Giacomin, M
    ECAI 2004: 16TH EUROPEAN CONFERENCE ON ARTIFICIAL INTELLIGENCE, PROCEEDINGS, 2004, 110 : 783 - 787
  • [7] A fully abstract trace semantics for general references
    Laird, J.
    Automata, Languages and Programming, Proceedings, 2007, 4596 : 667 - 679
  • [8] A fully abstract game semantics for general references
    Abramsky, S
    Honda, K
    McCusker, G
    THIRTEENTH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 1998, : 334 - 344
  • [9] Deconstructing General References via Game Semantics
    Murawski, Andrzej S.
    Tzevelekos, Nikos
    FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATION STRUCTURES (FOSSACS 2013), 2013, 7794 : 241 - 256
  • [10] Bifibrational Functorial Semantics of Parametric Polymorphism
    Ghani, Neil
    Johann, Patricia
    Forsberg, Fredrik Nordvall
    Orsanigo, Federico
    Revell, Tim
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2015, 319 : 165 - 181