paperbot · PL 论文追踪

RSS

On Subtyping-Relation Completeness, with an Application to Iso-Recursive Types

TOPLAS 39(1)2017引用 25
Jay Ligatti, Jeremy Blackburn, Michael Nachtigal

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

Well-known techniques exist for proving the soundness of subtyping relations with respect to type safety. However, completeness has not been treated with widely applicable techniques, as far as we’re aware. This article develops techniques for stating and proving that a subtyping relation is complete with respect to type safety and applies the techniques to the study of iso-recursive subtyping. A new proof technique, induction on failing derivations, is provided that may be useful in other domains as well. The common subtyping rules for iso-recursive types—the “Amber rules”—are shown to be incomplete with respect to type safety. That is, there exist iso-recursive types τ 1 and τ 2 such that τ 1 can safely be considered a subtype of τ 2 , but τ 1 ⩽ τ 2 is not derivable with the Amber rules. New, algorithmic rules are defined for subtyping iso-recursive types, and the rules are proved sound and complete with respect to type safety. The fully implemented subtyping algorithm is optimized to run in O ( mn ) time, where m is the number of μ-terms in the types being considered and n is the size of the types being considered.

链接与引用

DOI 原文 · DBLP

BibTeX
@article{LigattiBN17,
  title = {On Subtyping-Relation Completeness, with an Application to Iso-Recursive Types},
  author = {Jay Ligatti and Jeremy Blackburn and Michael Nachtigal},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {39},
  number = {1},
  year = {2017},
  doi = {10.1145/2994596}
}