lean-physics · git:20261028.63a9d5a · 2026-10-28 · sha256 6928f2fb25ed8b2c
lean-physics git:20261028.63a9d5aA
Immutable. This exact content never changes and is served at /api/v1/blob/6928f2fb25ed8b2c.
--- name: lean-physics description: 用 Lean 4、mathlib 与 physlib 形式化数学或物理命题、复用定理并检查证明与依赖公理;适用于量子信息、Pauli 矩阵与物理推导的形式化审计。 --- # Lean 数学与物理证明 <!-- BEGIN NATIVE SDK ACCESS --> ## 原生 SDK 路径 本能力使用 **Lean 4 / mathlib / physlib 的原生公开 API**。用户需要 数学与物理命题、Pauli 矩阵关系、量子信息定理与依赖公理审计 时,由 Agent 在固定依赖环境中编写和运行任务代码。 使用 `node scripts/sdk-access.mjs inspect lean-physics` 定位环境,按[完整 SDK 工作流](../quantum-sdk-workbench/references/workflow.md)执行。模块导航:`Mathlib`、`Physlib`、`QuantumInfo`;导航不是 API 白名单。 固定兼容的 Lean 4.35.0 与 Lake 依赖锁;显式准备导入闭包。形式证明仅覆盖给定定义和假设,不代表真实物理或科学验收。 本入口复用宿主文件与代码工具,没有新增通用执行 Tool。原生 SDK 受上游版本、可选依赖、宿主资源与用户授权约束。已禁用或被拒绝的动作不能借代码路径绕过。执行状态和科研验收分别报告。 <!-- END NATIVE SDK ACCESS --> ## 选择与边界 当用户要检查形式推导、定义中的假设或复用已有定理时使用。本 Skill 复用宿主文件与代码工具, 没有专用证明 Tool 或 MCP Server。数值模拟继续使用对应量子 SDK;Lean 接受证明项不表示 形式定义符合真实物理系统,也不验证数值实现、硬件或科研结论。科学状态保持 `not_evaluated`。 ## 固定环境与准备 使用 `node scripts/sdk-access.mjs inspect lean-physics` 只读定位环境。Lean/Lake 为 **4.35.0**, mathlib 为 `56a005855ea17e0b0958f73ec801ae140b0a1679`,physlib 为 `6fd50cbcfafb503e4b96435e49bedb0e220f09e2`,间接依赖见 [Lake 锁](lake-manifest.json)。 三者作为兼容组升级;不能单独改工具链或取另一个提交的缓存。 显式准备前指定 `OPENQUANTUM_LEAN_BIN` 为该版本实际 Lean 可执行文件的绝对路径, `OPENQUANTUM_LEAN_ENV_ROOT` 为本任务环境目录;需要工具链时从官方 release 获取并核对摘要。 不修改全局 elan、编辑器或已有用户 Lean 项目。遵守宿主安装授权、资源预算与外置盘规则。 `node scripts/setup-sdk.mjs lean-physics` 下载固定源码、按示例的导入闭包获取 mathlib 缓存并构建 [小型证明](OpenQuantumProofs.lean);源代码、构建及缓存均留在指定环境。预计需要数 GiB,先检查空间。 默认仅准备示例的导入闭包,不声称已编译全部 Mathlib、Physlib 或 QuantumInfo。 准备后重新 inspect;只使用返回的绝对 `run.command` 与 `run.environment.LEAN_PATH` 检查保存到 用户工作区的 `.lean` 文件。执行不经 elan/Lake 自动下载。缺少其他模块的编译产物时,先用同目录 工具链在 `leanProject.directory` 显式运行 `lake exe cache get <module>`、`lake --no-cache build <module>`, 保留相同依赖锁与本地缓存目录,再继续证明检查;模块导航不是功能白名单。 准备拒绝覆盖已有模板或依赖源码修改;版本变化请保留旧环境,指定新的环境根目录。 ## 证明工作流 1. 明确待证命题、定义域、单位/归一化、有限维或无限维等假设。先查固定版本源码中的定义和已有定理。 新物理假设若改变结论,向用户给出具体取舍;不要为让证明通过偷偷弱化目标。 2. 把命题写为具名 `theorem`,先用小型独立命题检查导入和记号。优先直接复用已有定理与内核可检查证明。 3. 在保存文件上运行 Lean,保留完整错误/警告。错误命题必须报错;退出码为零仍需检查 `sorry` 警告。 4. 对每个交付定理运行 `#print axioms <name>`,检查包括间接依赖的 `sorryAx`、自定义公理、 `Lean.ofReduceBool` 等非内核计算信任边界。允许的 `propext`、`Classical.choice`、`Quot.sound` 也须如实列出。禁止以 `sorry`、`admit` 或新公理绕过目标后宣称证明完成。 5. 保存源文件、原始目标/假设、命令、Lean版本、依赖完整 SHA、输出及公理列表。 分开报告环境准备、文件编译、目标证明与科学验收;额外公理或未闭合目标明确标为未完成。 physlib 合并了 PhysLean 与 Lean-QuantumInfo,`PhyslibAlpha` 另有较弱的维护/审阅约定。 本示例不导入 Alpha,不把上游全库或所有平台称为本项目已验证。 ## 来源与许可 - [Lean 4 v4.35.0](https://github.com/leanprover/lean4/releases/tag/v4.35.0),Apache-2.0。 - [mathlib 固定源码](https://github.com/leanprover-community/mathlib4/tree/56a005855ea17e0b0958f73ec801ae140b0a1679),Apache-2.0。 - [physlib 固定源码](https://github.com/leanprover-community/physlib/tree/6fd50cbcfafb503e4b96435e49bedb0e220f09e2),Apache-2.0。 - [Pauli 矩阵定义及定理](https://github.com/leanprover-community/physlib/blob/6fd50cbcfafb503e4b96435e49bedb0e220f09e2/Physlib/Relativity/PauliMatrices/Basic.lean)。 这里只提供项目模板及指南,不把完整上游库复制入插件。准备所得源码保留各自许可证。