Releases: leanprover/lean4-nightly
Releases · leanprover/lean4-nightly
nightly-2025-01-30
Changes since nightly-2025-01-29:
Full commit log
- e922edf feat:
Bool.and
,Bool.or
, andBool.not
propagation ingrind
(#6861) - 5b1c6b5 feat: align
take/drop/extract
acrossList/Array/Vector
(#6860) - 21e8a99 feat: refactor of
find
functions onList
/Array
/Vector
(#6833) - 49fe87e feat: missing propagation rules in
grind
(#6858) - 61c843a refactor: pull out some LRAT functionality from bv_decide (#6856)
- ca3c757 chore: update stage0
- 5075153 feat: better support for inductive predicates in
grind
(#6854) - c7dec60 feat: support
UIntX
andUSize
inbv_decide
(#6711) - 41fe7bc feat: bv_normalize rewrite shifts by BitVec const to shift by Nat const (#6851)
- 2c00f8f fix: consume
mdata
incasesOnStuckLHS
when checking that major is fvar (#6791) - 6865329 chore: re-enable Lake
- 729d6e5 chore: update stage0
- c6677e0 perf: avoid environment extension indirection
- 0c43f05 feat: add BitVec add_self/self_add lemmas (#6848)
- 3c8cf7a chore: remove unneeded LawfulBEq hypotheses (#6847)
- 51b56b2 feat: missing monadic functions on List/Array/Vector (#6845)
- 5c0231f feat: add BitVec add/sub injectivity lemmas (#6828)
nightly-2025-01-29
Changes since nightly-2025-01-28:
Full commit log
- a35bf7e chore: revert "perf: use C23's
free_sized
when available" (#6841) - bc234f9 feat: align List/Array/Vector.zip/zipWith/zipWithAll/unzip (#6840)
- 08ec254 feat: add support for constructors and axioms to the
grind
E-matching module (#6839) - e051311 feat: finish aligning List/Array/Vector.ofFn lemmas (#6838)
- e4749eb chore: preparation for Array.erase lemmas (#6836)
- 8431112 feat: align List/Array/Vector lemmas for isEqv and == (#6831)
- c93012f feat: add Vector.mapM, ForIn/ToStream instances (#6835)
- aa65107 feat: "performance" counters for
grind
(#6834) - 07e2b7d chore: update some Array doc-strings (#6832)
- 9b5fadd chore: remove unnecessary simp priorities (#6812)
- 7e8af0f feat: rename
List.enum(From)
toList.zipIdx
, andArray/Vector.zipWithIndex
tozipIdx
(#6800) - f10d0d0 feat: lemmas about BitVec.setWidth (#6808)
- 312759e fix: injectivity theorems for more prelude inductives (#6826)
- 1d94397 feat: teach bv_normalize that
(x >> x) = 0
(#6818) - 9f5a9a0 feat: add
%reset_grind_attrs
(#6824) - 26bc8c5 feat: builtin case splits for
grind
(#6822) - eea2d49 chore: lower List/Array/Vector.mem_map simp priority (#6815)
- f9d3dea perf: improve elaboration performance of Std.Data.DHashMap.Internal.RawLemmas (#6814)
- e4364e7 chore: temporarily disable async in server (#6813)
- 6aa6407 perf: use C23's
free_sized
when available (#6598) - 9247206 doc: clarify that
lean_initialize_runtime_module
is implied bylean_initialize
(#6677) - c7c1e09 feat: add BitVec comparison lemmas to bv_normalize (#6799)
nightly-2025-01-28
Changes since nightly-2025-01-27:
Full commit log
- 20c6165 feat: add
grind?
(#6810) - 104b351 feat: add Fin.ofNat'_zero (#6806)
- d8fcfea feat: add
LawfulMonad
helper simp lemmas (#6805) - d0b947b chore: add @[simp] to Option.not_mem_none (#6804)
- 5f0fea6 refactor: lake: deprecate
-U
(#6798) - 3e54597 feat:
lake query
(#6323) - eb1c9b9 chore: two BitVec lemmas that help simp confluence (#6807)
- 4d66e7b feat: add List.modifyHead_dropLast (#6803)
- f866048 feat: Option.elim_pmap, improving simp confluence (#6802)
- 64766f8 fix: offset constraint propagation in
grind
(#6801) - f64bce6 fix: auto-completion performance regression (#6794)
- 0160aa1 test: identifier completion benchmark (#6796)
- 3418d6d fix: more robust equational theorems generation for partial_fixpoint (#6790)
- 3aea0fd feat: add comparison lemmas to bv_normalize (#6788)
- 4ca98dc doc: typos in partial_fixpoint related docstrings (#6787)
- 55b0bed doc: standard library vision and call for contributions (#6762)
- d86a408 feat: bv_decide can reason about equality of structures (#6740)
nightly-2025-01-27
nightly-2025-01-26
Changes since nightly-2025-01-25:
Full commit log
- 6278839 refactor: lake: all targets produce jobs (#6780)
- 849a252 fix: case split on data in
grind
(#6781) - ca56c5e feat: improve support for
match
-expressions ingrind
(#6779) - d106667 fix: assignment for offset constraints in
grind
(#6778) - 6dbb54d fix: offset terms internalization (#6777)
- cc260dd feat: support for csimp theorems in toLCNF (#6757)
- 9565334 fix:
Grind.MatchCond
incheckParents
(#6776) - 2fa38e6 fix: suggest correct trace option name in partial_fixpoint error message (#6774)
- 056d1db fix: typo in partial_fixpoint docstring (#6775)
- e8bbba0 fix: fix builtin simproc
Nat.reduceAnd
(#6773)
nightly-2025-01-25
Changes since nightly-2025-01-24:
Full commit log
- 58c7a4f feat: lake: lift
FetchM
intoJobM
(and vice versa) (#6771) - c8be581 refactor: lake: use
Job
for all builtin facets (#6418) - c6e244d feat: BitVec.shift x (n#w) -> shift x (n % 2^w) (#6767)
- 044bf85 feat: commute BitVec.extractLsb(')? with bitwise ops (#6747)
- 1059e25 feat: BitVec.shiftLeft in terms of extractLsb' (#6743)
nightly-2025-01-24
Changes since nightly-2025-01-23:
Full commit log
- c70f406 fix: heterogenenous equality support in match conditions within
grind
(#6761) - 757899a chore: run test suite with
Elab.async
for more coverage - a901e34 perf: avoid cross-thread environment extension state synchronization for now
- bab10cc feat: asynchronous kernel checking
- d26dbe7 fix: do not double-report
snapshotTasks
afterwrapAsyncAsSnapshot
- 214093e fix: prevent
Task.get
deadlocks from threadpool starvation (#6758) - ebda2d4 chore: update stage0
- 7e03920 feat: zetaUnused option (option only) (#6754)
- d033804 doc: remove duplicated sentense in Lean.Syntax.node (#6752)
- 56733b9 refactor: TerminationArgument → TerminationMeasure (#6727)
- c073da2 chore: update stage0
- d8bcd6a doc: correspondence
ModuleIdx
<-->Environment.moduleNames
(#6749)
nightly-2025-01-23
Changes since nightly-2025-01-22:
Full commit log
- f35a602 feat: use
cast
to "fix" types in the E-matching module within grind (#6750) - 14841ad fix: bugs in
grind
(#6748) - 5f3c0da feat: BitVec.ushiftRight in terms of extractLsb' (#6745)
- 6befda8 feat: add twoPow multiplication lemmas (#6742)
- 6595ca8 feat: improve equation theorem support in
grind
(#6746) - 91e261d chore: disable Elab.async on the cmdline for now (#6722)
- 6ebce42 perf: fast path for multiplication with constants in bv_decide (#6739)
- b6db90a doc: mention subscript j in the lexical structure (#6738)
- 7706b87 feat: bv_decide support for structures of supported types (#6724)
nightly-2025-01-22
Changes since nightly-2025-01-21:
Full commit log
- 9b74c07 feat: lazy
ite
branch internalization ingrind
(#6737) - 533af01 feat: improve
grind
canonicalizer (#6736) - de31faa feat: case splitting
match
-expressions with overlapping patterns ingrind
(#6735) - 3881f21 fix: redundant information in the offset constraint module (#6734)
- c9a03c7 feat: overlapping match patterns in
grind
(#6733) - 0c2fb34 chore: remove useless
Nat.mul_one
from proof (#6728) - eb30249 doc: make description of
pp.analyze
more precise (#6726) - 31929c0 feat: lemmas for HashMap.alter and .modify (#6620)
- 3569797 feat: functional cases theorem for non-recursive functions (#6261)
- 7b813d4 feat: partial_fixpoint: partial functions with equations (#6355)
- edeae18 feat: add
Bitvec reverse
definition,getLsbD_reverse, getMsbD_reverse, reverse_append, reverse_replicate
andNat.mod_sub_eq_sub_mod
(#6476) - 91bae2e feat: align {List/Array/Vector}.{attach,attachWith,pmap} lemmas (#6723)
nightly-2025-01-21
Changes since nightly-2025-01-20:
Full commit log
- f9e904a feat: add
BitVec.[getMsbD_mul, getElem_udiv, getLsbD_udiv, getMsbD_udiv]
(#6674) - 8375d00 fix: allow ⱼ in identifiers (#6679)
- 16bd7ea chore: deprecate List.iota (#6708)
- c54287f feat: add proper erasure of type dependencies in LCNF (#6678)
- e3771e3 fix: don't generate code for decls with an implemented_by attribute (#6680)
- 4935829 feat: generalize
infoview.maxTraceChildren
to the cmdline (#6716) - 778333c fix: match equality generation (#6719)
- 189f5d4 feat: case splitting in
grind
(#6717) - c07f64a doc: Fix (and expand) docstrings for
bmod
/bdiv
(#6713) - 22117f2 feat: align List/Array/Vector.count theorems (#6712)
- 1d03cd6 fix: negative timestamps and
PlainDateTime
s before 1970 (#6668)