如何在 Coq 中获得更好的证明风格?

How to get a better proof style in Coq?

我正在学习如何使用 Coq。而现在,我几乎可以证明我遇到的所有小定理。我对自己的水平很满意,尽管我还有很多进步要取得。但是,我的证明通常很长而且很混乱。他们不是很清楚阅读,我想在这一点上做得更好。是否有一些资源可供阅读或观看以执行此操作?我怎样才能提高校样的质量?

你会在很多方面取得很大进步:

  • 阅读书籍和教程以及其中包含的建议和示例(您将在 Coq 的页面中找到列表)
  • 阅读图书馆校样并尝试使用您将找到的模式。您可以发明 self-corrected 练习:例如自己证明列表、算术等的引理,并将您的证明与图书馆中现有的证明进行比较。
  • 使用一些工具可以更轻松地编写可读和结构化的证明脚本(mathcomp/ssreflect 策略、项目符号等)
  • (像您一样)提出有关样式和证明脚本结构和大小的问题。

请注意,在如此广泛使用的证明助手中,现在存在各种证明样式(不一定兼容),您必须先查看其中的几种,然后才能选择最适合您的项目和偏好的一种。