This article presents a bidirectional type system for the Calculus of Inductive Constructions (CIC). It introduces a novel judgement intermediate between the usual inference and checking, dubbed constrained inference, to handle the presence of computation in types. The key property is the completeness of the system with respect to the usual undirected one, which has been formally proven in Coq as a part of the MetaCoq project. Although it plays a central role in an ongoing completeness proof for a realistic typing algorithm, the interest of bidirectionality is much wider, as it clarifies previous works in the area and gives strong insights and structure when trying to prove properties on CIC or design variations and extensions.
翻译:本条为感化构造的计算法(CIC)提供了一个双向类型系统,它引入了一种在通常的推论和检查(所谓受限制的推论)之间的新判断中间介于通常的推论和检查(称为受限制的推论)之间,以处理各种类型的计算。关键财产是系统对于通常的非推论的完整性,这种完整性在Coq项目中作为MetaCoq项目的一部分在Coq项目中得到了正式证明。虽然它在不断为现实的打字算法提供完整性证明方面发挥了核心作用,但双向性的兴趣要大得多,因为它澄清了该地区以前的工程,并在试图证明CIC或设计变异和扩展的特性时提供了强烈的洞察力和结构。