On Isomorphism of "Functional" Intersection and Union Types

被引:1
|
作者
Coppo, Mario [1 ]
Dezani-Ciancaglini, Mariangiola [1 ]
Margaria, Ines [1 ]
Zacchi, Maddalena [1 ]
机构
[1] Univ Torino, Dipartimento Informat, Corso Svizzera 185, I-10149 Turin, Italy
关键词
D O I
10.4204/EPTCS.177.5
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Type isomorphism is useful for retrieving library components, since a function in a library can have a type different from, but isomorphic to, the one expected by the user. Moreover type isomorphism gives for free the coercion required to include the function in the user program with the right type. The present paper faces the problem of type isomorphism in a system with intersection and union types. In the presence of intersection and union, isomorphism is not a congruence and cannot be characterised in an equational way. A characterisation can still be given, quite complicated by the interference between functional and non functional types. This drawback is faced in the paper by interpreting each atomic type as the set of functionsmapping any argument into the interpretation of the type itself. This choice has been suggested by the initial projection of Scott's inverse limit lambda-model. The main result of this paper is a condition assuring type isomorphism, based on an isomorphism preserving reduction.
引用
收藏
页码:53 / 64
页数:12
相关论文
共 50 条
  • [1] Isomorphism of intersection and union types
    Coppo, Mario
    Dezani-Ciancaglini, Mariangiola
    Margaria, Ines
    Zacchi, Maddalena
    [J]. MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE, 2017, 27 (05) : 603 - 625
  • [2] Toward Isomorphism of Intersection and Union Types
    Coppo, Mario
    Dezani-Ciancaglini, Mariangiola
    Margaria, Ines
    Zacchi, Maddalena
    [J]. ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2013, (121): : 58 - 80
  • [3] INTERSECTION AND UNION TYPES
    BARBANERA, F
    DEZANICIANCAGLINI, M
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1991, 526 : 651 - 674
  • [4] Distributing Intersection and Union Types with Splits and Duality (Functional Pearl)
    Huang, Xuejing
    Oliveira, Bruno C. D. S.
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5
  • [5] Elaborating Intersection and Union Types
    Dunfield, Joshua
    [J]. ACM SIGPLAN NOTICES, 2012, 47 (09) : 17 - 28
  • [6] Elaborating intersection and union types
    Dunfield, Joshua
    [J]. JOURNAL OF FUNCTIONAL PROGRAMMING, 2014, 24 (2-3) : 133 - 165
  • [7] Intersection and Union Types for chi
    van Bakel, Steffen
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 136 : 203 - 227
  • [8] A Realizability Interpretation for Intersection and Union Types
    Dougherty, Daniel J.
    de'Liguoro, Ugo
    Liquori, Luigi
    Stolze, Claude
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, APLAS 2016, 2016, 10017 : 187 - 205
  • [9] Gradual typing with union and intersection types
    Castagna, Giuseppe
    Lanvin, Victor
    [J]. Proceedings of the ACM on Programming Languages, 2017, 1 (ICFP):
  • [10] The Duality of Classical Intersection and Union Types
    Downen, Paul
    Ariola, Zena M.
    Ghilezan, Silvia
    [J]. FUNDAMENTA INFORMATICAE, 2019, 170 (1-3) : 39 - 92