Relational interpretations of recursive types an operational setting

被引:22
作者
Birkedal, L [1 ]
Harper, R
机构
[1] Carnegie Mellon Univ, Sch Comp Sci, Pittsburgh, PA 15213 USA
[2] Univ Cambridge, Isaac Newton Inst Math Sci, Cambridge CB2 1TN, England
基金
美国国家科学基金会;
关键词
D O I
10.1006/inco.1999.2828
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Relational interpretations of type systems are useful for establishing properties of programming languages. For languages with recursive types it is difficult to establish the existence of a relational interpretation. The usual approach is to pass to a domain-theoretic model of the language and, exploiting the structure of the model, to derive relational properties of it, We investigate the construction of relational interpretations of recursive types in a purely operational setting, drawing on recent ideas from domain theory and operational semantics as a guide. We prove syntactic minimal invariance for an extension of PCF with a recursive type, a syn tactic analogue of the minimal invariance property used by Freyd and Pitts to characterize the domain interpretation of a recursive type. As Pitts has shown in the setting of domains, syntactic minimal invariance suffices to establish the existence of relational interpretations. We give two applications of this construction. First, we derive a notion of logical equivalence for expressions of the language that we show coincides with experimental equivalence and which, by virtue of its construction, validates useful induction and coinduction principles for reasoning about the recursive type. Second, we give a relational proof of correctness of the continuation-passing transformation, which is used in some compilers for functional languages. (C) 1999 Academic Press.
引用
收藏
页码:3 / 63
页数:61
相关论文
共 26 条
  • [1] MULTIVALUED SUPERPOSITION OPERATORS IN IDEAL SPACES OF VECTOR-FUNCTIONS .3.
    APPELL, J
    THAI, NH
    ZABREJKO, PP
    [J]. INDAGATIONES MATHEMATICAE-NEW SERIES, 1992, 3 (01): : 1 - 9
  • [2] CLINGER W, 1991, LISP POINTERS, V4, P1
  • [3] Davey B., 1990, INTRO LATTICES ORDER
  • [4] FILINSKI A, 1996, CMUCS96119 SCH COMP
  • [5] FISCHL MA, 1993, J ACQ IMMUN DEF SYND, V6, P259
  • [6] Girard J.-Y., 1972, Interpretation fonctionnelle et elimination des coupures de l'artihmetique d'ordre superieur
  • [7] Gunter C. A., 1992, Semantics of Programming Languages: Structures and Techniques
  • [8] HARPER R, 1993, J FUNCTIONAL PROGRAM, V3, P465
  • [9] MASON IA, 1995, IN PRESS INFORM COMP
  • [10] Milner R., 1997, DEFINITION STANDARD