Efficient type reconstruction in the presence of inheritance
The complexity of type reconstruction for simply-typed lambda calculus with subtype relation resulting from single inheritance (i.e. being a disjoint union of tree-like posets) is analyzed. As a result a class of posets including (but not restricted to) trees is defined, for which the said problem is solvable in polynomial time.
KeywordsPolynomial Time Deduction System Type Inference Absolute Retract Type Reconstruction
Unable to display preview. Download preview PDF.
- 1.Kim Bruce and John C. Mitchell. Per models of subtyping, recursive types and higher-order polymorphism. In Conf. Rec. ACM Symp. Principles of Programming Languages, 1992.Google Scholar
- 2.Dexter Kozen, Jens Palsberg, and Michael I. Schwartzbach. Efficient inference of partial types. Technical Report DAIMI PB-394, Computer science Dept., Aarhus University, April 1992.Google Scholar
- 3.Patrick Lincoln and John C. Mitchell. Algorithmic aspects of type inference with subtypes. In Conf. Rec. ACM Symp. Principles of Programming Languages, pages 293–304, 1992.Google Scholar
- 4.John C. Mitchell. Coercion and type inference. In Conf. Rec. ACM Symp. Principles of Programming Languages, pages 175–185, 1984.Google Scholar
- 5.P. Nevermann and I. Rival. Holes in ordered sets. Graphs and Combinatorics, (1):339–350, 1985.Google Scholar
- 6.Benjamin C. Pierce and David N. Turner. Object-oriented programming without recursive types. Technical Report ECS-LFCS-92-225, LFCS, University of Edinburgh, August 1992.Google Scholar
- 7.Jerzy Tiuryn. Subtype inequalities. In Proc. 7th IEEE Symp. Logic in Computer Science, pages 308–315, 1992.Google Scholar
- 8.Jerzy Tiuryn and Mitchell Wand. Type reconstruction with recursive types and atomic subtyping. In M.-C. Gaudel and J.-P. Jouannaud, editors, TAPSOFT'93: Theory and Practice of Software Development, LNCS 668, pages 686–701, 1993.Google Scholar
- 9.M. Wand and Patrick O'Keefe. On the complexity of type inference with coercion. In Proc. ACM Conf. Functional Programming and Computer Architecture, 1989.Google Scholar