Decidability of Higher-Order Subtyping via Logical Relations

This paper uses logical relations for the rst time to study the decidability of type-checking and subtyping. The result is proved for F ! , a language with higher-order sub-typing and bounded operator abstraction not previously known to be decidable. The proof is via an intermediate system called a typed operational semantics, leading to a powerful and uniform technique for showing metatheoretic results of type systems with subtyping, such as strong normalization, subject reduction and decidability of subtyping.

[1]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Inf. Comput..

[2]  Luca Cardelli,et al.  On understanding types, data abstraction, and polymorphism , 1985, CSUR.

[3]  John C. Mitchell Toward a typed foundation for method specialization and inheritance , 1989, POPL '90.

[4]  Luca Cardelli,et al.  A semantic basis for quest , 1990, Journal of Functional Programming.

[5]  J. Gallier,et al.  A Proof of Strong Normalization for the Theor y of Constructions Using a Kripke-like Interpretation , 1990 .

[6]  Thomas Streicher,et al.  Semantics of type theory - correctness, completeness and independence results , 1991, Progress in theoretical computer science.

[7]  Luca Cardelli,et al.  Subtyping recursive types , 1991, POPL '91.

[8]  T. Coquand An algorithm for testing conversion in type theory , 1991 .

[9]  Giorgio Ghelli,et al.  Coherence of Subsumption, Minimum Typing and Type-Checking in F<= , 1992, Math. Struct. Comput. Sci..

[10]  Adriana B. Compagnoni,et al.  Decidability of Higher-Order Subtyping with Intersection Types , 1994, CSL.

[11]  Healfdene Goguen A typed operational semantics for type theory , 1994 .

[12]  Benjamin C. Pierce,et al.  Higher-Order Subtyping , 1994, Theor. Comput. Sci..

[13]  Healfdene Goguen The Metatheory of UTT , 1994, TYPES.

[14]  Adriana B. Compagnoni,et al.  Higher-order subtyping with intersection types , 1995 .

[15]  Kim B. Bruce Typing in object-oriented languages: Achieving expressiveness and safety , 1996 .

[16]  Martín Abadi,et al.  A Theory of Objects , 1996, Monographs in Computer Science.

[17]  David Aspinall,et al.  Subtyping dependent types , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.