AI4Math · Invited Talk 05 · Yinya Huang

来源: Invited Talk 05 · Yinya Huang 播客: ICML 2026 · AI4Math 分类: AI 研究 原文发表: 2026-07-11 纪要生成: 2026-07-13

基本信息

一句话概括

针对 LLM 定理证明的"非形式—形式鸿沟",从两端发力:其一,用依赖感知(dependency-aware)的 premise selection——借 Lean Blueprint 项目的丰富依赖数据,去够到稀有/新颖前提;其二,为自动形式化的忠实性建立细粒度错误分类(28 类)与四子任务评测(判定→归类→定位→纠正),并发现1.7B 小模型经训练即可胜任评测

背景与动机

核心问题:如何验证非形式证明

理想场景:用 LLM 做端到端自然语言定理证明——给一个非形式问题(如 Erdős 问题),喂给 LLM,希望它给出非形式证明,然后判断其正确,从而"用 LLM 成功解决了开放问题"。但如何验证这个非形式证明?现状:要么请数学专家看、要么用很花哨的 LLM-as-judge。可是我们并不总有数学专家,也不总信任 LLM judge。

一个常见解法:把非形式证明在一定程度上形式化(如到 Lean),则可验证。另一问题:端到端自然语言推理时,如何控制逐步推理过程?形式路径给出思路——从最开始就把问题形式化为形式陈述,再用 LLM 形式证明技术(如 premise selection、proof search)得到形式证明,则逐步推理与最终证明都可验证。但这条流水线里有一个形式化步骤,由此产生两大主问题:(1) 如何保证形式化是忠实的;(2) 在"非形式问题"场景下,如何应用这些形式证明技术、如何联结形式与非形式各自优势。

主要内容(线一):依赖感知的 Premise Selection

问题:够不到稀有/新颖前提

解开放问题(如 Erdős 问题)或新提出的猜想时,常需要新颖前提——这些前提新、模型很少见过。相关工作 LeanDojo、miniCTX 观察到:当证明需要"搜索空间中不常见的新颖前提"时,模型通常吃力;而当特意给出相关前提与额外上下文信息(自然语言注释、或同文件中结构类似的其他证明)时,模型表现会提升,尤其对重依赖定理的问题(如 PFR 猜想,polynomial Freiman–Ruzsa conjecture)。

现有 premise selection 的三点局限

当前 premise selection 通常从 mathlib 训练、以"定理语义相似"为目标,这忽略了:

  1. 新颖前提在库中稀疏分布,选择器很难找到;
  2. 相关前提被当作彼此孤立、独立的正例(用对比学习把每个相关前提与对应负例区分),但也许应把相关正例放在一起看,从中找到有用训练信号;
  3. 若查询(如开放问题)超出 mathlib 训练集范围,选择器如何仍有用?

一个答案:真正利用 mathlib 中丰富的依赖关系,而不仅看每个节点/定理的语义。

数据来源:Lean Blueprint 依赖图

另有一个含大量"新定理依赖"的资源——Lean Blueprint 项目:数学专家写下互相交叉引用的定理、以 LaTeX 写、用于证明新猜想;写时会把每个定理逐点形式化以便在 Lean 实现。借 blueprint 工具,这些 LaTeX 定理会自动转成一个有向无环图(DAG),图记录了这些"新定理依赖",每个节点记录定理的 LaTeX 版本、以及(若专家已形式化的)配对 Lean 代码。于是 blueprint 提供了自然语言的丰富上下文、作为 mathlib 的补充;而且有趣的是这些 blueprint 依赖能通过"共享的形式定理"与 mathlib 相接——这给了"用依赖数据训练选择器、以应对新颖/罕见前提"的机会。

数据规模:先尽量挖掘线上开源 blueprint 项目,再用规则过滤掉无意义/低质项目,最终得 53 个项目、约 3800 定理、约 4600 依赖。其中约 30% 节点未形式化(无 Lean 版、只有 LaTeX 描述),但它们仍有依赖,故仍在训练中利用、并把其非形式语义编码为训练特征。

训练:两阶段依赖感知对比学习

评测

评测集含团队自建的多个数据集:用 mathlib 4.22.0,自定义划分出 mathlib-randommathlib-held-out(held-out 的查询全来自训练未见的文件);还有 dep-collection(从开源 Lean 训练集收集查询、候选也从 mathlib 抽)与 dep-blueprint(测从 blueprint 的选择)。结果:

主要内容(线二):自动形式化的忠实性评测

问题:形式化可能不忠实,且缺评测工具

回到"用形式化帮助非形式证明"这条流水线,其自动形式化不总被保证忠实。问题:如何评价"忠实性"、如何判断自动形式化中形式与非形式两部分是否对齐?因为即使人类专家也会下意识犯错——例如在广泛使用的 PutnamBench 中就存在一些小错误。

"对齐(alignment)"的含义:形式陈述需保留自然语言陈述里的所有数学约束、保持相同逻辑、且不引入自然语言中没有的额外约束。但我们缺乏检测并纠正这类错位的评测器/工具:现有手段要么借神经机器翻译的现成指标(tree edit distance、BLEU),要么只看"形式化部分是否过 Lean";也在尝试用神经模型给错位打分,但当前只能判"是否对齐",无法告诉你:错在哪个确切位置、是哪一类错误、以及如何纠正

方法:28 类错误 + 四子任务

本工作定义了一套全面的错位错误类型,含语义(semantic)、约束(constraint)、实现(implementation)三大类:

数据:从多个已有数据集/基准取得一批对齐的种子数据,再用 LLM 注入错位,最终得含训练集 + held-out 测试集的大规模数据集。

发现

收束

关键结论 / Takeaways

Q&A / 讨论亮点

名词 / 引用

原文发表:2026-07-11  ·  纪要生成:2026-07-13