Lean 4 fork for HoTT-compatible kernel extensions (Path types, transport, HITs). Maintained against upstream leanprover/lean4.
Find a file
Paul Reichert f15d531acb
refactor: reduce omega's dependency on fvar IDs (#9723)
This PR replaces some `HashSet Expr`-typed collections of facts in
`omega`'s implementation with plain lists. This change makes some
`omega` calls faster, some slower, but the advantage is that `omega`'s
performance is more independent the state of the name generator that
produces fvar IDs.

I've created this PR for discussion and am happy to hear opinions on
whether this should be merged or not. A good reason *not* to merge is
that it causes regressions in some places and `grind` is expected to
supersede `omega` either way. A good reason to merge is that `omega` is
used all over the place and its flaky performance increases the noise in
future benchmarks.
2025-08-11 07:17:24 +00:00
.github chore: CI: include tests in rebootstrap check (#9788) 2025-08-07 15:37:36 +00:00
doc doc: freshen up Mac OSX build instructions (#9618) 2025-07-29 21:42:24 +00:00
images
nix
releases_drafts
script fix: unfoldReducible in grind (#9813) 2025-08-10 00:02:05 +00:00
src refactor: reduce omega's dependency on fvar IDs (#9723) 2025-08-11 07:17:24 +00:00
stage0 chore: update stage0 2025-08-09 12:35:07 +02:00
tests fix: Add simp lemmas SPred.entails_<n> to replace SPred.entails_cons (#9832) 2025-08-11 06:38:33 +00:00
.gitattributes
.gitignore
.gitpod.Dockerfile
.gitpod.yml
.ignore
CMakeLists.txt
CMakePresets.json
CODEOWNERS chore: make datokrat code owner for iterators, ranges and slices (#9667) 2025-08-01 17:34:43 +00:00
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

Installation

See Setting Up Lean.

Contributing

Please read our Contribution Guidelines first.

Building from Source

See Building Lean.