Lean 4 fork for HoTT-compatible kernel extensions (Path types, transport, HITs). Maintained against upstream leanprover/lean4.
Find a file
Kim Morrison 6b62fed82e
feat: proposed change to BitVec API (#5200)
This renames `BitVec.getLsb` to `getLsbD` (`D` for "default" value, i.e.
false), and introduces `getLsb?` and `getLsb'` (which we can rename to
`getLsb` after a deprecation cycle).

(Similarly for `getMsb`.)

Also adds a `GetElem` class so we can use `x[i]` and `x[i]?` notation. 

Later, we will turn
```
theorem getLsbD_eq_getElem?_getD (x : BitVec w) (i : Nat) (h : i < w) :
    x.getLsbD i = x[i]?.getD false
```
on as a `@[simp]` lemma.

This PR doesn't attempt to demonstrate the benefits, but I think both
arguments are going to get easier, and this will bring the BitVec API
closer in line to List/Array, etc.

---------

Co-authored-by: Markus Himmel <markus@lean-fro.org>
2024-08-30 02:00:57 +00:00
.github feat: import LeanSAT's tactic frontends 2024-08-28 18:14:39 +02:00
doc doc: update quickstart guide for new display name (#5193) 2024-08-28 13:29:16 +00:00
images
nix feat: import LeanSAT's tactic frontends 2024-08-28 18:14:39 +02:00
releases_drafts feat: omit (#5000) 2024-08-21 13:22:34 +00:00
script feat: link LibUV (#4963) 2024-08-12 12:33:24 +00:00
src feat: proposed change to BitVec API (#5200) 2024-08-30 02:00:57 +00:00
stage0 chore: update stage0 2024-08-29 13:56:52 +00:00
tests feat: proposed change to BitVec API (#5200) 2024-08-30 02:00:57 +00:00
.gitattributes chore: Do not hide stage0/src/stdlib_flags.h from diffs 2023-09-13 19:29:25 +02:00
.gitignore feat: support Lake for building Lean core oleans (#3886) 2024-06-13 16:18:24 +00:00
.ignore chore: ignore stage0/ (for rg etc.) 2022-03-18 15:28:20 +01:00
CMakeLists.txt feat: import LeanSAT's tactic frontends 2024-08-28 18:14:39 +02:00
CMakePresets.json chore: modernize build instructions (#4032) 2024-05-23 10:55:07 +00:00
CODEOWNERS feat: import LeanSAT's tactic frontends 2024-08-28 18:14:39 +02:00
CONTRIBUTING.md doc: triage 2024-07-26 18:24:06 +02:00
flake.lock feat: ship cadical (#4325) 2024-08-23 09:13:27 +00:00
flake.nix feat: ship cadical (#4325) 2024-08-23 09:13:27 +00:00
lean-toolchain doc: VS Code dev setup (#2961) 2023-11-30 08:35:03 +00:00
lean.code-workspace chore: add the lean4 extension to the vscode workspace (#3059) 2023-12-14 08:58:21 +00:00
LICENSE
LICENSES feat: ship cadical (#4325) 2024-08-23 09:13:27 +00:00
README.md doc: mention build doc source location (#4045) 2024-05-01 22:42:54 +00:00
RELEASES.md chore: begin development cycle for v4.12.0 (#4986) 2024-08-12 00:33:05 +00:00

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 (documentation source: doc/make/index.md).