This article presents a bidirectional type system for the Calculus of Inductive Constructions (CIC). It introduces a new judgement intermediate between the usual inference and checking, dubbed constrained inference, to handle the presence of computation in types. The key property of the system is its completeness with respect to the usual undirected one, which has been formally proven in Coq as a part of the MetaCoq project. Although it plays an important role in an ongoing completeness proof for a realistic typing algorithm, the interest of bidirectionality is wider, as it gives insights and structure when trying to prove properties on CIC or design variations and extensions. In particular, we put forward constrained inference, an intermediate between the usual inference and checking judgements, to handle the presence of computation in types.
翻译:本条为感化构造的计算法提供了一个双向型系统。 它在通常的推理和检查之间引入了一种新的判断中间介于通常的推理和检查之间,被称作有节制的推理,以处理各种类型的计算。 系统的关键属性是它相对于通常的非推理的推理的完整性,这一点在Coq项目中作为MetaCoq项目的一部分在Coq项目中得到正式证明。 虽然它对于现实的打字算法的不断完整性证明起着重要作用,但双向性的兴趣更为广泛,因为它在试图证明CIC或设计变异和扩展的属性时提供了洞察力和结构。 特别是,我们提出了限制推理,即通常推理和校准判断之间的中间,处理类型中的计算。