技术深度解析
Lean-Gym的核心是一个适配器。它位于强化学习智能体与Lean 4内核之间,将动作(提议的证明步骤)翻译为Lean命令,并将观察结果(证明状态)转换为神经网络可处理的格式。环境状态本质上是Lean的`TacticState`,包含所有当前目标、假设和局部上下文。智能体的动作空间由有效的Lean策略(例如`intro h`、`apply h1`、`simp at h2`)或更强大的、调用经过训练的语言模型生成策略字符串的指令组成。
奖励函数是塑造学习过程的关键设计选择。Lean-Gym可提供稀疏奖励(仅在完成证明时)或塑形奖励(例如,为减少剩余目标总数提供小额正向奖励,为调用昂贵策略提供负向奖励)。这带来了在长序列推理步骤中进行信用分配的经典强化学习挑战。
在架构上,该系统使用Lean的`Elab`框架进行元编程。当智能体提交一个策略时,Lean-Gym使用`Elab.runTactic`在当前目标上执行它,随后将生成的新`TacticState`序列化。一个关键的技术障碍是状态表示:如何将复杂的树状结构证明状态输入神经网络。常见方法包括将状态线性化为字符串,或使用图神经网络捕捉假设与目标之间的关系结构。
该项目与LeanDojo生态系统紧密相连,这是一个用于在Lean中进行定理证明的开源工具包。LeanDojo提供了以编程方式与Lean交互、从Mathlib等现有证明库中挖掘训练数据以及评估模型所必需的基础设施。几个关键的GitHub仓库构成了该研究领域的支柱:
* `lean-gym`:OpenAI提供核心Gym接口的仓库。
* `lean-dojo`:用于数据提取和交互的基础工具包,已获得超过1.2k星标。
* `ProofNet`:一个从Mathlib提取的包含371个多样化本科水平定理陈述的基准数据集,旨在评估自回归定理证明器。
* `llm-step`:一个展示如何在Lean-Gym框架内使用GPT-4等大型语言模型建议单个证明步骤的项目。
主要在ProofNet数据集上的早期基准测试结果揭示了当前的前沿水平。纯粹的基于检索的方法(搜索现有证明)成功率很低。经过微调的语言模型,例如通过少量提示指令的CodeLlama变体或GPT-3.5 Turbo,显示出潜力,但在证明长度和新颖性方面存在困难。
| 方法 | 模型/方法 | ProofNet Pass@1 (%) | 关键局限 |
|---|---|---|---|
| 检索 | 基于Mathlib的k-NN | ~5% | 无法泛化到未见过的定理结构 |
| 微调LM | CodeLlama 7B (微调) | ~21% | 生成的策略看似合理但经常错误或不完整 |
| 大规模LLM | GPT-4 (少量提示) | ~29% (估计) | 成本高,非确定性,无法从在线反馈中学习 |
| RL智能体 (假设) | 在Lean-Gym上使用PPO | 不适用 (活跃研究) | 需要大量模拟,奖励塑形非易事 |
数据要点: 当前Lean中自动定理证明的最先进技术严重依赖于以引导式、逐步(工具使用)方式使用的大型预训练语言模型。纯粹的从零开始的强化学习仍然是一个遥远的目标,突显了该问题的样本效率低下。
关键参与者与案例研究
形式化数学的机器学习领域是企业研究实验室与学术机构之间合作竞争的结果。OpenAI携Lean-Gym入场,是直接进入了由他人开创的领域。
Google DeepMind 凭借其AlphaGeometry系统一直是主导力量,该系统解决了30个奥林匹克级别几何问题中的25个。虽然不基于Lean,但它展示了一种混合神经符号架构:神经语言模型预测新的几何构造,符号演绎引擎详尽地推导结果。这种蓝图——符号搜索的神经引导——直接适用于Lean-Gym范式。
微软研究院 是Lean本身的大本营。像Leonardo de Moura(Lean和Z3的创造者)和Sebastian Ullrich(Lean 4的首席开发者)这样的研究人员构建了使Lean-Gym等项目成为可能的基础设施。他们在Coprover上的工作探索了使用语言模型为Lean生成证明草图,这是交互式智能体方法的前身。
学术联盟: `lean-dojo` 项目由加州理工学院、纽约大学和华盛顿大学的研究人员领导。这个团队在创建标准化评估的数据管道和基准(ProofNet)方面发挥了关键作用。他们的工作强调可重复性和开放科学,与企业封闭的大规模实验形成了制衡。