[论文解读] Automatically Proving Mathematical Theorems with Evolutionary Algorithms and Proof Assistants
本文提出了一种新颖的框架,将进化算法与证明助手——特别是 Coq——相结合,以自动生成并验证数学定理的形式化证明。通过将证明策略编码为通过简单遗传算法进化得到的整数序列,并在 Coq 中评估这些序列,该方法成功证明了十个无法仅靠 Coq 内置的 'auto' 策略解决的非平凡定理,证明了通过进化搜索实现自动化定理证明的可行性。
Mathematical theorems are human knowledge able to be accumulated in the form of symbolic representation, and proving theorems has been considered intelligent behavior. Based on the BHK interpretation and the Curry-Howard isomorphism, proof assistants, software capable of interacting with human for constructing formal proofs, have been developed in the past several decades. Since proofs can be considered and expressed as programs, proof assistants simplify and verify a proof by computationally evaluating the program corresponding to the proof. Thanks to the transformation from logic to computation, it is now possible to generate or search for formal proofs directly in the realm of computation. Evolutionary algorithms, known to be flexible and versatile, have been successfully applied to handle a variety of scientific and engineering problems in numerous disciplines for also several decades. Examining the feasibility of establishing the link between evolutionary algorithms, as the program generator, and proof assistants, as the proof verifier, in order to automatically find formal proofs to a given logic sentence is the primary goal of this study. In the article, we describe in detail our first, ad-hoc attempt to fully automatically prove theorems as well as the preliminary results. Ten simple theorems from various branches of mathematics were proven, and most of these theorems cannot be proven by using the tactic auto alone in Coq, the adopted proof assistant. The implication and potential influence of this study are discussed, and the developed source code with the obtained experimental results are released as open source.
研究动机与目标
- 探究将进化算法作为证明生成器、证明助手作为证明验证器用于自动化定理证明的可行性。
- 探索诸如进化算法等随机性全局搜索方法是否能有效探索 Coq 中的形式化证明空间。
- 评估该混合方法是否能够证明那些无法通过 Coq 中标准自动化策略(如 'auto')解决的定理。
- 为未来能够通过计算证明搜索实现众包式自动化数学知识积累的系统奠定基础。
提出的方法
- 进化算法生成代表 Coq 中潜在策略序列的整数序列。
- 每个整数序列被解释为一个证明脚本,并由 Coq 证明助手评估其正确性。
- 适应度评估由 Coq 的类型检查器执行,以验证生成的证明脚本是否成功证明目标定理。
- 该算法采用简单的遗传编程方法,不包含高级机制,专注于证明的有效性而非证明长度或效率。
- 该框架利用 Curry-Howard 同构,将证明视为程序,并通过在 Coq 中的程序求值来验证其正确性。
- 该系统设计具有可扩展性,未来计划包括运行时状态检查以及集成蒙特卡洛树搜索。
实验结果
研究问题
- RQ1进化算法能否有效探索证明助手(如 Coq)中的形式化证明空间?
- RQ2该方法能否自动证明那些无法通过 Coq 中的标准自动化策略(如 'auto')解决的定理?
- RQ3当与证明助手的验证能力结合时,使用简单进化算法生成正确证明的可行性如何?
- RQ4证明助手如何通过实时反馈证明状态来引导进化搜索?
- RQ5此类框架对自动化积累数学知识的长期潜在影响是什么?
主要发现
- 该框架成功证明了来自数学不同分支的十个定理,这些定理仅靠 Coq 的 'auto' 策略无法证明。
- 进化算法生成了被 Coq 正确验证的有效证明脚本,证明了该方法的可行性。
- 证明在未预先知晓解空间的情况下生成,表明进化过程能够发现非平凡的证明路径。
- 结果表明,进化算法可作为形式化证明空间中的有效搜索机制,尤其在与证明助手的正确性保证结合时。
- 该方法为通过计算证明搜索实现自动化、众包式数学知识积累开辟了新路径。
- 作者得出结论:将进化算法与证明助手结合是未来自动化定理证明研究的有前景方向。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。