lean4环境安装

windows离线安装包

bash 复制代码
https://releases.lean-lang.org/lean4/v4.18.0/lean-4.18.0-windows.zip
工具 类比 职责
elan rustup(Rust)/ nvm(Node.js) Lean 版本管理器,负责安装、切换不同版本的 Lean 工具链
lean python / javac Lean 语言本体,编译器 + 交互式证明引擎,核心执行环境
lake cargo(Rust)/ maven(Java) Lean 包管理器 & 构建工具,管理依赖、编译项目、下载 Mathlib 等

典型调用关系:

复制代码
elan 安装并管理 → lean(工具链)
                         ↓
                   lake 调用 lean 来构建项目

即:先用 elan 装好 lean,再用 lake 管理具体项目。

wsl安装lean

bash 复制代码
# vscode 安装  Remote - WSL 插件
curl https://raw.githubusercontent.com/leanprover/elan/master/elan-init.sh -sSf | sh
source ~/.profile
elan default stable
lean --version
cd  /home/minglie/minglie/lean_prj
# 删除所有旧文件(包括错误下载的依赖)
rm -rf myproject Myproject .lake build Main.lean lakefile.toml lean-toolchain

# 在 lean_prj 目录下,创建名为 myproject 的 Mathlib 项目
lake new myproject math

# 进入正确的项目根目录(关键!)
cd myproject

# 拉取 Mathlib 及依赖(自动下载到 myproject/.lake)
lake update

# 构建项目(编译 Mathlib + 项目代码)
lake build

简单测试

创建 test.lean 文件

bash 复制代码
def main : IO Unit :=
   IO.println "Hello World"
bash 复制代码
minglie@DESKTOP-NTI9KM5:~$ lean --run test.lean
Hello World

Mathlib 验证

bash 复制代码
import Mathlib

-- 1. 基础定理检查
#check Nat.add_comm
#check Int.add_comm
#check Real.sqrt_nonneg

-- 2. 数论
#eval Nat.primeFactorsList 360      -- [2, 2, 2, 3, 3, 5]
#eval Nat.gcd 48 36                 -- 12
example : Nat.Prime 7 := by decide

-- 3. norm_num / ring 策略
example : (2 : ℝ) ^ 10 = 1024 := by norm_num
example (x y : ℝ) : (x + y) ^ 2 = x ^ 2 + 2 * x * y + y ^ 2 := by ring

-- 4. 集合 / 线性代数(有这些不报错说明 import 完整)
#check Finset.sum_comm
#check Matrix.det_transpose
相关推荐
A24207349307 小时前
TCP 三次握手与四次挥手:从原理到状态机一次讲清
前端
神仙别闹13 小时前
基于 C++ 实现(控制台)学生成绩管理系统
开发语言·c++
伞伞悦读13 小时前
【第36期】Python 目录与路径详解:pathlib、文件遍历、创建、复制、移动和删除风险
开发语言·python
GreenTea14 小时前
GrokBot 核心成员 Lauren Tan:每月交付 2000 个 PR 的人,是怎么用 AI 的
前端·后端·架构
mCell15 小时前
用 Knip 清理 AI Coding 留下的冗余代码
前端·ai编程·前端工程化
笃行35016 小时前
使用Rokid AIUI做了一个童年推箱子游戏
前端
2601_9669496516 小时前
只拿到股票代码还不够:量化程序到底还需要哪些标的信息?——从数据建模开始理解股票元数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
m0_7345717616 小时前
深入理解5g <十八>传输块tbsize的计算
开发语言·5g
excel17 小时前
前端加密的作用与使用场景
前端
RAN114267600818 小时前
1.3第一个程序的介绍
开发语言·qt