Results

**1 - 3**of**3**### On the Power of Coercion Abstraction Julien Cretin

"... Erasable coercions in System Fη, also known as retyping functions, are well-typed η-expansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quant ..."

Abstract
- Add to MetaCart

(Show Context)
Erasable coercions in System Fη, also known as retyping functions, are well-typed η-expansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quantifiers, but not subtyping assumptions nor certain forms of delayed type instantiation. We generalize Fη by allowing abstraction over retyping functions. We follow a general approach where computing with coercions can be seen as computing in the λ-calculus but keeping track of which parts of terms are coercions. We obtain a language where coercions do not contribute to the reduction but may block it and are thus not erasable. We recover erasable coercions by choosing a weak reduction strategy and restricting coercion abstraction to value-forms or by restricting abstraction to coercions that are polymorphic in their domain or codomain. The latter variant subsumes Fη, F<:, and MLF in a unified framework.

### Sumission to POPL 2012 Extending System Fη with Abstraction over Erasable Coercions

"... Erasable coercions in System Fη, also known as retyping functions, are well-typed η-expansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quant ..."

Abstract
- Add to MetaCart

(Show Context)
Erasable coercions in System Fη, also known as retyping functions, are well-typed η-expansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quantifiers, but not subtyping assumptions nor certain form of delayed type instantiation. We generalize Fη by allowing abstraction over retyping functions. We follow a general approach where computing with coercions can be seen as computing in the λ-calculus but keeping track of which parts of terms are coercions. We obtain a language where coercions do not contribute to the reduction but may block it and are thus not erasable. We recover erasable coercions by choosing a weak reduction strategy and restricting coercion abstraction to value-forms or by restricting abstraction to coercions that are polymorphic in their domain or codomain. The latter variant subsumes Fη, F<:, and MLF in a unified framework.

### Full reduction in the face of absurdity

"... Abstract. Core calculi that model the essence of computations use full reduction semantics to be built on solid grounds. Expressive type sys-tems for these calculi may use propositions to refine the notion of types, which allows abstraction over possibly inconsistent hypotheses. To pre-serve type so ..."

Abstract
- Add to MetaCart

Abstract. Core calculi that model the essence of computations use full reduction semantics to be built on solid grounds. Expressive type sys-tems for these calculi may use propositions to refine the notion of types, which allows abstraction over possibly inconsistent hypotheses. To pre-serve type soundness, reduction must then be delayed until logical hy-potheses on which the computation depends have been proved consistent. When logical information is explicit inside terms, proposition variables delay the evaluation by construction. However, logical hypotheses may be left implicit, for the user’s convenience in a surface language or because they have been erased prior to computation in an internal language. It then becomes difficult to track the dependencies of computations over possibly inconsistent hypotheses. We propose an expressive type system with implicit coercions, consis-tent and inconsistent abstraction over coercions, and assumption hiding, which provides a fine-grained control of dependencies between compu-tations and the logical hypotheses they depend on. Assumption hiding opens a continuum between explicit and implicit use of hypotheses, and restores confluence. Extended version For reasons of page limits, the proofs have been omitted from this version submitted for review. A full version of the present article, with additional remarks and all proofs, is also available electronically1. 1