1. Coercive subtyping: Theory and implementation
- Author
-
Zhaohui Luo, Sergei Soloviev, Tao Xue, Department of Computer Science, University College of London [London] (UCL), Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), University of London (UNITED KINGDOM), and Institut National Polytechnique de Toulouse - INPT (FRANCE)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Computer science ,0102 computer and information sciences ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Type (model theory) ,01 natural sciences ,Interface homme-machine ,Theoretical Computer Science ,Set (abstract data type) ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,Coercive subtyping ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,0101 mathematics ,Coercion (linguistics) ,Discrete mathematics ,Subsumptive subtyping ,Type theory ,010102 general mathematics ,Proof assistant ,Extension (predicate logic) ,16. Peace & justice ,Modélisation et simulation ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Subtyping ,Computer Science Applications ,Computational Theory and Mathematics ,010201 computation theory & mathematics ,Conservative extension ,Conservativity ,Cryptographie et sécurité ,Definitional extension ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Algorithm ,Information Systems - Abstract
International audience; Coercive subtyping is a useful and powerful framework of subtyping for type theories. The key idea of coercive subtyping is subtyping as abbreviation. In this paper, we give a new and adequate formulation of T[C], the system that extends a type theory T with coercive subtyping based on a set C of basic subtyping judgements, and show that coercive subtyping is a conservative extension and, in a more general sense, a definitional extension. We introduce an intermediate system, the star-calculus T[C]^@?, in which the positions that require coercion insertions are marked, and show that T[C]^@? is a conservative extension of T and that T[C]^@? is equivalent to T[C]. This makes clear what we mean by coercive subtyping being a conservative extension, on the one hand, and amends a technical problem that has led to a gap in the earlier conservativity proof, on the other. We also compare coercive subtyping with the 'ordinary' notion of subtyping - subsumptive subtyping, and show that the former is adequate for type theories with canonical objects while the latter is not. An improved implementation of coercive subtyping is done in the proof assistant Plastic.
- Published
- 2013
- Full Text
- View/download PDF