数学工具 Lean 学习路线图

第一阶段:环境搭建(1-2小时)

Lean 是运行在你电脑上的软件,需要先配置好环境。

步骤 操作 说明
1. 安装 VS Code 下载安装 Visual Studio Code 最佳的 Lean 编辑器
2. 安装 Git 下载安装 Git 用于下载项目和管理代码
3. 安装 Lean 4 通过 elan 安装 类似 Rust 的 rustup,自动管理 Lean 版本
4. 安装 VS Code 扩展 在 VS Code 中搜索 "Lean 4" 并安装 提供语法高亮、实时反馈等功能

安装命令速查

💡 网络提示:Mathlib 数学库约 4.5GB,首次下载较耗时。如果网络条件差,推荐先使用在线版本。


第二阶段:零基础快速入门(2-3小时)

如果你想快速上手、先体验再说,推荐以下两个在线资源------无需安装,打开浏览器即可开始:

资源 特点 适合人群
A Glimpse of Lean 2-3小时快速入门,无需注册 想立刻体验的急性子
tutorials4 手把手练习式教程,基于大一数学 喜欢边学边练

建议路径

  1. 先打开 A Glimpse of Lean 在线版(lean4web 服务器)

  2. 阅读 Introduction.lean 文件

  3. 跟随完成基础练习(约2小时)


第三阶段:系统学习(1-2周)

如果你决定认真学,并愿意花时间深入,以下是核心学习材料:

资源 特点 推荐顺序
Mathematics in Lean(数学中的 Lean) 首选教材,中文版可用,交互式学习 第1本
Theorem Proving in Lean 4 系统讲解 Lean 逻辑框架,类似"用户手册" 第2本(备查)
Formalising Mathematics(帝国理工课程) 2024年 Kevin Buzzard 授课,实战性强 作为补充练习

⚠️ 注意 :网上有些教程是基于 Lean 3 的,Lean 4 已完全不同。请确认学习资料是 Lean 4 版本。


第四阶段:进阶实战

当你掌握了基础,可以尝试参与真实的形式化项目:

资源 说明
Mathlib Lean 的官方数学库,正在持续扩充
Blueprint 模板 大型形式化项目的组织框架,Fermat 大定理等项目使用此模板
Zulip 聊天室 活跃的社区,遇到问题随时有人解答

知名 Lean 形式化项目(了解学习):

  • Fermat's Last Theorem(费马大定理)- Kevin Buzzard 领导

  • Polynomial Freiman-Ruzsa Conjecture - Terence Tao 参与

  • Prime Number Theorem(素数定理)


🌐 官方资源速查表

资源名称 网址 用途
Lean 官网 lean-lang.org 官方首页,下载入口
安装指南 lean-lang.org/install 各平台安装说明
Mathematics in Lean(中文) leanprover.cn/math-in-lean-zh 中文交互式教材
Lean 社区资源汇总 lean-lang.org/community 教程、文档合集
Zulip 中文聊天室 leanprover.zulipchat.com 提问、交流(中文友好)
Reservoir 资源平台 reservoir.lean-lang.org 课程、项目集合

📝 核心概念速览

在开始学习前,理解几个核心概念会很有帮助:

概念 解释
Lean 既是编程语言,也是定理证明器。你可以写代码,也可以证定理
Mathlib Lean 的官方数学库,包含了大量已形式化的数学定理
Lake Lean 的包管理器,用于创建和管理 Lean 项目
Tactics(策略) 告诉 Lean "如何证明"的命令,是写证明的核心方式
Elan Lean 的版本管理器,类似 Python 的 conda

两种证明方式对比(来自 Mathematics in Lean):

lean

复制代码
-- 直接构造证明项(复杂但紧凑)
example : ∀ m n : Nat, Even n → Even (m * n) := 
  fun m n ⟨k, hk⟩ ↦ ⟨m * k, by rw [hk, mul_add]⟩

-- 使用策略(清晰、交互式、推荐新手)
example : ∀ m n : Nat, Even n → Even (m * n) := by
  rintro m n ⟨k, hk⟩
  use m * k
  rw [hk]
  ring

💡 学习建议

  1. 边学边写,不要只看:Lean 的学习曲线较陡,必须在 VS Code 中动手敲代码才能体会

  2. 善用 Zulip:遇到问题立刻去问,社区非常友好

  3. 从简单开始 :先完成 00FirstProofs.lean 这样的入门练习

  4. 不要过早碰大型项目:先精通基础

  5. 中文资源可用Mathematics in Lean 有完整中文版


一句话总结:lean-lang.org 安装,打开 Mathematics in Lean 中文版 一边读一边练,遇到问题上 Zulip 问。