当前位置: X-MOL 学术J. Autom. Reason. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Hammer for Coq: Automation for Dependent Type Theory
Journal of Automated Reasoning ( IF 0.9 ) Pub Date : 2018-02-27 , DOI: 10.1007/s10817-018-9458-4
Łukasz Czajka 1 , Cezary Kaliszyk 1
Affiliation  

Hammers provide most powerful general purpose automation for proof assistants based on HOL and set theory today. Despite the gaining popularity of the more advanced versions of type theory, such as those based on the Calculus of Inductive Constructions, the construction of hammers for such foundations has been hindered so far by the lack of translation and reconstruction components. In this paper, we present an architecture of a full hammer for dependent type theory together with its implementation for the Coq proof assistant. A key component of the hammer is a proposed translation from the Calculus of Inductive Constructions, with certain extensions introduced by Coq, to untyped first-order logic. The translation is “sufficiently” sound and complete to be of practical use for automated theorem provers. We also introduce a proof reconstruction mechanism based on an eauto-type algorithm combined with limited rewriting, congruence closure and some forward reasoning. The algorithm is able to re-prove in the Coq logic most of the theorems established by the ATPs. Together with machine-learning based selection of relevant premises this constitutes a full hammer system. The performance of the whole procedure is evaluated in a bootstrapping scenario emulating the development of the Coq standard library. For each theorem in the library only the previous theorems and proofs can be used. We show that 40.8% of the theorems can be proved in a push-button mode in about 40 s of real time on a 8-CPU system.

中文翻译:

Coq 之锤:依赖类型理论的自动化

Hammers 为当今基于 HOL 和集合论的证明助手提供了最强大的通用自动化。尽管类型理论的更高级版本越来越受欢迎,例如基于归纳结构演算的那些,但迄今为止,由于缺乏翻译和重建组件,为此类基础构建锤子一直受到阻碍。在本文中,我们展示了一个用于依赖类型理论的完整锤子架构及其在 Coq 证明助手中的实现。锤子的一个关键组成部分是从归纳构造微积分(带有 Coq 引入的某些扩展)到无类型一阶逻辑的拟议翻译。翻译“足够”合理且完整,可用于自动定理证明器的实际用途。我们还介绍了一种基于 eauto 类型算法的证明重建机制,结合有限重写、同余闭包和一些前向推理。该算法能够在 Coq 逻辑中重新证明 ATP 建立的大部分定理。连同基于机器学习的相关前提选择,这构成了一个完整的锤子系统。整个过程的性能在模拟 Coq 标准库开发的引导场景中进行评估。对于库中的每个定理,只能使用以前的定理和证明。我们表明,在 8-CPU 系统上,40.8% 的定理可以在大约 40 秒的实时按钮模式下得到证明。该算法能够在 Coq 逻辑中重新证明 ATP 建立的大部分定理。连同基于机器学习的相关前提选择,这构成了一个完整的锤子系统。整个过程的性能在模拟 Coq 标准库开发的引导场景中进行评估。对于库中的每个定理,只能使用以前的定理和证明。我们表明,在 8-CPU 系统上,40.8% 的定理可以在大约 40 秒的实时按钮模式下得到证明。该算法能够在 Coq 逻辑中重新证明 ATP 建立的大部分定理。连同基于机器学习的相关前提选择,这构成了一个完整的锤子系统。整个过程的性能在模拟 Coq 标准库开发的引导场景中进行评估。对于库中的每个定理,只能使用以前的定理和证明。我们表明,在 8-CPU 系统上,40.8% 的定理可以在大约 40 秒的实时按钮模式下得到证明。对于库中的每个定理,只能使用以前的定理和证明。我们表明,在 8-CPU 系统上,40.8% 的定理可以在大约 40 秒的实时按钮模式下得到证明。对于库中的每个定理,只能使用以前的定理和证明。我们表明,在 8-CPU 系统上,40.8% 的定理可以在大约 40 秒的实时按钮模式下得到证明。
更新日期:2018-02-27
down
wechat
bug