Lean 4 fork for HoTT-compatible kernel extensions (Path types, transport, HITs). Maintained against upstream leanprover/lean4.
This combines a few platform-related changes: * Add a ternary `platformIndependent` Lean configuration option to assert whether Lake should assume Lean code is platform-independent. If `true`, Lake will exclude platform-independent objects like external libraries or dynlibs created through `precompileModules` from module traces. If `false`, Lake will add the platform to module traces. If `none` (the default), Lake will retain the current behavior (modules are platform-dependent if and only if it depends on native objects). * Use `System.Platform.target` from #3207 as the platform descriptor in Lake for the configuration file trace, the cloud release archive, and as the platform trace in Lean modules and native artifacts (e.g., object files, and static and shared libraries). * Do not add the platform descriptor into custom build archive names (i.e., a user-set `buildArchive` configuration). This allows users to create cross-platform / platform-independent archives via a name override should they so desire. Closes #2754. |
||
|---|---|---|
| .github | ||
| doc | ||
| images | ||
| nix | ||
| script | ||
| src | ||
| stage0 | ||
| tests | ||
| .gitattributes | ||
| .gitignore | ||
| .ignore | ||
| CMakeLists.txt | ||
| CODEOWNERS | ||
| CONTRIBUTING.md | ||
| default.nix | ||
| flake.lock | ||
| flake.nix | ||
| lean-toolchain | ||
| lean.code-workspace | ||
| LICENSE | ||
| LICENSES | ||
| README.md | ||
| RELEASES.md | ||
| shell.nix | ||
This is the repository for Lean 4.
About
- Quickstart
- Homepage
- Theorem Proving Tutorial
- Functional Programming in Lean
- Manual
- Release notes starting at v4.0.0-m3
- Examples
- External Contribution Guidelines
- FAQ
Installation
See Setting Up Lean.
Contributing
Please read our Contribution Guidelines first.
Building from Source
See Building Lean.