当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Gradualizing the Calculus of Inductive Constructions
arXiv - CS - Programming Languages Pub Date : 2020-11-20 , DOI: arxiv-2011.10618
Meven Lennon-Bertrand, Kenji Maillard, Nicolas Tabareau, Éric Tanter

Acknowledging the ordeal of a fully formal development in a proof assistant such as Coq, we investigate gradual variations on the Calculus of Inductive Construction (CIC) for swifter prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial tradeoff between graduality and the key properties of normalization and closure of universes under dependent product that CIC enjoys. Beyond this Fire Triangle of Graduality, we explore the gradualization of CIC with three different compromises, each relaxing one edge of the Fire Triangle. We develop a parametrized presentation of Gradual CIC that encompasses all three variations, and develop their metatheory. We first present a bidirectional elaboration of Gradual CIC to a dependently-typed cast calculus, which elucidates the interrelation between typing, conversion, and the gradual guarantees. We use a syntactic model into CIC to inform the design of a safe, confluent reduction, and establish, when applicable, normalization. We also study the stronger notion of graduality as embedding-projection pairs formulated by New and Ahmed, using appropriate semantic model constructions. This work informs and paves the way towards the development of malleable proof assistants and dependently-typed programming languages.

中文翻译:

逐步归纳构造微积分

承认在诸如Coq之类的证明助手中进行正式开发的艰辛之举,我们研究了归纳构造微积分(CIC)的逐步变化,以实现不精确类型和术语的快速原型制作。我们通过一个不定理观察到CIC所享有的依存积下的渐进性与宇宙的归一化和封闭的关键属性之间的关键权衡。除了这个渐近的Fire Triangle之外,我们还将探索CIC的渐进式发展,其中包括三个不同的折中方案,每个方案都放宽了Fire Triangle的一个边缘。我们开发了包含所有三个变体的渐变CIC的参数化表示,并发展了它们的元理论。我们首先介绍了渐进CIC到双向依赖类型转换演算的双向阐述,它阐明了键入,转换,和逐步的保证。我们在CIC中使用语法模型来告知设计安全,合流的归约,并在适用时建立归一化。我们还使用适当的语义模型构造来研究由New和Ahmed提出的嵌入-投影对作为渐变的更强概念。这项工作为开发可延展的证明助手和依赖类型的编程语言铺平了道路。
更新日期:2020-11-25
down
wechat
bug