我将如何学习Coq证明助手的基础理论?


Answers:


32

Coq参考手册pdf)是一个起点。第4章介绍了Coq的基本逻辑,最终所有内容都基于此。这被称为(共)归纳构造的演算,许多论文对此进行了描述。上Coq'Art书《交互式定理证明和程序开发》,可以更轻松但又不便宜地介绍Coq。

要了解策略如何工作,请看一下之前的问题:“策略”在证明助手中如何工作?

要建立所需的理论,您需要学习类型理论。与证明助手所依据的理论最紧密相关的可能是PerMartin -Löf的《直觉类型论》笔记(或书籍)或《Programming inMartin-LöfType Theory》一书,这实际上是关于编写和证明类型论中的定理。可以从Pierce的类型和编程语言中获得关于类型理论的编程语言观点。吉拉德(Girard)等人的《证明和类型》Proofs and Types)也解决了库里·霍华德(Curry-Howard)信件的重要性,是另一本很好的参考书。然后,您可能已经完全准备好阅读Coquand和Huet的结构的微积分。最后,在Coq手册的后面找到一些参考。

还有其他证明助手,HOL,NuPRL,Mizar,Twelf等,它们也有其理论,因此您可以通过沿该方向阅读来学习很多。

最后,要了解证明助手的历史和未来,请查看Herman Geuvers 的最新文章


5
不错的清单。我将添加阅读顺序。皮尔斯的TAPL涵盖了背景;除非您精通打字规则,否则其余大部分将无意义。ATTAPL的第2章相对温和地介绍了依赖类型。然后,您可以阅读Coq手册的第4章,其中包含键入规则(您需要检查参考书目中的一些高级内容,例如递归的确切规则)。同时,Coq'Art书具有更实际的前景。奖金提示:Show Tree以Coq。
吉尔(Gilles)'所以

2
我的位置与OP大致相同,但相距甚远。经过一些实验,我终于找到了顺序1)学习函数式编程2)阅读TAPL 3)了解ATTAPL中的依赖类型以使其比其他方法更好地工作。很高兴知道我在正确的道路上。
约翰·萨尔瓦捷

1
我也是在这里,拿到了Coq'Art书。它绝对是理解的完美之选,他们会详细研究每种策略并说明何时以及如何使用它。本书还指导您快速学习类型理论中的每个基本规则,教您如何书写符号以及如何在Coq中使用它。爱这本书。
Lance Pollard



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.