Lean 4 fork for HoTT-compatible kernel extensions (Path types, transport, HITs). Maintained against upstream leanprover/lean4.
This PR improves the the `Sym.simp` APIs. It is now easier to reuse the simplifier cache between different simplification steps. We use the APIs to improve the benchmark at #12100. ### Symbolic simulation with simplifier cache reuse (SymM) Problem size `n` corresponds to a program with `2·n + 2` instructions. | n | Tactic time (ms) | Kernel time (ms) | |-----|------------------|------------------| | 10 | 4.53 | 4.29 | | 20 | 5.56 | 6.91 | | 30 | 6.46 | 8.67 | | 40 | 8.07 | 11.20 | | 50 | 9.37 | 13.63 | | 60 | 11.89 | 15.43 | | 70 | 12.43 | 18.28 | | 80 | 14.07 | 20.72 | | 90 | 15.62 | 23.41 | | 100 | 17.39 | 24.80 | | 200 | 30.35 | 48.39 | | 300 | 45.41 | 72.84 | | 400 | 59.17 | 97.67 | | 500 | 79.63 | 138.99 | | 600 | 100.05 | 173.67 | | 700 | 119.77 | 208.80 | <img width="571" height="455" alt="image" src="https://github.com/user-attachments/assets/70da7ea2-b5d2-405e-985c-bfa358455afc" /> |
||
|---|---|---|
| .claude | ||
| .github | ||
| doc | ||
| images | ||
| releases_drafts | ||
| script | ||
| src | ||
| stage0 | ||
| tests | ||
| .gitattributes | ||
| .gitignore | ||
| .gitpod.Dockerfile | ||
| .gitpod.yml | ||
| .ignore | ||
| CMakeLists.txt | ||
| CMakePresets.json | ||
| CODEOWNERS | ||
| CONTRIBUTING.md | ||
| flake.lock | ||
| flake.nix | ||
| lean-toolchain | ||
| lean.code-workspace | ||
| LICENSE | ||
| LICENSES | ||
| README.md | ||
| RELEASES.md | ||
This is the repository for Lean 4.
About
- Quickstart
- Homepage
- Theorem Proving Tutorial
- Functional Programming in Lean
- Documentation Overview
- Language Reference
- Release notes starting at v4.0.0-m3
- Examples
- External Contribution Guidelines
Installation
See Install Lean.
Contributing
Please read our Contribution Guidelines first.
Building from Source
See Building Lean.