CSL 2004: Computer Science Logic pp 415-429 | Cite as
Subtyping Union Types
Conference paper
Abstract
Subtyping can be fairly complex for union types, due to interactions with other types, such as function types. Furthermore, these interactions turn out to depend on the calculus considered: for instance, a call-by-value calculus and a call-by-name calculus will have different possible subtyping rules. In order to abstract ourselves away from this dependence, we consider a fairly large class of calculi. This allows us to find a subtyping relation which is both robust (it is sound for all calculi) and precise (it is complete with respect to the class of calculi).
Keywords
union types subtyping semantics lambda-calculusPreview
Unable to display preview. Download preview PDF.
References
- 1.Damm, F.: Subtyping with union types, intersection types and recursive types II. Research Report 2259, INRIA Rennes (1994)Google Scholar
- 2.Vouillon, J.: Subtyping union types (extended version). Manuscript (2004), available from http://www.pps.jussieu.fr/~vouillon/publi/#union
- 3.Vouillon, J., Melliès, P.A.: Semantic types: A fresh look at the ideal model for types. In: Proceedings of the 31th ACM Conference on Principles of Programming Languages, Venezia, Italia, pp. 52–63. ACM Press, New York (2004)Google Scholar
- 4.Melliès, P.A., Vouillon, J.: Recursive polymorphic types and parametricity in an operational framework. Preprint PPS//04/06//no 30 (2004), available from http://www.pps.jussieu.fr/~vouillon/publi/#semtypes2
- 5.Girard, J.Y.: Interprétation fonctionelle et élimination des coupures dans l’arithm étique d’ordre supérieur. Th‘ese de doctorat d’État, University of Paris VII (1972)Google Scholar
- 6.Coq Development Team: The Coq Proof Assistant Reference Manual – Version V7.4 (2003), Available from http://coq.inria.fr/doc/main.html
- 7.MacQueen, D., Plotkin, G., Sethi, R.: An ideal model for recursive polymorphic types. Information and Control 71, 95–130 (1986)MATHCrossRefMathSciNetGoogle Scholar
- 8.Girard, J.Y.: Linear logic. Theoretical Computer Science 50, 1–102 (1987)MATHCrossRefMathSciNetGoogle Scholar
- 9.Danos, V., Krivine, J.L.: Disjunctive tautologies and synchronisation schemes. In: Clote, P.G., Schwichtenberg, H. (eds.) CSL 2000. LNCS, vol. 1862, pp. 292–301. Springer, Heidelberg (2000)CrossRefGoogle Scholar
- 10.Krivine, J.L.: Typed lambda-calculus in classical Zermelo-Fraenkel set theory. Archive of Mathematical Logic 40, 189–205 (2001)MATHCrossRefMathSciNetGoogle Scholar
- 11.Pitts, A.M.: Parametric polymorphism and operational equivalence. Mathematical Structures in computer Science 10, 321–359 (2000)MATHCrossRefMathSciNetGoogle Scholar
- 12.Frisch, A., Castagna, G., Benzaken, V.: Semantic subtyping. In: 17th IEEE Symposium on Logic in Computer Science, pp. 137–146. IEEE Computer Society Press, Los Alamitos (2002)CrossRefGoogle Scholar
- 13.Hosoya, H., Vouillon, J., Pierce, B.C.: Regular expression types for XML. In: Proceedings of the International Conference on Functional Programming, ICFP (2000)Google Scholar
Copyright information
© Springer-Verlag Berlin Heidelberg 2004