Compare commits

...

5 Commits

Author SHA1 Message Date
Kim Morrison
0a48a311c8 . 2025-01-04 12:12:07 +11:00
Kim Morrison
a447d3713e chore: incorporate notes from release_drafts 2025-01-04 12:09:41 +11:00
Kim Morrison
80e869ae9f chore: begin development cycle for v4.17.0 2025-01-04 12:06:40 +11:00
Kim Morrison
a5a3cf7405 chore: release notes for v4.16.0 2025-01-04 12:03:10 +11:00
Kim Morrison
80f219cbd7 chore: release notes for v4.15.0 2025-01-04 12:02:50 +11:00
3 changed files with 1191 additions and 19 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,16 +0,0 @@
We replace the inductive predicate `List.lt` with an upstreamed version of `List.Lex` from Mathlib.
(Previously `Lex.lt` was defined in terms of `<`; now it is generalized to take an arbitrary relation.)
This subtely changes the notion of ordering on `List α`.
`List.lt` was a weaker relation: in particular if `l₁ < l₂`, then
`a :: l₁ < b :: l₂` may hold according to `List.lt` even if `a` and `b` are merely incomparable
(either neither `a < b` nor `b < a`), whereas according to `List.Lex` this would require `a = b`.
When `<` is total, in the sense that `¬ · < ·` is antisymmetric, then the two relations coincide.
Mathlib was already overriding the order instances for `List α`,
so this change should not be noticed by anyone already using Mathlib.
We simultaneously add the boolean valued `List.lex` function, parameterised by a `BEq` typeclass
and an arbitrary `lt` function. This will support the flexibility previously provided for `List.lt`,
via a `==` function which is weaker than strict equality.

View File

@@ -10,7 +10,7 @@ endif()
include(ExternalProject)
project(LEAN CXX C)
set(LEAN_VERSION_MAJOR 4)
set(LEAN_VERSION_MINOR 16)
set(LEAN_VERSION_MINOR 17)
set(LEAN_VERSION_PATCH 0)
set(LEAN_VERSION_IS_RELEASE 0) # This number is 1 in the release revision, and 0 otherwise.
set(LEAN_SPECIAL_VERSION_DESC "" CACHE STRING "Additional version description like 'nightly-2018-03-11'")