English
 
Help Privacy Policy Disclaimer
  Advanced SearchBrowse

Item

ITEM ACTIONSEXPORT

Released

Conference Paper

Subtyping Functional+Nonempty Record Types

MPS-Authors
/persons/resource/persons45677

Vorobyov,  Sergei
Computational Biology and Applied Algorithmics, MPI for Informatics, Max Planck Society;
Programming Logics, MPI for Informatics, Max Planck Society;

External Resource
No external resources are shared
Fulltext (restricted access)
There are currently no full texts shared for your IP range.
Fulltext (public)
There are no public fulltexts stored in PuRe
Supplementary Material (public)
There is no public supplementary material available
Citation

Vorobyov, S. (1999). Subtyping Functional+Nonempty Record Types. In G. Gottlob, E. Grandjean, & K. Seyr (Eds.), Proceedings of the 12th International Workshop on Computer Science Logic (CSL-98), Annual Conference on the EACSL (pp. 285-297). Berlin, Germany: Springer.


Cite as: https://hdl.handle.net/11858/00-001M-0000-000F-3699-E
Abstract
\begin{abstract} \emph{Solving systems of subtype constraints} (or \emph{subtype inequalities}) is in the core of efficient \emph{type reconstruction} in modern object-oriented languages with subtyping and inheritance, two problems known \emph{polynomial time equivalent}. It is important to know how different combinations of type constructors influence the complexity of the problem. We show the \emph{NP-hardness} of the satisfiability problem for subtype inequalities between object types built by using simultaneously both the functional and the non-empty record type constructors, but without any atomic types and atomic subtyping. The class of constraints we address is intermediate with respect to known classes. For pure functional types with atomic subtyping of a special non-lattice (\emph{crown}) form solving subtype constraints is PSPACE-complete \cite{Tiuryn92,Frey97}. On the other hand, if there are no atomic types and subtyping on them, but the largest $\top$ type is included, then both pure functional and pure record (separately) subtype constraints are \emph{polynomial time solvable} \cite{KozenPalsbergSchwartzbach94,Palsberg95ic}, which is mainly due to the lattice type structure. We show that combining the functional and nonempty record constructors yields NP-hardness \emph{without any atomic subtyping}, and the same is true for just a single type constant with a nonempty record constructor. \end{abstract}