首页> 外文期刊>Science of Computer Programming >A dependently typed calculus with polymorphic subtyping
【24h】

A dependently typed calculus with polymorphic subtyping

机译:具有多晶型亚型的依赖性微积分

获取原文
获取原文并翻译 | 示例

摘要

A polymorphic subtyping relation, which relates more general types to more specific ones, is at the core of many modern functional languages. As those languages start moving towards dependently typed programming a natural question is how can polymorphic subtyping be adapted to such settings. This paper presents the dependent implicitly polymorphic calculus (λ_I~(A)): a simple depen-dently typed calculus with polymorphic subtyping. The subtyping relation in λ_I~(A) generalizes the well-known polymorphic subtyping relation by Odersky and Laeufer (1996). Because λ_I~(A) is dependently typed, integrating subtyping in the calculus is non-trivial. To overcome many of the issues arising from integrating subtyping with dependent types, the calculus employs unified subtyping, which is a technique that unifies typing and subtyping into a single relation. Moreover, λ_I~(A) employs explicit casts instead of a conversion rule, allowing unrestricted recursion to be naturally supported. We prove various non-trivial results, including type soundness and transitivity of unified subtyping. Λ_I~(A) and all corresponding proofs are mechanized in the Coq theorem prover.
机译:一种多态性亚型关系,与更具体的多种类型相关联,是许多现代功能语言的核心。由于那些语言开始朝向依赖类型的键入编程,自然问题是如何适应这种设置的多态性亚型。本文呈现依赖性隐式多态性微积分(λ_i〜(a)):具有多晶型亚型的简单依赖性型微积分。 λ_i〜(a)中的亚型关系概括了Odersky和Laeufer(1996)的众所周知的多态性亚型关系。因为λ_i〜(a)依赖性键入,所以积分在微积分中的亚型是非微不足道的。为了克服与依赖类型集成亚型的许多问题,微积分采用统一的亚型,这是一种统一键入和亚级的技术进入单个关系。此外,λ_i〜(a)采用显式投射而不是转换规则,允许自然支持不受限制的递归。我们证明了各种非琐碎的结果,包括统一亚型的型声音和传递。 λ_i〜(a)和所有相应的证据都在COQ定理证报书中机械化。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号