## Some Algorithmic and Proof-Theoretical Aspects of Coercive Subtyping (1996)

Venue: | In Proceedings of TYPES'96, Lecture Notes in Computer Science |

Citations: | 6 - 0 self |

### BibTeX

@INPROCEEDINGS{Jones96somealgorithmic,

author = {Alex Jones and Zhaohui Luo and sergei Soloviev},

title = {Some Algorithmic and Proof-Theoretical Aspects of Coercive Subtyping},

booktitle = {In Proceedings of TYPES'96, Lecture Notes in Computer Science},

year = {1996},

publisher = {Springer}

}

### OpenURL

### Abstract

. Coercive subtyping offers a conceptually simple but powerful framework to understand subtyping and subset relationships in type theory. In this paper we study some of its proof-theoretic and computational properties. 1 Introduction Coercive subtyping, as first introduced in [Luo96], offers a conceptually simple but powerful framework to understand subtyping and subset relationships in type theories with sophisticated type structures such as dependent types, inductive types, and type universes. A basic idea behind coercive subtyping is that subtyping provides a powerful mechanism for notational abbreviation in type theory. If A is a subtype of B given by a specified coercion function, an object of type A can be regarded as an object of type B, that is, its image via the coercion function, and hence objects of a subtype can be used as abbreviations for objects of a supertype. With coercive subtyping, this abbreviational mechanism is formally treated at the level of the logical framewo...

### Citations

261 |
Programming in Martin-Löf’s Type Theory: An Introduction
- Nordstrom, Petersson, et al.
- 1990
(Show Context)
Citation Context ... definitionally equal to f(c(a)), where c is the coercion between K and K 0 . This simple extension of the logical framework (and hence of the specified type theories such as Martin-Lof's type theory =-=[NPS90]-=- and the type theory UTT [Luo94,Gog94]), provides a surprisingly powerful mechanism that facilitates useful ways of reasoning about subsets of objects, helps proof reuse and modularisation, and gives ... |

108 |
Computation and Reasoning, A Type Theory for Computer Science
- Luo
- 1994
(Show Context)
Citation Context ... the system with substitution rules and the completeness of TOS wrt the system without substitution rules. specifying type theories (with formal definitions and examples) can be found in Chapter 9 of =-=[Luo94]-=-. Here it is enough to say, that a judgement in a type theory T, specified in LF is derivable if it is derivable in the extension of LF by the constants and computation rules specifying the type theor... |

107 |
An algorithm for testing conversion in type theory
- Coquand
- 1991
(Show Context)
Citation Context ...s, we see, that \Gamma ` K = K 0 in T. 2 4 A type-checking algorithm and its soundness proof In this section, we present a type-checking algorithm, which is based on Coquand 's algorithm described in =-=[Coq91]-=- but uses the notion of typed reduction, and prove its soundness using the meta-results in section 3. 4.1 The notion of typed reduction The intended notion of computation for the extended type theory ... |

68 | Subtyping dependent types
- Aspinall, Compagnoni
- 1996
(Show Context)
Citation Context ...towards further study of, for example, more efficient reduction strategies. A lot of work has been presented already on subtyping. People such as Cardelli ([Car88,Car89]) and Aspinall and Compagnoni (=-=[AC96]-=-) present systems with subtyping that do not use coercions. Bailey [Bai96] and Saibi [Sai97] have already implemented coercive subtyping into current proof assistant programs as notational abbreviatio... |

52 |
A Typed Operational Semantics for Type Theory
- Goguen
- 1994
(Show Context)
Citation Context ... LF, a typed version of Martin-Lof's logical framework [NPS90]. The formulation of LF and a detailed discussion on how to use LF in 1 The work by Healfdene Goguen on typed operational semantics (TOS) =-=[Gog94]-=- may be regarded as an indirect development of the meta-theory of LF and UTT, where for example, substitution elimination results are obtained by proving the soundness of TOS wrt the system with subst... |

40 | Typing algorithm in type theory with inheritance
- Saibi
- 1997
(Show Context)
Citation Context ...ups as a subset of the type of monoids, then any proof to do with monoids can then be automatically applied to groups. Such a mechanism has been implemented by Bailey in LEGO [Bai96] and Saibi in Coq =-=[Sai97]-=- to support proof reuse and notational abbreviation. Similar mechanisms can be used for development of program specification and verification proofs (c.f., [Luo93]). In this paper, we study some of th... |

36 |
Proof Development System: User’s Manual
- LEGO
- 1992
(Show Context)
Citation Context ...e reduction steps would not be admissible, but what we can do is the following: [x:K 1 ]([y:K 2 ]y)(x)sc [x:K 1 ]([y:K 2 ]y)(c(x))sfi [x:K 1 ]c(x)sj c 4.2 Type-checking In type-checkers such as LEGO (=-=[LP92]-=-) and Coq ([H + 96]) type-checking is based upon the methods described in [Hue89]. The main thrust here is placed on a conversion algorithm as it is the most tricky part of type-checking. Conversion i... |

29 | Typechecking dependent types and subtypes - Cardelli - 1988 |

28 | Program specification and data refinement in type theory
- Luo
- 1993
(Show Context)
Citation Context ...ley in LEGO [Bai96] and Saibi in Coq [Sai97] to support proof reuse and notational abbreviation. Similar mechanisms can be used for development of program specification and verification proofs (c.f., =-=[Luo93]-=-). In this paper, we study some of the basic proof-theoretic and computational properties of coercive subtyping. The formal system we consider, as presented in Section 2, is essentially the same as th... |

25 |
The constructive engine
- Huet
- 1989
(Show Context)
Citation Context ...[x:K 1 ]([y:K 2 ]y)(x)sc [x:K 1 ]([y:K 2 ]y)(c(x))sfi [x:K 1 ]c(x)sj c 4.2 Type-checking In type-checkers such as LEGO ([LP92]) and Coq ([H + 96]) type-checking is based upon the methods described in =-=[Hue89]-=-. The main thrust here is placed on a conversion algorithm as it is the most tricky part of type-checking. Conversion in these systems is tested by reducing both terms to a head normal form and then b... |

25 | Coercive subtyping in type theory
- Luo
- 1996
(Show Context)
Citation Context ...nderstand subtyping and subset relationships in type theory. In this paper we study some of its proof-theoretic and computational properties. 1 Introduction Coercive subtyping, as first introduced in =-=[Luo96]-=-, offers a conceptually simple but powerful framework to understand subtyping and subset relationships in type theories with sophisticated type structures such as dependent types, inductive types, and... |

14 | A logic of subtyping - Longo, Milsted, et al. - 1995 |

11 | Coherence and transitivity of subtyping as entailment - Longo, Milsted, et al. |

9 |
Lego with implicit coercions
- Bailey
- 1996
(Show Context)
Citation Context ...we define the type of groups as a subset of the type of monoids, then any proof to do with monoids can then be automatically applied to groups. Such a mechanism has been implemented by Bailey in LEGO =-=[Bai96]-=- and Saibi in Coq [Sai97] to support proof reuse and notational abbreviation. Similar mechanisms can be used for development of program specification and verification proofs (c.f., [Luo93]). In this p... |

7 | Representing Algebra in LEGO - Bailey |

2 | Typeful Programming, Lecture notes for the IFIP State of the Art Seminar on Formal Description of Programming Concepts, Rio de - Cardelli - 1989 |

2 | The formalization of linear algebra in LEGO: The decidable dependency theorem - Jones - 1995 |

1 |
Coercive suptyping. Draft submitted for publication
- Luo
- 1997
(Show Context)
Citation Context ...K ! c K 0 . We also restrict the basic coercions to be closed terms between closed types (as considered in [Luo96]). The presentation of a more general framework of coercive subtyping can be found in =-=[Luo97]-=-, which uses subkinding judgements with explicit coercion terms and also allows more general basic subtyping rules such as those for parameterised inductive types. In section 3 we prove several import... |