15 research outputs found

    Retractions in Intersection Types

    Get PDF
    This paper deals with retraction - intended as isomorphic embedding - in intersection types building left and right inverses as terms of a lambda calculus with a bottom constant. The main result is a necessary and sufficient condition two strict intersection types must satisfy in order to assure the existence of two terms showing the first type to be a retract of the second one. Moreover, the characterisation of retraction in the standard intersection types is discussed.Comment: In Proceedings ITRS 2016, arXiv:1702.0187

    The heart of intersection type assignment: Normalisation proofs revisited

    Get PDF
    AbstractThis paper gives a new proof for the approximation theorem and the characterisation of normalisability using intersection types for a system with ‘w and a ≤-relation that is contra-variant over arrow types. The technique applied is to define reduction on derivations and to show a strong normalisation result for this reduction. From this result, the characterisation of strong normalisation and the approximation result will follow easily; the latter, in its turn, will lead to the characterisation of (head) normalisability

    The Heart of Intersection Type Assignment

    Get PDF
    This paper gives a new proof for the approximation theorem and the characterisation of normalisability using intersection types. The technique applied is to define reduction on derivations and to show a strong normalisation result for this reduction. From this result, the characterisation of strong normalisation and the approximation result will follow easily; the latter, in its turn, will lead to the characterisation of (head-)normalisability

    The Heart of Intersection Type Assignment

    No full text
    This paper gives a new proof for the approximation theorem and the characterisation of normalisability using intersection types. The technique applied is to define reduction on derivations and to show a strong normalisation result for this reduction. From this result, the characterisation of strong normalisation and the approximation result will follow easily; the latter, in its turn, will lead to the characterisation of (head-)normalisability

    A type system for context-dependent overloading.

    Get PDF
    This article presents a type system for context-dependent overloading, based on the notion of constrained types. These are types constrained by the definition of functions or constants of given types. This notion supports both overloading and a form of subtyping, and is related to Haskell type classes [11,2], System O [7] and other systems with constrained types. We study an extension of the Damas-Milner system [4,1] with constrained types. The inference system presented uses a context-dependent overloading policy, which is specified by means of a predicate used in a single inference rule. The idea simplifies the treatment of overloading, enables the simplification of inferred types (by means of class type annotations), and is adequate for use in a type system with higher-order types

    On sets of terms having a given intersection type

    Get PDF
    Working in a variant of the intersection type assignment system of Coppo, Dezani-Ciancaglini and Venneri [1981], we prove several facts about sets of terms having a given intersection type. Our main result is that every strongly normalizing term M admits a *uniqueness typing*, which is a pair (Γ,A)(\Gamma,A) such that 1) Γ⊢M:A\Gamma \vdash M : A 2) Γ⊢N:A⟹M=βηN\Gamma \vdash N : A \Longrightarrow M =_{\beta\eta} N We also discuss several presentations of intersection type algebras, and the corresponding choices of type assignment rules. Moreover, we show that the set of closed terms with a given type is uniformly separable, and, if infinite, forms an adequate numeral system. The proof of this fact uses an internal version of the B\"ohm-out technique, adapted to terms of a given intersection type

    Essential intersection type assignment

    No full text
    This paper introduces a notion of intersection type assignment on the Lambda Calculus that is a restriction of the BCD-system as presented in [4]. This restricted system is essential in the following sense: it is an almost syntax directed system that satisfies all major properties of the BCD-system. The set of typeable terms can be characterized in the same way, the system is complete with respect to the simple type semantics, and it has the principal type property
    corecore