System F with Coercion Constraints - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2014

System F with Coercion Constraints


We present a second-order λ-calculus with coercion constraints that generalizes a previous extension of System F with paramet-ric coercion abstractions by allowing multiple but simultaneous type and coercion abstractions, as well as recursive coercions and equi-recursive types. This enables a uniform presentation of several type system features that had previously been studied separately: type containment, bounded and instance-bounded polymorphism, which are already encodable with parametric coercion abstraction, and ML-style subtyping constraints. Our framework allows for a clear separation of language constructs with and without compu-tational content. We also distinguish coherent coercions that are fully erasable from potentially incoherent coercions that suspend the evaluation—and enable the encoding of GADTs. Technically, type coercions that witness subtyping relations be-tween types are replaced by a more expressive notion of typing co-ercions that witness subsumption relations between typings, e.g. pairs composed of a typing environment and a type. Our calcu-lus is equipped with full reduction that allows reduction under abstractions—but we also introduce a form of weak reduction as reduction cannot proceed under incoherent type abstractions. Type soundness is proved by adapting the step-indexed semantics tech-nique to full reduction, moving indices inside terms so as to control the reduction steps internally—but this is only detailed in the ex-tended version.
Fichier principal
Vignette du fichier
Cretin-Remy!fcc@lics2014.pdf (310.06 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01093239 , version 1 (10-12-2014)



Julien Cretin, Didier Rémy. System F with Coercion Constraints. CSL-LICS 2014: Joint Meeting of the Annual Conference on Computer Science Logic and the Annual Symposium on Logic in Computer Science, Jul 2014, Vienna, Austria. pp.34, ⟨10.1145/2603088.2603128⟩. ⟨hal-01093239⟩


133 View
80 Download



Gmail Facebook Twitter LinkedIn More