Abstract
Expansion is a crucial operation for calculating principal typings in intersection type systems. Because the early definitions of expansion were complicated, E-variables were introduced in order to make the calculations easier to mechanise and reason about. Recently, E-variables have been further simplified and generalised to also allow calculating other type operators than just intersection. There has been much work on semantics for type systems with intersection types, but none whatsoever before our work, on type systems with E-variables. In this paper we expose the challenges of building a semantics for E-variables and we provide a novel solution. Because it is unclear how to devise a space of meanings for E-variables, we develop instead a space of meanings
for types that is hierarchical. First, we index each type with a natural number and show that although this intuitively captures the use of E-variables, it is difficult to index the universal type ! with this hierarchy and it is not possible to obtain completeness of the semantics if more than one E-variable is used. We then move to a more complex semantics where each type is associated with a list of natural numbers and establish that both ! and an arbitrary number of E-variables can be represented without losing any of the desirable properties of a realisability semantics.
for types that is hierarchical. First, we index each type with a natural number and show that although this intuitively captures the use of E-variables, it is difficult to index the universal type ! with this hierarchy and it is not possible to obtain completeness of the semantics if more than one E-variable is used. We then move to a more complex semantics where each type is associated with a list of natural numbers and establish that both ! and an arbitrary number of E-variables can be represented without losing any of the desirable properties of a realisability semantics.
Original language | English |
---|---|
Pages (from-to) | 153-184 |
Number of pages | 31 |
Journal | Fundamenta Informaticae |
Volume | 121 |
Issue number | 1-4 |
DOIs | |
Publication status | Published - 2012 |
Keywords
- Realisability semantics
- expansion variables
- completeness
- intersection types