Hostname: page-component-5db58dd55d-l8wb7 Total loading time: 0 Render date: 2026-06-03T11:49:49.266Z Has data issue: false hasContentIssue false

Efficient recursive subtyping

Published online by Cambridge University Press:  04 March 2009

Dexter Kozen
Affiliation:
Computer Science Department, Cornell University, Ithaca, New York 14853, USA
Jens Palsberg
Affiliation:
Computer Science Department, Aarhus University, 8000 Aarhus C, Denmark
Michael I. Schwartzbach
Affiliation:
Computer Science Department, Aarhus University, 8000 Aarhus C, Denmark

Abstract

Subtyping in the presence of recursive types for the λ-calculus was studied by Amadio and Cardelli in 1991 (Amadio and Cardelli 1991). In that paper they showed that the problem of deciding whether one recursive type is a subtype of another is decidable in exponential time. In this paper we give an 0(n2) algorithm. Our algorithm is based on a simplification of the definition of the subtype relation, which allows us to reduce the problem to the emptiness problem for a certain finite automaton with quadratically many states.

It is known that equality of recursive types and the covariant Bohm order can be decided efficiently by means of finite automata, since they are just language equality and language inclusion, respectively. Our results extend the automata-theoretic approach to handle orderings based on contravariance.

Information

Type
Research Article
Copyright
Copyright © Cambridge University Press 1995

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable