From 32340fe80b7c52b700b03915512a4f8b8cc94578 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Tue, 16 Sep 2025 10:05:40 +1000 Subject: [PATCH 001/253] bump toolchain --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index fd384f29c..e23ee88c7 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.24.0-rc1 +leanprover/lean4:nightly-2025-09-15 From e71b7f971d3e496badad5e0a5861aeef25568a38 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Tue, 14 Oct 2025 13:07:36 +1100 Subject: [PATCH 002/253] update lakefile.toml: this will break nightly-testing for now --- lake-manifest.json | 10 +++++----- lakefile.toml | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index be8baa094..55df3906b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,14 +1,14 @@ {"version": "1.1.0", "packagesDir": ".lake/packages", "packages": - [{"url": "https://github.com/leanprover-community/mathlib4", + [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "eed770a434957369c6262aa3fb1d6426419016d4", + "scope": "", + "rev": "86840272ee346e3b58ad6d96b156696881fe7848", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "v4.24.0-rc1", + "inputRev": "nightly-testing-2025-09-15", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b3a8bc5f8b72102ebbe4da3302432b196e215522", + "rev": "cb2ef1abb26ce4eaa052741fd12a4a5828d58727", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 17350800d..d9fa9e2a7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -9,8 +9,8 @@ weak.linter.flexible = true [[require]] name = "mathlib" -scope = "leanprover-community" -rev = "v4.24.0-rc1" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2025-09-15" [[lean_lib]] name = "Cslib" From 68b95e6e37148517db5685d4a74fcc4b4e246d73 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Fri, 17 Oct 2025 13:29:53 +1100 Subject: [PATCH 003/253] bump --- lake-manifest.json | 24 ++++++++++++------------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 55df3906b..44ca63fef 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "86840272ee346e3b58ad6d96b156696881fe7848", + "rev": "ea509a6cf819b09c735eb4cfd5843ece4390bf38", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-09-15", + "inputRev": "nightly-testing", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c205f530395b57b520d3d78d975293f0c69b65ce", + "rev": "b949552f6ca8e223f424b3e3b33f74185bbf1179", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a564b9c2252afef6e0d40613d4ec086b54ffe7df", + "rev": "84b9c4f5f7f9ab594ca6252bf91e293b974cc29a", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -45,37 +45,37 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "557f2069977de1c95e68de09e693bc4d1eee7842", + "rev": "84994683e0e9e455b98f9daade3bfc77643bf027", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.72-pre", + "inputRev": "v0.0.75-pre3", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "fc97e592e3e150370f17a12e3613e96252c4d3d0", + "rev": "725ac8cd67acd70a7beaf47c3725e23484c1ef50", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "345a958916d27982d4ecb4500fba0ebb21096651", + "rev": "07d6ac02ebdf6ef77651c9e1750c179d0f609ee6", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "cb2ef1abb26ce4eaa052741fd12a4a5828d58727", + "rev": "1190e8e4eb3410cbf02099d61b6c9265390a7e22", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,7 +85,7 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "e22ed0883c7d7f9a7e294782b6b137b783715386", + "rev": "b62fd39acc32da6fb8bb160c82d1bbc3cb3c186e", "name": "Cli", "manifestFile": "lake-manifest.json", "inputRev": "main", diff --git a/lakefile.toml b/lakefile.toml index d9fa9e2a7..9de3675c2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -10,7 +10,7 @@ weak.linter.flexible = true [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-09-15" +rev = "nightly-testing" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index e23ee88c7..1b5be6939 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-09-15 +leanprover/lean4:nightly-2025-10-16 \ No newline at end of file From 7e4cc4fedbf756673b26e3b9e7c1aa3d53302c22 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Fri, 17 Oct 2025 13:36:09 +1100 Subject: [PATCH 004/253] delete --- .../LocallyNameless/Context.lean | 27 ++----------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean index b5f11ca27..a4f5e504d 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean @@ -19,29 +19,6 @@ universe u v variable {α : Type u} {β : Type v} --- TODO: These are pieces of API that cannot be directly automated by adding `grind` attributes to --- `Mathlib.Data.List.Sigma`. We should consider upstreaming them to Mathlib. -namespace List - -variable {β : α → Type v} {l₁ l₂ : List (Sigma β)} - -/-- Keys distribute with appending. -/ -theorem keys_append : (l₁ ++ l₂).keys = l₁.keys ++ l₂.keys := by - simp [keys] - -variable [DecidableEq α] in -/-- Sublists without duplicate keys preserve lookups. -/ -theorem sublist_dlookup (nd₂ : l₂.NodupKeys) (s : l₁ <+ l₂) (mem : b ∈ l₁.dlookup a) : - b ∈ l₂.dlookup a := by - grind [Option.mem_def, → perm_nodupKeys, dlookup_append, => perm_dlookup, - → Sublist.exists_perm_append] - -@[grind =] -lemma nodupKeys_middle : (l₁ ++ s :: l₂).NodupKeys ↔ (s :: (l₁ ++ l₂)).NodupKeys := by - simp_all [NodupKeys, keys, nodup_middle] - -end List - namespace LambdaCalculus.LocallyNameless variable [DecidableEq α] @@ -96,12 +73,12 @@ theorem wf_strengthen (ok : (Δ ++ ⟨x, σ⟩ :: Γ)✓) : (Δ ++ Γ)✓ := by /-- A mapping of values within a context. -/ @[simp, scoped grind] -def map_val (f : β → β) (Γ : Context α β) : Context α β := +def map_val (f : β → β) (Γ : Context α β) : Context α β := Γ.map (fun ⟨var,ty⟩ => ⟨var,f ty⟩) omit [DecidableEq α] in /-- A mapping of values preserves keys. -/ -@[scoped grind] +@[scoped grind .] lemma map_val_keys (f) : Γ.keys = (Γ.map_val f).keys := by induction Γ <;> grind From 730a40cdb16f5c9d20d81ed74fc8b713f0825672 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 17 Oct 2025 06:40:19 +0000 Subject: [PATCH 005/253] Merge main into nightly-testing --- lake-manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lake-manifest.json b/lake-manifest.json index 44ca63fef..628daba86 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ea509a6cf819b09c735eb4cfd5843ece4390bf38", + "rev": "ebecc07d6165d213c650fb51d9a5adb48d711a0f", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", From fb466a45f7c18b6e7465bd4f8dfd4ee739195c9b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 17 Oct 2025 09:34:59 +0000 Subject: [PATCH 006/253] Merge main into nightly-testing --- lake-manifest.json | 4 ++-- lean-toolchain | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 628daba86..e1b1b84f3 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ebecc07d6165d213c650fb51d9a5adb48d711a0f", + "rev": "127f682bc0e0363a9c28c004c5aaa5cab7f1f496", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1190e8e4eb3410cbf02099d61b6c9265390a7e22", + "rev": "2d69d80d473f955b0ff808078d7f3e539685bde1", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lean-toolchain b/lean-toolchain index 1b5be6939..4cb5df10b 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-16 \ No newline at end of file +leanprover/lean4:nightly-2025-10-17 \ No newline at end of file From 2018c53ea7bb945a6206e0db25c24802dd85b4e0 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 17 Oct 2025 12:45:00 +0000 Subject: [PATCH 007/253] Merge main into nightly-testing --- lake-manifest.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index e1b1b84f3..9af59f78b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "127f682bc0e0363a9c28c004c5aaa5cab7f1f496", + "rev": "536d42c619765f40dcf595b88980840fe9c0dc7c", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -51,14 +51,14 @@ "inputRev": "v0.0.75-pre3", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/leanprover-community/aesop", + {"url": "https://github.com/mhuisi/aesop", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "725ac8cd67acd70a7beaf47c3725e23484c1ef50", + "scope": "", + "rev": "b53e19c811966457ca2b090ae242e8b3f94ad491", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "mhuisi/bump-nightly-to-2025-10-17", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", From 28b88e6aa5c5ab60b0deaa86e632d623ae58845b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 17 Oct 2025 13:09:47 +0000 Subject: [PATCH 008/253] chore: bump to nightly-2025-10-17 with mathlib at nightly-testing-2025-10-17 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 9af59f78b..7bd308ca9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "536d42c619765f40dcf595b88980840fe9c0dc7c", + "rev": "c84ee75fe89338a5ca15ea04ad57789461a5cc7a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "nightly-testing-2025-10-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 40dd259ae..1d3c73478 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing" +rev = "nightly-testing-2025-10-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 4cb5df10b..2924fb7ff 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-17 \ No newline at end of file +leanprover/lean4:nightly-2025-10-17 From 54b093a045793205cc0b0ffae9ffcbd1e985ec27 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 02:44:04 +0200 Subject: [PATCH 009/253] bump Mathlib --- lake-manifest.json | 18 +++++++++--------- lakefile.toml | 6 +++--- lean-toolchain | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 7bd308ca9..e34751eaa 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c84ee75fe89338a5ca15ea04ad57789461a5cc7a", + "rev": "3aad5efa232cac1b73faa6501e2e3056f23a261b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-17", + "inputRev": "nightly-testing-2025-10-19", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,20 +45,20 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "84994683e0e9e455b98f9daade3bfc77643bf027", + "rev": "abcbabe9247335b968e6f91956ba04bd06bbbf4b", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.75-pre3", + "inputRev": "v0.0.76-pre", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/mhuisi/aesop", + {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, - "scope": "", - "rev": "b53e19c811966457ca2b090ae242e8b3f94ad491", + "scope": "leanprover-community", + "rev": "ebbdeccde9e2e0dee3db505ad721715f82044776", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "mhuisi/bump-nightly-to-2025-10-17", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2d69d80d473f955b0ff808078d7f3e539685bde1", + "rev": "8d6f25c325b16b3b8a6dee0f05d20e424fe1bc30", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 1d3c73478..bad9eb34d 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,12 +15,12 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-17" +rev = "nightly-testing-2025-10-19" [[lean_lib]] name = "Cslib" -globs = "Cslib.*" +globs = ["Cslib.*"] [[lean_lib]] name = "CslibTests" -globs = "CslibTests.+" +globs = ["CslibTests.+"] diff --git a/lean-toolchain b/lean-toolchain index 2924fb7ff..31decf5b0 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-17 +leanprover/lean4:nightly-2025-10-19 From fc0add3902012ccaf281c2516b909be87a65d31c Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 02:56:28 +0200 Subject: [PATCH 010/253] bump mathlib --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index e34751eaa..f1958f470 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "3aad5efa232cac1b73faa6501e2e3056f23a261b", + "rev": "30b020bbcb3b3e6c2b0c364f7725a7eafa8171c9", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-19", + "inputRev": "nightly-testing", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index bad9eb34d..830ab5eec 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-19" +rev = "nightly-testing" [[lean_lib]] name = "Cslib" From 58a940018757b56724e1c8b3780b5511183ad95b Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 02:58:40 +0200 Subject: [PATCH 011/253] adaptation note --- Cslib/Computability/Automata/NFAToDFA.lean | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NFAToDFA.lean b/Cslib/Computability/Automata/NFAToDFA.lean index 7bf4a39b2..e38fdf65a 100644 --- a/Cslib/Computability/Automata/NFAToDFA.lean +++ b/Cslib/Computability/Automata/NFAToDFA.lean @@ -60,7 +60,12 @@ theorem toDFA_language_eq {nfa : NFA State Symbol} : nfa.toDFA.language = nfa.language := by ext xs rw [← DFA.accepts_mem_language] - open DFA in grind + #adaptation_note + /-- + Moving from `nightly-2025-09-15` to `nightly-2025-10-19` required + increasing the number of allowed splits. + -/ + open DFA in grind (splits := 11) end SubsetConstruction end NFA From 35b39abd32ef326c82754d3495c34c7006f6c3f2 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 03:09:17 +0200 Subject: [PATCH 012/253] fix grind problems in LambdaCalculus --- .../LocallyNameless/Fsub/WellFormed.lean | 11 +++++++++-- .../LocallyNameless/Untyped/Properties.lean | 11 ++++++----- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean index 2727fa429..b4b96cbc6 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean @@ -38,7 +38,7 @@ inductive Ty.Wf : Env Var → Ty Var → Prop Ty.Wf Γ (all σ τ) | sum : Ty.Wf Γ σ → Ty.Wf Γ τ → Ty.Wf Γ (sum σ τ) -attribute [scoped grind] Ty.Wf.top Ty.Wf.var Ty.Wf.arrow Ty.Wf.sum +attribute [scoped grind!] Ty.Wf.top Ty.Wf.var Ty.Wf.arrow Ty.Wf.sum /-- An environment is well-formed if it binds each variable exactly once to a well-formed type. -/ inductive Env.Wf : Env Var → Prop @@ -95,7 +95,14 @@ lemma narrow (wf : σ.Wf (Γ ++ ⟨X, Binding.sub τ⟩ :: Δ)) (ok : (Γ ++ ⟨ generalize eq : (Γ ++ ⟨X, Binding.sub τ⟩ :: Δ) = Θ at wf induction wf generalizing Γ with | all => apply all (free_union [dom] Var) <;> grind [nodupKeys_cons] - | _ => grind [sublist_dlookup] + | _ => + #adaptation_note + /-- + Moving from `nightly-2025-09-15` to `nightly-2025-10-19`, + I've had to remove the `append_assoc` lemma grind; + without this `grind` is exploding. This requires further investigation. + -/ + grind [sublist_dlookup, -append_assoc] lemma narrow_cons (wf : σ.Wf (⟨X, Binding.sub τ⟩ :: Δ)) (ok : (⟨X, Binding.sub τ'⟩ :: Δ)✓) : σ.Wf (⟨X, Binding.sub τ'⟩ :: Δ) := by diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean index 5c3b01259..9f58e97cc 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean @@ -82,10 +82,10 @@ lemma open_lc (k t) (e : Term Var) (e_lc : e.LC) : e = e⟦k ↝ t⟧ := by all_goals grind /-- Substitution of a locally closed term distributes with opening. -/ -@[scoped grind] +@[scoped grind =] lemma subst_openRec (x : Var) (t : Term Var) (k : ℕ) (u e : Term Var) (lc : LC t) : - (e⟦ k ↝ u ⟧)[x := t] = e[x := t]⟦k ↝ u [ x := t ]⟧ := by - induction e generalizing k <;> grind + (e⟦ k ↝ u ⟧)[x := t] = e[x := t]⟦k ↝ u [ x := t ]⟧ := by + induction e generalizing k with grind /-- Specialize `subst_openRec` to the first opening. -/ lemma subst_open (x : Var) (t : Term Var) (u e : Term Var) (lc : LC t) : @@ -96,17 +96,18 @@ theorem subst_open_var (x y : Var) (u e : Term Var) (neq : y ≠ x) (u_lc : LC u (e ^ fvar x)[y := u] = e[y := u] ^ fvar x := by grind /-- Substitution of locally closed terms is locally closed. -/ -@[scoped grind] +@[scoped grind ←] theorem subst_lc {x : Var} {e u : Term Var} (e_lc : LC e) (u_lc : LC u) : LC (e [x := u]) := by induction e_lc case' abs => apply LC.abs (free_union Var) all_goals grind /-- Opening to a term `t` is equivalent to opening to a free variable and substituting for `t`. -/ -@[scoped grind] lemma subst_intro (x : Var) (t e : Term Var) (mem : x ∉ e.fv) (t_lc : LC t) : e ^ t = (e ^ fvar x) [ x := t ] := by grind [subst_fresh] +scoped grind_pattern subst_intro => open' e t, open' e (fvar x) + /-- Opening of locally closed terms is locally closed. -/ @[scoped grind ←] theorem beta_lc {M N : Term Var} (m_lc : M.abs.LC) (n_lc : LC N) : LC (M ^ N) := by From d7eff492ce5f3e318ba2ccdad967def447afc45b Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 03:15:02 +0200 Subject: [PATCH 013/253] more fixes in LambdaCalculus --- .../LambdaCalculus/LocallyNameless/Fsub/Subtype.lean | 8 +++++++- .../LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean index ee412bd5a..fefaf6aa5 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean @@ -87,7 +87,13 @@ lemma narrow_aux by grind [perm_middle] by_cases X = X' <;> grind [Sub.weaken, sublist_append_of_sublist_right] case all => apply Sub.all (free_union Var) <;> grind - all_goals grind [Env.Wf.narrow, Ty.Wf.narrow] + #adaptation_note + /-- + Moving from `nightly-2025-09-15` to `nightly-2025-10-19`, + I've had to remove the `append_assoc` lemma from grind; + without this `grind` is exploding. This requires further investigation. + -/ + all_goals grind [Env.Wf.narrow, Ty.Wf.narrow, -append_assoc] @[grind →] lemma trans : Sub Γ σ δ → Sub Γ δ τ → Sub Γ σ τ := by diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean index b4b96cbc6..121e445af 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean @@ -99,7 +99,7 @@ lemma narrow (wf : σ.Wf (Γ ++ ⟨X, Binding.sub τ⟩ :: Δ)) (ok : (Γ ++ ⟨ #adaptation_note /-- Moving from `nightly-2025-09-15` to `nightly-2025-10-19`, - I've had to remove the `append_assoc` lemma grind; + I've had to remove the `append_assoc` lemma from grind; without this `grind` is exploding. This requires further investigation. -/ grind [sublist_dlookup, -append_assoc] From 9417eaf185a51627f918334e215cd16eff263c7c Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 20 Oct 2025 03:22:25 +0200 Subject: [PATCH 014/253] another append_assoc --- .../LambdaCalculus/LocallyNameless/Fsub/Typing.lean | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean index 05809a064..16c7d19ac 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean @@ -95,7 +95,7 @@ lemma narrow (sub : Sub Δ δ δ') (der : Typing (Γ ++ ⟨X, Binding.sub δ'⟩ generalize eq : Γ ++ ⟨X, Binding.sub δ'⟩ :: Δ = Θ at der induction der generalizing Γ case var X' _ _ => - have : X ≠ X' := by grind [→ List.mem_dlookup] + have : X ≠ X' := by grind have p (δ) : Γ ++ ⟨X, .sub δ⟩ :: Δ ~ ⟨X, .sub δ⟩ :: (Γ ++ Δ) := perm_middle grind [Env.Wf.narrow, List.perm_nodupKeys, => List.perm_dlookup] case' abs => apply abs (free_union Var) @@ -112,7 +112,13 @@ lemma subst_tm (der : Typing (Γ ++ ⟨X, .ty σ⟩ :: Δ) t τ) (der_sub : Typi case var σ' _ X' _ _ => have : Γ ++ ⟨X, .ty σ⟩ :: Δ ~ ⟨X, .ty σ⟩ :: (Γ ++ Δ) := perm_middle by_cases eq : X = X' - · grind [→ List.mem_dlookup, weaken_head, Env.Wf.strengthen] + · #adaptation_note + /-- + Moving from `nightly-2025-09-15` to `nightly-2025-10-19`, + I've had to remove the `append_assoc` lemma from grind; + without this `grind` is exploding. This requires further investigation. + -/ + grind [→ List.mem_dlookup, weaken_head, Env.Wf.strengthen, -append_assoc] · grind [Env.Wf.strengthen, => List.perm_dlookup] case abs => apply abs (free_union Var) From 2921a042b80b99a84f3950c087d941639c9c91b1 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 19 Oct 2025 23:09:25 -0400 Subject: [PATCH 015/253] grind failures --- .../LambdaCalculus/LocallyNameless/Fsub/Typing.lean | 1 + .../LocallyNameless/Untyped/FullBetaConfluence.lean | 3 ++- .../Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean | 11 +++++++---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean index 16c7d19ac..6c6c60abc 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean @@ -95,6 +95,7 @@ lemma narrow (sub : Sub Δ δ δ') (der : Typing (Γ ++ ⟨X, Binding.sub δ'⟩ generalize eq : Γ ++ ⟨X, Binding.sub δ'⟩ :: Δ = Θ at der induction der generalizing Γ case var X' _ _ => + have : .sub δ' ∈ dlookup X (Γ ++ ⟨X, .sub δ'⟩ :: Δ) := by grind [List.mem_dlookup] have : X ≠ X' := by grind have p (δ) : Γ ++ ⟨X, .sub δ⟩ :: Δ ~ ⟨X, .sub δ⟩ :: (Γ ++ Δ) := perm_middle grind [Env.Wf.narrow, List.perm_nodupKeys, => List.perm_dlookup] diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean index c02689d7c..0b0757909 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean @@ -163,7 +163,8 @@ theorem para_diamond : Diamond (@Parallel Var) := by have ⟨t'', _⟩ := @ih1 x q1 _ (mem' _ q2) exists (t'' ^* x) ^ t' constructor - · grind + -- TODO: understand why the grind_pattern for this stopped working + · grind [subst_intro] · apply Parallel.beta (free_union [fv] Var) <;> grind case beta u1' u2' xs' mem' s2pu2' => have ⟨x, qx⟩ := fresh_exists (xs ∪ xs' ∪ free_union [fv] Var) diff --git a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean index 88cb60927..74165697b 100644 --- a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean @@ -100,9 +100,10 @@ lemma orth_antitone {X Y : Set P} (hXY : X ⊆ Y) : Y⫠ ⊆ X⫠ := by grind lemma orth_extensive (X : Set P) : X ⊆ X⫠⫠ := by grind /-- The triple orthogonal equals the orthogonal: X⫠⫠⫠ = X⫠. -/ -lemma triple_orth (X : Set P) : X⫠⫠⫠ = X⫠ := by grind +lemma triple_orth (X : Set P) : X⫠⫠⫠ = X⫠ := by + apply le_antisymm <;> grind [orth_extensive] -lemma triple_dual {G : Set P} : G⫠⫠⫠⫠⫠ = G⫠⫠⫠ := by grind +lemma triple_dual {G : Set P} : G⫠⫠⫠⫠⫠ = G⫠⫠⫠ := by grind [triple_orth] /-- The biorthogonal closure operator on sets in a phase space. -/ def biorthogonalClosure : ClosureOperator (Set P) where @@ -302,8 +303,10 @@ lemma iInter_eq_sInf_image {α} (S : Set α) (f : α → Set P) : lemma inter_eq_orth_union_orth (G H : Fact P) : ((G : Set P) ∩ (H : Set P) : Set P) = (((G : Set P)⫠) ∪ ((H : Set P)⫠) : Set P)⫠ := by - ext m; constructor - · grind + ext m + constructor + · simp only [orthogonal_def, mem_union] + grind · intro _ have : m ∈ ((G : Set P)⫠⫠) := by grind have : m ∈ ((H : Set P)⫠⫠) := by grind From a414f28968b7db54359946221dade3dc10bfd0be Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 20 Oct 2025 00:12:28 -0400 Subject: [PATCH 016/253] specify patterns --- .../Automata/EpsilonNFAToNFA.lean | 6 +-- Cslib/Computability/Automata/NFA.lean | 2 +- Cslib/Foundations/Semantics/LTS/Basic.lean | 38 +++++++++---------- .../Semantics/LTS/Bisimulation.lean | 29 +++++++------- Cslib/Languages/CCS/Basic.lean | 6 +-- Cslib/Languages/CCS/BehaviouralTheory.lean | 10 ++--- .../LocallyNameless/Fsub/Opening.lean | 10 ++--- .../LocallyNameless/Fsub/Subtype.lean | 2 +- .../LocallyNameless/Fsub/Typing.lean | 2 +- .../LocallyNameless/Fsub/WellFormed.lean | 4 +- .../LocallyNameless/Stlc/Basic.lean | 2 +- .../LocallyNameless/Untyped/Basic.lean | 2 +- .../LocallyNameless/Untyped/FullBeta.lean | 2 +- .../Untyped/FullBetaConfluence.lean | 10 ++--- Cslib/Logics/LinearLogic/CLL/Basic.lean | 4 +- Cslib/Logics/LinearLogic/CLL/MProof.lean | 2 +- .../LinearLogic/CLL/PhaseSemantics/Basic.lean | 2 +- 17 files changed, 65 insertions(+), 68 deletions(-) diff --git a/Cslib/Computability/Automata/EpsilonNFAToNFA.lean b/Cslib/Computability/Automata/EpsilonNFAToNFA.lean index 8e2d9d40a..504af3a84 100644 --- a/Cslib/Computability/Automata/EpsilonNFAToNFA.lean +++ b/Cslib/Computability/Automata/EpsilonNFAToNFA.lean @@ -18,7 +18,7 @@ open Cslib private def LTS.noε (lts : LTS State (Option Label)) : LTS State Label where Tr := fun s μ s' => lts.Tr s (some μ) s' -@[local grind] +@[local grind .] private lemma LTS.noε_saturate_tr {lts : LTS State (Option Label)} {h : μ = some μ'} : lts.saturate.Tr s μ s' ↔ lts.saturate.noε.Tr s μ' s' := by @@ -37,7 +37,7 @@ def toNFA (enfa : εNFA State Symbol) : NFA State Symbol where finite_state := enfa.finite_state finite_symbol := enfa.finite_symbol -@[scoped grind] +@[scoped grind =] lemma LTS.noε_saturate_mTr {lts : LTS State (Option Label)} : lts.saturate.MTr s (μs.map (some ·)) = lts.saturate.noε.MTr s μs := by @@ -46,7 +46,7 @@ lemma LTS.noε_saturate_mTr /-- Correctness of `toNFA`. -/ -@[scoped grind] +@[scoped grind =] theorem toNFA_language_eq {enfa : εNFA State Symbol} : enfa.toNFA.language = enfa.language := by ext xs diff --git a/Cslib/Computability/Automata/NFA.lean b/Cslib/Computability/Automata/NFA.lean index 340bc5475..18ad5ad85 100644 --- a/Cslib/Computability/Automata/NFA.lean +++ b/Cslib/Computability/Automata/NFA.lean @@ -32,7 +32,7 @@ def language (nfa : NFA State Symbol) : Set (List Symbol) := { xs | nfa.Accepts xs } /-- A string is accepted by an NFA iff it is in the language of the NFA. -/ -@[scoped grind] +@[scoped grind =] theorem accepts_mem_language (nfa : NFA State Symbol) (xs : List Symbol) : nfa.Accepts xs ↔ xs ∈ nfa.language := by rfl diff --git a/Cslib/Foundations/Semantics/LTS/Basic.lean b/Cslib/Foundations/Semantics/LTS/Basic.lean index b605a0ac0..15c85c7c2 100644 --- a/Cslib/Foundations/Semantics/LTS/Basic.lean +++ b/Cslib/Foundations/Semantics/LTS/Basic.lean @@ -82,7 +82,7 @@ inductive LTS.MTr (lts : LTS State Label) : State → List Label → State → P lts.MTr s1 (μ :: μs) s3 /-- Any transition is also a multi-step transition. -/ -@[grind] +@[grind →] theorem LTS.MTr.single {s1 : State} {μ : Label} {s2 : State} : lts.Tr s1 μ s2 → lts.MTr s1 [μ] s2 := by intro h @@ -91,7 +91,7 @@ theorem LTS.MTr.single {s1 : State} {μ : Label} {s2 : State} : · apply LTS.MTr.refl /-- Any multi-step transition can be extended by adding a transition. -/ -@[grind] +@[grind <=] theorem LTS.MTr.stepR {s1 : State} {μs : List Label} {s2 : State} {μ : Label} {s3 : State} : lts.MTr s1 μs s2 → lts.Tr s2 μ s3 → lts.MTr s1 (μs ++ [μ]) s3 := by intro h1 h2 @@ -103,7 +103,7 @@ theorem LTS.MTr.stepR {s1 : State} {μs : List Label} {s2 : State} {μ : Label} · apply ih h2 /-- Multi-step transitions can be composed. -/ -@[grind] +@[grind <=] theorem LTS.MTr.comp {s1 : State} {μs1 : List Label} {s2 : State} {μs2 : List Label} {s3 : State} : lts.MTr s1 μs1 s2 → lts.MTr s2 μs2 s3 → lts.MTr s1 (μs1 ++ μs2) s3 := by @@ -116,7 +116,7 @@ theorem LTS.MTr.comp {s1 : State} {μs1 : List Label} {s2 : State} {μs2 : List · apply ih h2 /-- Any 1-sized multi-step transition implies a transition with the same states and label. -/ -@[grind] +@[grind .] theorem LTS.MTr.single_invert (s1 : State) (μ : Label) (s2 : State) : lts.MTr s1 [μ] s2 → lts.Tr s1 μ s2 := by intro h @@ -126,7 +126,7 @@ theorem LTS.MTr.single_invert (s1 : State) (μ : Label) (s2 : State) : exact htr /-- In any zero-steps multi-step transition, the origin and the derivative are the same. -/ -@[grind] +@[grind .] theorem LTS.MTr.nil_eq (h : lts.MTr s1 [] s2) : s1 = s2 := by cases h rfl @@ -290,32 +290,32 @@ def LTS.setImageMultistep (S : Set State) (μs : List Label) : Set State := ⋃ s ∈ S, lts.imageMultistep s μs /-- Characterisation of `setImage` wrt `Tr`. -/ -@[grind] +@[grind =] theorem LTS.mem_setImage (lts : LTS State Label) : s' ∈ lts.setImage S μ ↔ ∃ s ∈ S, lts.Tr s μ s' := by simp only [setImage, Set.mem_iUnion, exists_prop] grind -@[grind] +@[grind →] theorem LTS.tr_setImage (lts : LTS State Label) (hs : s ∈ S) (htr : lts.Tr s μ s') : s' ∈ lts.setImage S μ := by grind /-- Characterisation of `setImageMultistep` with `MTr`. -/ -@[grind] +@[grind =] theorem LTS.mem_setImageMultistep (lts : LTS State Label) : s' ∈ lts.setImageMultistep S μs ↔ ∃ s ∈ S, lts.MTr s μs s' := by simp only [setImageMultistep, Set.mem_iUnion, exists_prop] grind -@[grind] +@[grind <=] theorem LTS.mTr_setImage (lts : LTS State Label) (hs : s ∈ S) (htr : lts.MTr s μs s') : s' ∈ lts.setImageMultistep S μs := by grind /-- The image of the empty set is always the empty set. -/ -@[grind] +@[grind =] theorem LTS.setImage_empty (lts : LTS State Label) : lts.setImage ∅ μ = ∅ := by grind -@[grind] +@[grind =] lemma LTS.setImageMultistep_setImage_head (lts : LTS State Label) : lts.setImageMultistep S (μ :: μs) = lts.setImageMultistep (lts.setImage S μ ) μs := by grind @@ -429,7 +429,7 @@ def LTS.saturate [HasTau Label] (lts : LTS State Label) : LTS State Label where Tr := lts.STr /-- Any transition is also a saturated transition. -/ -@[grind] +@[grind →] theorem LTS.STr.single [HasTau Label] (lts : LTS State Label) : lts.Tr s μ s' → lts.STr s μ s' := by intro h apply LTS.STr.tr LTS.STr.refl h LTS.STr.refl @@ -447,7 +447,7 @@ inductive LTS.STrN [HasTau Label] (lts : LTS State Label) : lts.STrN (n + m + 1) s1 μ s4 /-- `LTS.str` and `LTS.strN` are equivalent. -/ -@[grind] +@[grind =] theorem LTS.sTr_sTrN [HasTau Label] (lts : LTS State Label) : lts.STr s1 μ s2 ↔ ∃ n, lts.STrN n s1 μ s2 := by apply Iff.intro <;> intro h @@ -470,7 +470,7 @@ theorem LTS.sTr_sTrN [HasTau Label] (lts : LTS State Label) : apply LTS.STr.tr ih1 htr ih2 /-- Saturated transitions labelled by τ can be composed (weighted version). -/ -@[grind] +@[grind →] theorem LTS.STrN.trans_τ [HasTau Label] (lts : LTS State Label) (h1 : lts.STrN n s1 HasTau.τ s2) (h2 : lts.STrN m s2 HasTau.τ s3) : @@ -483,7 +483,7 @@ theorem LTS.STrN.trans_τ grind /-- Saturated transitions labelled by τ can be composed. -/ -@[grind] +@[grind →] theorem LTS.STr.trans_τ [HasTau Label] (lts : LTS State Label) (h1 : lts.STr s1 HasTau.τ s2) (h2 : lts.STr s2 HasTau.τ s3) : @@ -494,7 +494,7 @@ theorem LTS.STr.trans_τ apply (LTS.sTr_sTrN lts).2 ⟨n + m, concN⟩ /-- Saturated transitions can be appended with τ-transitions (weighted version). -/ -@[grind] +@[grind <=] theorem LTS.STrN.append [HasTau Label] (lts : LTS State Label) (h1 : lts.STrN n1 s1 μ s2) @@ -509,7 +509,7 @@ theorem LTS.STrN.append apply LTS.STrN.tr hstr1 htr hsuffix /-- Saturated transitions can be composed (weighted version). -/ -@[grind] +@[grind <=] theorem LTS.STrN.comp [HasTau Label] (lts : LTS State Label) (h1 : lts.STrN n1 s1 HasTau.τ s2) @@ -526,7 +526,7 @@ theorem LTS.STrN.comp grind /-- Saturated transitions can be composed. -/ -@[grind] +@[grind <=] theorem LTS.STr.comp [HasTau Label] (lts : LTS State Label) (h1 : lts.STr s1 HasTau.τ s2) @@ -566,7 +566,7 @@ theorem LTS.saturate_sTr_tr [hHasTau : HasTau Label] (lts : LTS State Label) grind /-- In a saturated LTS, every state is in its τ-image. -/ -@[grind] +@[grind .] theorem LTS.mem_saturate_image_τ [HasTau Label] (lts : LTS State Label) : s ∈ lts.saturate.image s HasTau.τ := LTS.STr.refl diff --git a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean index 535bab582..2abe2e93a 100644 --- a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean +++ b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean @@ -124,31 +124,31 @@ explicitly. notation s:max " ~[" lts "] " s':max => Bisimilarity lts s s' /-- Bisimilarity is reflexive. -/ -@[grind, refl] +@[grind ., refl] theorem Bisimilarity.refl (s : State) : s ~[lts] s := by exists Eq grind /-- The inverse of a bisimulation is a bisimulation. -/ -@[grind] +@[grind →] theorem LTS.IsBisimulation.inv (h : lts.IsBisimulation r) : lts.IsBisimulation (flip r) := by grind [flip] /-- Bisimilarity is symmetric. -/ -@[grind, symm] +@[grind →, symm] theorem Bisimilarity.symm {s1 s2 : State} (h : s1 ~[lts] s2) : s2 ~[lts] s1 := by obtain ⟨r, _, _⟩ := h exists (flip r) grind [flip] /-- The composition of two bisimulations is a bisimulation. -/ -@[grind] +@[grind .] theorem LTS.IsBisimulation.comp (h1 : lts.IsBisimulation r1) (h2 : lts.IsBisimulation r2) : lts.IsBisimulation (Relation.Comp r1 r2) := by grind [Relation.Comp] /-- Bisimilarity is transitive. -/ -@[grind] +@[grind →] theorem Bisimilarity.trans (h1 : s1 ~[lts] s2) (h2 : s2 ~[lts] s3) : s1 ~[lts] s3 := by @@ -166,7 +166,7 @@ theorem Bisimilarity.eqv : } /-- The union of two bisimulations is a bisimulation. -/ -@[grind] +@[grind .] theorem Bisimulation.union (hrb : lts.IsBisimulation r) (hsb : lts.IsBisimulation s) : lts.IsBisimulation (r ⊔ s) := by intro s1 s2 hrs μ @@ -209,19 +209,18 @@ theorem Bisimulation.union (hrb : lts.IsBisimulation r) (hsb : lts.IsBisimulatio exact hs' /-- Bisimilarity is a bisimulation. -/ -@[grind] +@[grind .] theorem Bisimilarity.is_bisimulation : lts.IsBisimulation (Bisimilarity lts) := by grind /-- Bisimilarity is the largest bisimulation. -/ -@[grind] -theorem Bisimilarity.largest_bisimulation - (h : lts.IsBisimulation r) : +@[grind →] +theorem Bisimilarity.largest_bisimulation (h : lts.IsBisimulation r) : Subrelation r (Bisimilarity lts) := by intro s1 s2 hr exists r /-- The union of bisimilarity with any bisimulation is bisimilarity. -/ -@[grind, simp] +@[grind =, simp] theorem Bisimilarity.gfp (r : State → State → Prop) (h : lts.IsBisimulation r) : (Bisimilarity lts) ⊔ r = Bisimilarity lts := by funext s1 s2 @@ -266,7 +265,7 @@ noncomputable instance : SemilatticeSup {r // lts.IsBisimulation r} where apply h2 _ _ h /-- The empty relation is a bisimulation. -/ -@[grind] +@[grind .] theorem Bisimulation.emptyRelation_bisimulation : lts.IsBisimulation emptyRelation := by intro s1 s2 hr cases hr @@ -305,7 +304,7 @@ def LTS.IsBisimulationUpTo (lts : LTS State Label) (r : State → State → Prop ) /-- Any bisimulation up to bisimilarity is a bisimulation. -/ -@[grind] +@[grind →] theorem LTS.IsBisimulationUpTo.isBisimulation (h : lts.IsBisimulationUpTo r) : lts.IsBisimulation (Relation.UpTo r (Bisimilarity lts)) := by intro s1 s2 hr μ @@ -390,7 +389,7 @@ theorem Bisimulation.bisim_trace /-! ## Relation to trace equivalence -/ /-- Any bisimulation implies trace equivalence. -/ -@[grind] +@[grind =>] theorem LTS.IsBisimulation.traceEq (hb : lts.IsBisimulation r) (hr : r s1 s2) : s1 ~tr[lts] s2 := by @@ -411,7 +410,7 @@ theorem LTS.IsBisimulation.traceEq exact hmtr.1 /-- Bisimilarity is included in trace equivalence. -/ -@[grind] +@[grind .] theorem Bisimilarity.le_traceEq : Bisimilarity lts ≤ TraceEq lts := by intro s1 s2 h obtain ⟨r, hr, hb⟩ := h diff --git a/Cslib/Languages/CCS/Basic.lean b/Cslib/Languages/CCS/Basic.lean index 67822d66b..30c9995e8 100644 --- a/Cslib/Languages/CCS/Basic.lean +++ b/Cslib/Languages/CCS/Basic.lean @@ -53,7 +53,7 @@ inductive Act.IsVisible : Act Name → Prop where | coname : IsVisible (Act.coname a) /-- If an action is visible, it is not `τ`. -/ -@[grind, simp] +@[grind →, simp] theorem Act.isVisible_neq_τ {μ : Act Name} (h : μ.IsVisible) : μ ≠ Act.τ := by cases μ <;> grind @@ -64,11 +64,11 @@ inductive Act.Co {Name : Type u} : Act Name → Act Name → Prop where | cn : Act.Co (Act.coname a) (Act.name a) /-- `Act.Co` is symmetric. -/ -@[grind, symm] +@[grind →, symm] theorem Act.Co.symm (h : Act.Co μ μ') : Act.Co μ' μ := by grind /-- If two actions are one the coaction of the other, then they are both visible. -/ -@[grind] +@[grind →] theorem Act.co_isVisible (h : Act.Co μ μ') : μ.IsVisible ∧ μ'.IsVisible := by grind /-- `Act.Co` is decidable if `Name` equality is decidable. -/ diff --git a/Cslib/Languages/CCS/BehaviouralTheory.lean b/Cslib/Languages/CCS/BehaviouralTheory.lean index 3a9581154..17e4bd416 100644 --- a/Cslib/Languages/CCS/BehaviouralTheory.lean +++ b/Cslib/Languages/CCS/BehaviouralTheory.lean @@ -31,14 +31,12 @@ open CCS CCS.Process CCS.Act namespace CCS -@[grind cases] +@[grind] private inductive ParNil : (Process Name Constant) → (Process Name Constant) → Prop where | parNil : ParNil (par p nil) p -attribute [grind] ParNil.parNil - /-- P | 𝟎 ~ P -/ -@[simp, scoped grind] +@[simp, scoped grind .] theorem bisimilarity_par_nil : (par p nil) ~[lts (defs := defs)] p := by unfold lts at * exists ParNil @@ -56,7 +54,7 @@ private inductive ParComm : (Process Name Constant) → (Process Name Constant) | parComm : ParComm (par p q) (par q p) /-- P | Q ~ Q | P -/ -@[scoped grind] +@[scoped grind .] theorem bisimilarity_par_comm : (par p q) ~[lts (defs := defs)] (par q p) := by exists ParComm constructor @@ -106,7 +104,7 @@ theorem bisimilarity_par_comm : (par p q) ~[lts (defs := defs)] (par q p) := by · constructor /-- 𝟎 | P ~ P -/ -@[simp, scoped grind] +@[simp, scoped grind .] theorem bisimilarity_nil_par : (par nil p) ~[lts (defs := defs)] p := calc (par nil p) ~[lts (defs := defs)] (par p nil) := by grind diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean index 0d91aca30..87eb58366 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean @@ -54,7 +54,7 @@ inductive LC : Ty Var → Prop | all (L : Finset Var) : LC σ → (∀ X ∉ L, LC (τ ^ᵞ fvar X)) → LC (all σ τ) | sum : LC σ → LC τ → LC (sum σ τ) -attribute [scoped grind] LC.top LC.var LC.arrow LC.sum +attribute [scoped grind .] LC.top LC.var LC.arrow LC.sum /-- Type substitution. -/ @[scoped grind =] @@ -195,7 +195,7 @@ inductive LC : Term Var → Prop (∀ x ∉ L, LC (t₃ ^ᵗᵗ fvar x)) → LC (case t₁ t₂ t₃) -attribute [scoped grind] LC.var LC.app LC.inl LC.inr LC.tapp +attribute [scoped grind .] LC.var LC.app LC.inl LC.inr LC.tapp variable {t : Term Var} {δ : Ty Var} @@ -207,12 +207,12 @@ lemma openRec_ty_neq_eq (neq : X ≠ Y) (eq : t⟦Y ↝ σ⟧ᵗᵞ = t⟦Y ↝ omit [HasFresh Var] [DecidableEq Var] in /-- Elimination of mixed term and type opening. -/ -@[scoped grind] +@[scoped grind .] lemma openRec_tm_ty_eq (eq : t⟦x ↝ s⟧ᵗᵗ = t⟦x ↝ s⟧ᵗᵗ⟦y ↝ δ⟧ᵗᵞ) : t = t⟦y ↝ δ⟧ᵗᵞ := by induction t generalizing x y <;> grind /-- A locally closed term is unchanged by type opening. -/ -@[scoped grind] +@[scoped grind =_] lemma openRec_ty_lc {t : Term Var} (lc : t.LC) : t = t⟦X ↝ σ⟧ᵗᵞ := by induction lc generalizing X case let' | case | tabs | abs => @@ -304,7 +304,7 @@ lemma openRec_ty_tm_eq (eq : t⟦Y ↝ σ⟧ᵗᵞ = t⟦Y ↝ σ⟧ᵗᵞ⟦x variable [HasFresh Var] /-- A locally closed term is unchanged by term opening. -/ -@[scoped grind] +@[scoped grind =_] lemma openRec_tm_lc (lc : t.LC) : t = t⟦x ↝ s⟧ᵗᵗ := by induction lc generalizing x case let' | case | tabs | abs => diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean index fefaf6aa5..017ed7192 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean @@ -43,7 +43,7 @@ namespace Sub open Context List Ty.Wf Env.Wf Binding -attribute [scoped grind] Sub.top Sub.refl_tvar Sub.trans_tvar Sub.arrow Sub.sum +attribute [scoped grind .] Sub.top Sub.refl_tvar Sub.trans_tvar Sub.arrow Sub.sum variable {Γ Δ Θ : Env Var} {σ τ δ : Ty Var} diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean index 6c6c60abc..59f96f91b 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean @@ -57,7 +57,7 @@ namespace Typing variable {Γ Δ Θ : Env Var} {σ τ δ : Ty Var} -attribute [grind] Typing.var Typing.app Typing.tapp Typing.sub Typing.inl Typing.inr +attribute [grind .] Typing.var Typing.app Typing.tapp Typing.sub Typing.inl Typing.inr /-- Typings have well-formed contexts and types. -/ @[grind →] diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean index 121e445af..4b208130d 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean @@ -38,7 +38,7 @@ inductive Ty.Wf : Env Var → Ty Var → Prop Ty.Wf Γ (all σ τ) | sum : Ty.Wf Γ σ → Ty.Wf Γ τ → Ty.Wf Γ (sum σ τ) -attribute [scoped grind!] Ty.Wf.top Ty.Wf.var Ty.Wf.arrow Ty.Wf.sum +attribute [scoped grind! .] Ty.Wf.top Ty.Wf.var Ty.Wf.arrow Ty.Wf.sum /-- An environment is well-formed if it binds each variable exactly once to a well-formed type. -/ inductive Env.Wf : Env Var → Prop @@ -46,7 +46,7 @@ inductive Env.Wf : Env Var → Prop | sub : Wf Γ → τ.Wf Γ → X ∉ Γ.dom → Wf (⟨X, Binding.sub τ⟩ :: Γ) | ty : Wf Γ → τ.Wf Γ → x ∉ Γ.dom → Wf (⟨x, Binding.ty τ⟩ :: Γ) -attribute [scoped grind] Env.Wf.sub Env.Wf.ty +attribute [scoped grind! .] Env.Wf.sub Env.Wf.ty variable {Γ Δ Θ : Env Var} {σ τ τ' γ δ : Ty Var} diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean index 0e357e252..6f056dd58 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean @@ -49,7 +49,7 @@ inductive Typing : Context Var (Ty Base) → Term Var → Ty Base → Prop /-- Function application. -/ | app : Typing Γ t (σ ⤳ τ) → Typing Γ t' σ → Typing Γ (app t t') τ -attribute [scoped grind] Typing.var Typing.app +attribute [scoped grind .] Typing.var Typing.app scoped notation:50 Γ " ⊢ " t " ∶ " τ:arg => Typing Γ t τ diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean index ced87f945..b96e63b71 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean @@ -109,7 +109,7 @@ inductive LC : Term Var → Prop | abs (L : Finset Var) (e : Term Var) : (∀ x ∉ L, LC (e ^ fvar x)) → LC (abs e) | app {l r} : l.LC → r.LC → LC (app l r) -attribute [scoped grind] LC.fvar LC.app +attribute [scoped grind .] LC.fvar LC.app inductive Value : Term Var → Prop | abs (e : Term Var) : e.abs.LC → e.abs.Value diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean index 8d1773591..1ad67142a 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean @@ -40,7 +40,7 @@ inductive FullBeta : Term Var → Term Var → Prop namespace FullBeta -attribute [scoped grind] appL appR +attribute [scoped grind .] appL appR variable {M M' N N' : Term Var} diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean index 0b0757909..a8ed21f9b 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean @@ -37,7 +37,7 @@ inductive Parallel : Term Var → Term Var → Prop open Parallel -attribute [scoped grind] Parallel.fvar Parallel.app +attribute [scoped grind .] Parallel.fvar Parallel.app attribute [scoped grind cases] Parallel variable {M M' N N' : Term Var} @@ -49,7 +49,7 @@ private lemma para_rs_Red_eq : M ⭢ₚ N ↔ Parallel M N := by simp_all /-- The left side of a parallel reduction is locally closed. -/ -@[scoped grind] +@[scoped grind →] lemma para_lc_l (step : M ⭢ₚ N) : LC M := by induction step case abs _ _ xs _ ih => exact LC.abs xs _ ih @@ -57,7 +57,7 @@ lemma para_lc_l (step : M ⭢ₚ N) : LC M := by all_goals grind /-- Parallel reduction is reflexive for locally closed terms. -/ -@[scoped grind] +@[scoped grind →] lemma Parallel.lc_refl (M : Term Var) (lc : LC M) : M ⭢ₚ M := by induction lc all_goals constructor <;> assumption @@ -65,7 +65,7 @@ lemma Parallel.lc_refl (M : Term Var) (lc : LC M) : M ⭢ₚ M := by variable [HasFresh Var] [DecidableEq Var] /-- The right side of a parallel reduction is locally closed. -/ -@[scoped grind] +@[scoped grind →] lemma para_lc_r (step : M ⭢ₚ N) : LC N := by induction step case abs _ _ xs _ ih => exact LC.abs xs _ ih @@ -108,7 +108,7 @@ theorem parachain_iff_redex : M ↠ₚ N ↔ M ↠βᶠ N := by case chain_redex.tail para redex => exact Relation.ReflTransGen.trans redex (para_to_redex para) /-- Parallel reduction respects substitution. -/ -@[scoped grind] +@[scoped grind .] lemma para_subst (x : Var) (pm : M ⭢ₚ M') (pn : N ⭢ₚ N') : M[x := N] ⭢ₚ M'[x := N'] := by induction pm case fvar => grind diff --git a/Cslib/Logics/LinearLogic/CLL/Basic.lean b/Cslib/Logics/LinearLogic/CLL/Basic.lean index 2281862ac..579b15547 100644 --- a/Cslib/Logics/LinearLogic/CLL/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/Basic.lean @@ -118,14 +118,14 @@ theorem Proposition.dual.neq (a : Proposition Atom) : a ≠ a⫠ := by cases a <;> simp [Proposition.dual] /-- Two propositions are equal iff their respective duals are equal. -/ -@[grind, simp] +@[grind =, simp] theorem Proposition.dual_inj (a b : Proposition Atom) : a⫠ = b⫠ ↔ a = b := by refine ⟨fun h ↦ ?_, congrArg dual⟩ induction a generalizing b <;> cases b all_goals aesop (add simp [Proposition.dual]) /-- Duality is an involution. -/ -@[grind, simp] +@[grind =, simp] theorem Proposition.dual.involution (a : Proposition Atom) : a⫠⫠ = a := by induction a <;> simp_all [dual] diff --git a/Cslib/Logics/LinearLogic/CLL/MProof.lean b/Cslib/Logics/LinearLogic/CLL/MProof.lean index f2d93715a..0f45ee330 100644 --- a/Cslib/Logics/LinearLogic/CLL/MProof.lean +++ b/Cslib/Logics/LinearLogic/CLL/MProof.lean @@ -48,7 +48,7 @@ attribute [local grind _=_] Multiset.cons_coe attribute [local grind] MProof /- TODO: This is probably a general property of Multiset (for general predicates). -/ -@[grind] +@[grind →] lemma MSequent.allQuest_from_sequent (h : Sequent.AllQuest Γ) : MSequent.AllQuest (Multiset.ofList Γ) := by intro b hin diff --git a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean index 74165697b..f0ee496c4 100644 --- a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean @@ -210,7 +210,7 @@ instance : One (Fact P) where one := dualFact (PhaseSpace.bot : Set P) @[scoped grind =, simp] lemma coe_one : ((1 : Fact P) : Set P) = (PhaseSpace.bot : Set P)⫠ := rfl -@[scoped grind, simp] lemma mem_one : +@[scoped grind =, simp] lemma mem_one : p ∈ (1 : Fact P) ↔ (∀ q ∈ PhaseSpace.bot, p * q ∈ PhaseSpace.bot) := Iff.rfl lemma one_mem_one : (1 : P) ∈ (1 : Fact P) := by simp [mem_one] From 7f94c9ef0701185f9b94ae9022df22bab4399e6b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 20 Oct 2025 06:41:48 +0000 Subject: [PATCH 017/253] Merge main into nightly-testing --- lake-manifest.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f1958f470..2e2e6bd10 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "30b020bbcb3b3e6c2b0c364f7725a7eafa8171c9", + "rev": "57f3a792e7ff634cfda85bc6557d4f4106aad9d0", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8d6f25c325b16b3b8a6dee0f05d20e424fe1bc30", + "rev": "4ea21a7d20e5ac4db46bab6013b53edc109abd04", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", From a3d2d673368ec829c676fb18b128f8e6e14e2025 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 20 Oct 2025 09:36:09 +0000 Subject: [PATCH 018/253] Merge main into nightly-testing --- lake-manifest.json | 10 +++++----- lean-toolchain | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 2e2e6bd10..871cbc789 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "57f3a792e7ff634cfda85bc6557d4f4106aad9d0", + "rev": "f23e0ba9024f6f842294066395815de292210482", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "84b9c4f5f7f9ab594ca6252bf91e293b974cc29a", + "rev": "6de2dd4b6aac9ce8825fa93c2b99b5e06c0b5456", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "07d6ac02ebdf6ef77651c9e1750c179d0f609ee6", + "rev": "85cc6389e0566786b2966da9512d1e8cf2402d96", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "b62fd39acc32da6fb8bb160c82d1bbc3cb3c186e", + "rev": "88e435f7b94b7e77c2006a72bf0702750684a8fb", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lean-toolchain b/lean-toolchain index 31decf5b0..9fdd10a79 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-19 +leanprover/lean4:nightly-2025-10-20 \ No newline at end of file From b949f085fe67cab7ce87c634ea14152f3460b6c9 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 20 Oct 2025 12:44:44 +0000 Subject: [PATCH 019/253] Merge main into nightly-testing --- lake-manifest.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 871cbc789..a648ec850 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,7 +5,7 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f23e0ba9024f6f842294066395815de292210482", + "rev": "60da7e01b00e00291362373da868550183a90236", "name": "mathlib", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4ea21a7d20e5ac4db46bab6013b53edc109abd04", + "rev": "549510facfeb630a65748f8c8c34fcd3dcfd6c7a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", From 74a39541161183320d826afef8d012611a46e3a4 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 20 Oct 2025 13:10:37 +0000 Subject: [PATCH 020/253] chore: bump to nightly-2025-10-20 with mathlib at nightly-testing-2025-10-20 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a648ec850..6d6556a04 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "60da7e01b00e00291362373da868550183a90236", + "rev": "f23e0ba9024f6f842294066395815de292210482", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "nightly-testing-2025-10-20", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "549510facfeb630a65748f8c8c34fcd3dcfd6c7a", + "rev": "4ea21a7d20e5ac4db46bab6013b53edc109abd04", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 830ab5eec..f4078969f 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing" +rev = "nightly-testing-2025-10-20" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 9fdd10a79..4208d0947 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-20 \ No newline at end of file +leanprover/lean4:nightly-2025-10-20 From c458a349399e3ad665ca298cc8e9e70254024868 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 21 Oct 2025 13:12:58 +0000 Subject: [PATCH 021/253] chore: bump to nightly-2025-10-21 with mathlib at nightly-testing-2025-10-21 --- lake-manifest.json | 32 ++++++++++++++++---------------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 6d6556a04..fdc704e81 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f23e0ba9024f6f842294066395815de292210482", + "rev": "afe13f6e909d350381903828473a7fe31be315cd", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-20", + "inputRev": "nightly-testing-2025-10-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b949552f6ca8e223f424b3e3b33f74185bbf1179", + "rev": "7607162f5a1c1eb23c23027629a418b3a160670e", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -25,7 +25,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "99657ad92e23804e279f77ea6dbdeebaa1317b98", + "rev": "2ed4ba69b6127de8f5c2af83cccacd3c988b06bf", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,60 +35,60 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "6de2dd4b6aac9ce8825fa93c2b99b5e06c0b5456", + "rev": "e5c37730d22634ee0169c164f25dac49918ed951", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "abcbabe9247335b968e6f91956ba04bd06bbbf4b", + "rev": "fb8ed0a85a96e3176f6e94b20d413ea72d92576d", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.76-pre", + "inputRev": "v0.0.77", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ebbdeccde9e2e0dee3db505ad721715f82044776", + "rev": "cbe864cd5177966c9e005418cfdc1fb36db62e13", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "85cc6389e0566786b2966da9512d1e8cf2402d96", + "rev": "593aa51c4aa07ee81e9233b53e1f61a5b4d9f761", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4ea21a7d20e5ac4db46bab6013b53edc109abd04", + "rev": "5bd478197f2e5d2a4fde527cf3581d83f49baa9b", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "88e435f7b94b7e77c2006a72bf0702750684a8fb", + "rev": "f75f4926aff7ba19949e16c19094d7298806b1a6", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "v4.25.0-rc1", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index f4078969f..a0b641f59 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-20" +rev = "nightly-testing-2025-10-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 4208d0947..92d59968c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-20 +leanprover/lean4:nightly-2025-10-21 From 656f20bf5ecc39ec0841b18bd325fb997ae69246 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 21 Oct 2025 13:19:32 -0400 Subject: [PATCH 022/253] fix incorrect merge --- Cslib/Languages/CCS/Basic.lean | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/Cslib/Languages/CCS/Basic.lean b/Cslib/Languages/CCS/Basic.lean index 61f165ad2..2e0a8ac95 100644 --- a/Cslib/Languages/CCS/Basic.lean +++ b/Cslib/Languages/CCS/Basic.lean @@ -58,7 +58,7 @@ inductive IsVisible : Act Name → Prop where /-- If an action is visible, it is not `τ`. -/ @[grind →, simp] -theorem Act.isVisible_neq_τ {μ : Act Name} (h : μ.IsVisible) : μ ≠ Act.τ := by +theorem isVisible_neq_τ {μ : Act Name} (h : μ.IsVisible) : μ ≠ Act.τ := by cases μ <;> grind /-- Checks that an action is the coaction of another. -/ @@ -69,11 +69,20 @@ inductive Co {Name : Type u} : Act Name → Act Name → Prop where /-- `Act.Co` is symmetric. -/ @[grind →, symm] -theorem Act.Co.symm (h : Act.Co μ μ') : Act.Co μ' μ := by grind +theorem Co.symm (h : Act.Co μ μ') : Act.Co μ' μ := by grind + +@[grind] +def isCo [DecidableEq Name] (μ μ' : Act Name) : Bool := + match μ, μ' with + | name a, coname b | coname a, name b => a = b + | _, _ => false + +theorem isCo_iff [DecidableEq Name] {μ μ' : Act Name} : isCo μ μ' ↔ Co μ μ' := by + grind [cases Act] /-- If two actions are one the coaction of the other, then they are both visible. -/ @[grind →] -theorem Act.co_isVisible (h : Act.Co μ μ') : μ.IsVisible ∧ μ'.IsVisible := by grind +theorem co_isVisible (h : Act.Co μ μ') : μ.IsVisible ∧ μ'.IsVisible := by grind /-- `Act.Co` is decidable if `Name` equality is decidable. -/ instance [DecidableEq Name] {μ μ' : Act Name} : Decidable (Co μ μ') := From fa7421c337de96275e4c0551d7047fc5240f65b6 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Wed, 22 Oct 2025 10:11:03 +1100 Subject: [PATCH 023/253] set toolchain to a nightly --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index 5946692c4..4208d0947 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.25.0-rc1 +leanprover/lean4:nightly-2025-10-20 From 3c375dbb50d72f7b6a4bdba3e48400a78f3e9563 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 26 Oct 2025 13:07:36 +0000 Subject: [PATCH 024/253] chore: bump to nightly-2025-10-26 with mathlib at nightly-testing-2025-10-26 --- lake-manifest.json | 22 +++++++++++----------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fdc704e81..7c3cb4989 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "afe13f6e909d350381903828473a7fe31be315cd", + "rev": "7d2e53aea6e90d6ff50f8081615c53963d000623", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-21", + "inputRev": "nightly-testing-2025-10-26", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7607162f5a1c1eb23c23027629a418b3a160670e", + "rev": "8864a73bf79aad549e34eff972c606343935106d", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e5c37730d22634ee0169c164f25dac49918ed951", + "rev": "451499ea6e97cee4c8979b507a9af5581a849161", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,17 +55,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "cbe864cd5177966c9e005418cfdc1fb36db62e13", + "rev": "4a3ce659d261999092b231d7c9898de1be5363fc", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "593aa51c4aa07ee81e9233b53e1f61a5b4d9f761", + "rev": "95c2f8afe09d9e49d3cacca667261da04f7f93f7", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "master", @@ -75,20 +75,20 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5bd478197f2e5d2a4fde527cf3581d83f49baa9b", + "rev": "312c025b76d4430696680c4247bc31fc6b3bf3ca", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "f75f4926aff7ba19949e16c19094d7298806b1a6", + "rev": "72ae7004d9f0ddb422aec5378204fdd7828c5672", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.25.0-rc1", + "inputRev": "v4.25.0-rc2", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index a0b641f59..b7f34b730 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-21" +rev = "nightly-testing-2025-10-26" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 92d59968c..25d70541e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-21 +leanprover/lean4:nightly-2025-10-26 From a0b567e3f99724e79acc26f200421d1d34eaaa2a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 27 Oct 2025 16:02:19 +0000 Subject: [PATCH 025/253] chore: bump to nightly-2025-10-27 with mathlib at nightly-testing-2025-10-27 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 7c3cb4989..8046fd6c8 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "7d2e53aea6e90d6ff50f8081615c53963d000623", + "rev": "daa21570b791337ce33135a2d2acceab9c451734", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-26", + "inputRev": "nightly-testing-2025-10-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "312c025b76d4430696680c4247bc31fc6b3bf3ca", + "rev": "bbf54fb01b6a8c8ae04303cc4fa815f8367be3de", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index b7f34b730..a4ebbcc3c 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-26" +rev = "nightly-testing-2025-10-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 25d70541e..d7d313aba 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-26 +leanprover/lean4:nightly-2025-10-27 From ebfc8bb77b758d4f9f1719e308acff920c36adf2 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 28 Oct 2025 01:29:46 -0400 Subject: [PATCH 026/253] changes to multigoal linter --- .../Foundations/Semantics/LTS/Bisimulation.lean | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean index 2526d3f43..0dcc26af2 100644 --- a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean +++ b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean @@ -479,12 +479,16 @@ theorem Bisimulation.traceEq_not_bisim : case inl h1 => simp only [h1] exists 3 - constructor; apply BisimMotTr.one2two; apply LTS.MTr.single; + constructor + · apply BisimMotTr.one2two + · apply LTS.MTr.single apply BisimMotTr.two2three case inr h1 => cases h1 exists 4 - constructor; apply BisimMotTr.one2two; apply LTS.MTr.single; + constructor + · apply BisimMotTr.one2two + · apply LTS.MTr.single apply BisimMotTr.two2four have htraces2 : lts.traces 5 = {[], ['a'], ['a', 'b'], ['a', 'c']} := by apply Set.ext_iff.2 @@ -536,12 +540,16 @@ theorem Bisimulation.traceEq_not_bisim : case inl h1 => simp only [h1] exists 7 - constructor; apply BisimMotTr.five2six; apply LTS.MTr.single; + constructor + · apply BisimMotTr.five2six + · apply LTS.MTr.single apply BisimMotTr.six2seven case inr h1 => cases h1 exists 9 - constructor; apply BisimMotTr.five2eight; apply LTS.MTr.single; + constructor + · apply BisimMotTr.five2eight + · apply LTS.MTr.single; apply BisimMotTr.eight2nine simp [htraces1, htraces2] specialize h htreq From b627a5b33e6c19dc4f5960fb26e58c7d57367fff Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 28 Oct 2025 01:37:19 -0400 Subject: [PATCH 027/253] replace Finset.toSet --- Cslib/Foundations/Data/Nat/Segment.lean | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index 9e4a3b9ca..5059bd902 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -200,17 +200,17 @@ theorem segment'_eq_segment (hm : StrictMono f) : unfold segment ; congr 1 simp only [count_eq_card_filter_range] suffices h : ∃ g, BijOn g - ({x ∈ Finset.range (k - f 0 + 1) | x ∈ range fun x => f x - f 0}).toSet - ({x ∈ Finset.range (k + 1) | x ∈ range f}).toSet by + ({x ∈ Finset.range (k - f 0 + 1) | x ∈ range fun x => f x - f 0}) + ({x ∈ Finset.range (k + 1) | x ∈ range f}) by obtain ⟨g, h_bij⟩ := h - exact BijOn.finsetCard_eq g h_bij + grind [BijOn.finsetCard_eq, Finset.coe_filter] refine ⟨fun n ↦ n + f 0, ?_, ?_, ?_⟩ - · intro n ; simp only [mem_range, Finset.coe_filter, Finset.mem_range, mem_setOf_eq] + · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq] rintro ⟨h_n, i, rfl⟩ have := StrictMono.monotone hm <| zero_le i refine ⟨?_, i, ?_⟩ <;> omega · grind [injOn_of_injective, Injective] - · intro n ; simp only [mem_range, Finset.coe_filter, Finset.mem_range, mem_setOf_eq, mem_image] + · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq, mem_image] rintro ⟨h_n, i, rfl⟩ have := StrictMono.monotone hm <| zero_le i use f i - f 0 From a196fdff765a2c78a97bba18a919e820702ab7cb Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 29 Oct 2025 13:12:09 +0000 Subject: [PATCH 028/253] chore: bump to nightly-2025-10-29 with mathlib at nightly-testing-2025-10-29 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8046fd6c8..461ab9d4c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "daa21570b791337ce33135a2d2acceab9c451734", + "rev": "e3d159a14fe17c79b953b7d56f38ebdde8248062", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-27", + "inputRev": "nightly-testing-2025-10-29", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bbf54fb01b6a8c8ae04303cc4fa815f8367be3de", + "rev": "e94d5e4b0500e3013afb79c44e42a36282c760c3", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index a4ebbcc3c..d5e761229 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-27" +rev = "nightly-testing-2025-10-29" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index d7d313aba..72a6e212e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-27 +leanprover/lean4:nightly-2025-10-29 From 2d83b2df13e00be1d12e30874501e078bdf0415a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 30 Oct 2025 22:02:21 +0000 Subject: [PATCH 029/253] chore: bump to nightly-2025-10-30 with mathlib at nightly-testing-2025-10-30 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 461ab9d4c..cb31b38e9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e3d159a14fe17c79b953b7d56f38ebdde8248062", + "rev": "985e8a879b3b159f02f4531edc11f5d3be60d65b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-29", + "inputRev": "nightly-testing-2025-10-30", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e94d5e4b0500e3013afb79c44e42a36282c760c3", + "rev": "7a38977b231dd56a41616a47a2f7ac7b3428054b", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3e83031f6..4a2e8d651 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-29" +rev = "nightly-testing-2025-10-30" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 72a6e212e..59a935e4e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-29 +leanprover/lean4:nightly-2025-10-30 From ed67926095d72c91032a91764935c26769e9907d Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 31 Oct 2025 01:08:28 -0400 Subject: [PATCH 030/253] lint --- Cslib/Foundations/Data/Nat/Segment.lean | 1 - 1 file changed, 1 deletion(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index 6f92c8206..3658c2c20 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -203,7 +203,6 @@ theorem segment'_eq_segment (hm : StrictMono f) : suffices h : ∃ g, BijOn g ({x ∈ Finset.range (k - f 0 + 1) | x ∈ range fun x => f x - f 0}) ({x ∈ Finset.range (k + 1) | x ∈ range f}) by - obtain ⟨g, h_bij⟩ := h grind [BijOn.finsetCard_eq, Finset.coe_filter] refine ⟨fun n ↦ n + f 0, ?_, ?_, ?_⟩ · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq] From adc2f7bccdac493708c1a3923c9b95446ddecbb9 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 31 Oct 2025 13:10:14 +0000 Subject: [PATCH 031/253] chore: bump to nightly-2025-10-31 with mathlib at nightly-testing-2025-10-31 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index cb31b38e9..b95ae1fe9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "985e8a879b3b159f02f4531edc11f5d3be60d65b", + "rev": "5acb7976977f197185d79a16e6a4a12beb6e96f8", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-30", + "inputRev": "nightly-testing-2025-10-31", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,27 +55,27 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4a3ce659d261999092b231d7c9898de1be5363fc", + "rev": "1fa48c6a63b4c4cda28be61e1037192776e77ac0", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "95c2f8afe09d9e49d3cacca667261da04f7f93f7", + "rev": "66ddf4c937645a841575f496be0ae32f7427144a", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7a38977b231dd56a41616a47a2f7ac7b3428054b", + "rev": "ede717d4136f68d17d8f977644a754b673770e38", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 4a2e8d651..6a17112d9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-30" +rev = "nightly-testing-2025-10-31" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 59a935e4e..7fe9745f9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-30 +leanprover/lean4:nightly-2025-10-31 From 41a851121d89f31f7a6b164ed9aeae55670af13a Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 1 Nov 2025 04:52:37 -0400 Subject: [PATCH 032/253] changes we should take from main (from PRs) --- Cslib/Languages/CCS/Basic.lean | 8 ++++---- .../LocallyNameless/Untyped/FullBetaConfluence.lean | 6 ++++-- Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Cslib/Languages/CCS/Basic.lean b/Cslib/Languages/CCS/Basic.lean index d5858d4cb..1c3a099cc 100644 --- a/Cslib/Languages/CCS/Basic.lean +++ b/Cslib/Languages/CCS/Basic.lean @@ -72,6 +72,10 @@ inductive Co {Name : Type u} : Act Name → Act Name → Prop where @[grind →, symm] theorem Co.symm (h : Act.Co μ μ') : Act.Co μ' μ := by grind +/-- If two actions are one the coaction of the other, then they are both visible. -/ +@[grind →] +theorem co_isVisible (h : Act.Co μ μ') : μ.IsVisible ∧ μ'.IsVisible := by grind + @[grind] def isCo [DecidableEq Name] (μ μ' : Act Name) : Bool := match μ, μ' with @@ -81,10 +85,6 @@ def isCo [DecidableEq Name] (μ μ' : Act Name) : Bool := theorem isCo_iff [DecidableEq Name] {μ μ' : Act Name} : isCo μ μ' ↔ Co μ μ' := by grind [cases Act] -/-- If two actions are one the coaction of the other, then they are both visible. -/ -@[grind →] -theorem co_isVisible (h : Act.Co μ μ') : μ.IsVisible ∧ μ'.IsVisible := by grind - /-- `Act.Co` is decidable if `Name` equality is decidable. -/ instance [DecidableEq Name] {μ μ' : Act Name} : Decidable (Co μ μ') := decidable_of_decidable_of_iff isCo_iff diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean index d73e4eed3..663bce3df 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean @@ -163,8 +163,10 @@ theorem para_diamond : Diamond (@Parallel Var) := by have ⟨t'', _⟩ := @ih1 x q1 _ (mem' _ q2) exists (t'' ^* x) ^ t' constructor - -- TODO: understand why the grind_pattern for this stopped working - · grind [subst_intro] + · #adaptation_note + /-- Moving from `nightly-2025-09-15` to `nightly-2025-10-19`, the grind_pattern for + subst_intro (defined in Properties.lean) stopped working here. -/ + grind [subst_intro] · apply Parallel.beta (free_union [fv] Var) <;> grind case beta u1' u2' xs' mem' s2pu2' => have ⟨x, qx⟩ := fresh_exists (xs ∪ xs' ∪ free_union [fv] Var) diff --git a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean index 42dd30e03..203ddecce 100644 --- a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean @@ -100,7 +100,7 @@ lemma orth_antitone {X Y : Set P} (hXY : X ⊆ Y) : Y⫠ ⊆ X⫠ := by grind lemma orth_extensive (X : Set P) : X ⊆ X⫠⫠ := by grind /-- The triple orthogonal equals the orthogonal: X⫠⫠⫠ = X⫠. -/ -lemma triple_orth (X : Set P) : X⫠⫠⫠ = X⫠ := by +lemma triple_orth (X : Set P) : X⫠⫠⫠ = X⫠ := by apply le_antisymm <;> grind [orth_extensive] lemma triple_dual {G : Set P} : G⫠⫠⫠⫠⫠ = G⫠⫠⫠ := by grind [triple_orth] From de55ae2e270265c6cd917e66f5c6d68a3a98ca93 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 5 Nov 2025 13:11:21 +0000 Subject: [PATCH 033/253] chore: bump to nightly-2025-11-05 with mathlib at nightly-testing-2025-11-05 --- lake-manifest.json | 18 +++++++++--------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index b95ae1fe9..8d8135b64 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,20 +5,20 @@ "type": "git", "subDir": null, "scope": "", - "rev": "5acb7976977f197185d79a16e6a4a12beb6e96f8", + "rev": "30907b8b266fae6fbb6806989d03c56bd145a07b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-10-31", + "inputRev": "nightly-testing-2025-11-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8864a73bf79aad549e34eff972c606343935106d", + "rev": "ca46151b876597b20728bd65794928efda180d13", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", @@ -55,27 +55,27 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1fa48c6a63b4c4cda28be61e1037192776e77ac0", + "rev": "7f680f8bde69abc391be23db57e1cc7ccc7e52a9", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "66ddf4c937645a841575f496be0ae32f7427144a", + "rev": "95c2f8afe09d9e49d3cacca667261da04f7f93f7", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ede717d4136f68d17d8f977644a754b673770e38", + "rev": "096e45b3f4d390cb71e39f08524b49c30fe41ebe", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6a17112d9..743ee0429 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-10-31" +rev = "nightly-testing-2025-11-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 7fe9745f9..ebecb53a8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-10-31 +leanprover/lean4:nightly-2025-11-05 From c9f608342f03a84749e160a5fdff72336cc28793 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 6 Nov 2025 13:11:13 +0000 Subject: [PATCH 034/253] chore: bump to nightly-2025-11-06 with mathlib at nightly-testing-2025-11-06 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8d8135b64..5a3abf05a 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "30907b8b266fae6fbb6806989d03c56bd145a07b", + "rev": "ffe067087265bbba429df3ccf633e3ae7c77f82c", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-05", + "inputRev": "nightly-testing-2025-11-06", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "096e45b3f4d390cb71e39f08524b49c30fe41ebe", + "rev": "21c0ac630d4e62737fa0c62e6a7da54268eb3021", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 743ee0429..c205865e3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-05" +rev = "nightly-testing-2025-11-06" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ebecb53a8..53f6646ba 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-05 +leanprover/lean4:nightly-2025-11-06 From 1c4e4f2f4e5f48368368de91e27830a7c2c9b585 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 8 Nov 2025 13:06:57 +0000 Subject: [PATCH 035/253] chore: bump to nightly-2025-11-08 with mathlib at nightly-testing-2025-11-08 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 5a3abf05a..953ed5451 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ffe067087265bbba429df3ccf633e3ae7c77f82c", + "rev": "c68d05605c852bffb5dd07fb4a0fa4e7c91b7e2b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-06", + "inputRev": "nightly-testing-2025-11-08", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "21c0ac630d4e62737fa0c62e6a7da54268eb3021", + "rev": "7e6daeecefe207e1b3863340ba9394b58c1c1ed3", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index c205865e3..b11b16bf2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-06" +rev = "nightly-testing-2025-11-08" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 53f6646ba..812904afe 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-06 +leanprover/lean4:nightly-2025-11-08 From 19d26531729ebf8306cfad4e80ffb183a10b19fd Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 10 Nov 2025 13:11:17 +0000 Subject: [PATCH 036/253] chore: bump to nightly-2025-11-10 with mathlib at nightly-testing-2025-11-10 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 953ed5451..d5d52f180 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c68d05605c852bffb5dd07fb4a0fa4e7c91b7e2b", + "rev": "41b823e92c33dc95da631526f176a2bae82580c6", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-08", + "inputRev": "nightly-testing-2025-11-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7e6daeecefe207e1b3863340ba9394b58c1c1ed3", + "rev": "0f2be49a2c344eb0386e6334869f843974e54c3b", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index b11b16bf2..aaaa9c3db 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-08" +rev = "nightly-testing-2025-11-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 812904afe..0b19b943a 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-08 +leanprover/lean4:nightly-2025-11-10 From 3c0e4f50b67657e39d1f8ffebf09d36ff6b5fedb Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 10 Nov 2025 09:19:32 -0500 Subject: [PATCH 037/253] more lint changes --- .../Computability/Languages/RegularLanguage.lean | 2 +- Cslib/Foundations/Data/Nat/Segment.lean | 4 +--- .../Foundations/Data/OmegaSequence/Flatten.lean | 1 - .../Foundations/Semantics/LTS/Bisimulation.lean | 5 +---- Cslib/Languages/CCS/BehaviouralTheory.lean | 16 +--------------- .../LocallyNameless/Fsub/Typing.lean | 2 -- 6 files changed, 4 insertions(+), 26 deletions(-) diff --git a/Cslib/Computability/Languages/RegularLanguage.lean b/Cslib/Computability/Languages/RegularLanguage.lean index 454a76643..d677c7590 100644 --- a/Cslib/Computability/Languages/RegularLanguage.lean +++ b/Cslib/Computability/Languages/RegularLanguage.lean @@ -59,7 +59,7 @@ theorem IsRegular.compl {l : Language Symbol} (h : l.IsRegular) : (lᶜ).IsRegul rw [IsRegular.iff_cslib_dfa] at h ⊢ obtain ⟨State, _, ⟨da, acc⟩, rfl⟩ := h use State, inferInstance, ⟨da, accᶜ⟩ - ext; grind + grind @[simp] theorem IsRegular.zero : (0 : Language Symbol).IsRegular := by diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index 3658c2c20..1b77328a8 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -196,8 +196,7 @@ theorem segment'_eq_segment (hm : StrictMono f) : classical ext k ; unfold segment' rcases (show k < f 0 ∨ k ≥ f 0 by omega) with h_k | h_k - · have : k - f 0 = 0 := by grind - grind + · grind unfold segment ; congr 1 simp only [count_eq_card_filter_range] suffices h : ∃ g, BijOn g @@ -213,7 +212,6 @@ theorem segment'_eq_segment (hm : StrictMono f) : · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq, mem_image] rintro ⟨h_n, i, rfl⟩ have := StrictMono.monotone hm <| zero_le i - use f i - f 0 grind /-- For a strictly monotonic function `f : ℕ → ℕ`, `segment f k = 0` for all `k ≤ f 0`. -/ diff --git a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean index 094bed513..8eb3054e4 100644 --- a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean +++ b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean @@ -154,7 +154,6 @@ theorem extract_flatten [Inhabited α] {ls : ωSequence (List α)} (h_ls : ∀ k have h_ls' : ∀ k, (ls.drop n k).length > 0 := by grind have h_drop := flatten_drop h_ls n have h_take := flatten_take h_ls' 1 - have : (ls.drop n).cumLen 1 = ls.cumLen (n + 1) - ls.cumLen n := by grind grind [extract_eq_drop_take] /-- Given an ω-sequence `s` and a function `f : ℕ → ℕ`, `s.toSegs f` is the ω-sequence diff --git a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean index 0dcc26af2..5258d27f0 100644 --- a/Cslib/Foundations/Semantics/LTS/Bisimulation.lean +++ b/Cslib/Foundations/Semantics/LTS/Bisimulation.lean @@ -137,8 +137,6 @@ theorem LTS.IsBisimulation.inv (h : lts.IsBisimulation r) : /-- Bisimilarity is symmetric. -/ @[grind →, symm] theorem Bisimilarity.symm {s1 s2 : State} (h : s1 ~[lts] s2) : s2 ~[lts] s1 := by - obtain ⟨r, _, _⟩ := h - exists (flip r) grind [flip] /-- The composition of two bisimulations is a bisimulation. -/ @@ -256,8 +254,7 @@ instance : SemilatticeSup {r // lts.IsBisimulation r} where sup_le r s t := by intro h1 h2 simp only [LE.le, max, SemilatticeSup.sup] - intro s1 s2 - intro h + intro s1 s2 h cases h case inl h => apply h1 _ _ h diff --git a/Cslib/Languages/CCS/BehaviouralTheory.lean b/Cslib/Languages/CCS/BehaviouralTheory.lean index fa5e7a6e9..103005c5b 100644 --- a/Cslib/Languages/CCS/BehaviouralTheory.lean +++ b/Cslib/Languages/CCS/BehaviouralTheory.lean @@ -256,21 +256,7 @@ theorem bisimilarity_congr_pre : case pre p' q' μ hbis => unfold lts constructor <;> intro _ _ <;> [exists q'; exists p'] <;> grind - case bisim hbis => - constructor - case left => - intro s1' htr - obtain ⟨_, hr, hb⟩ := hbis - obtain ⟨s2', _⟩ := hb.follow_fst hr htr - exists s2' - grind [Bisimilarity.largest_bisimulation] - case right => - intro s2' htr - obtain ⟨_, hr, hb⟩ := hbis - have ⟨_, hb2⟩ := hb hr μ' - obtain ⟨s1', _⟩ := hb2 _ htr - exists s1' - grind [Bisimilarity.largest_bisimulation] + case bisim => grind [Bisimilarity.largest_bisimulation] @[local grind] private inductive ResBisim : Process Name Constant → Process Name Constant → Prop where diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean index 59f96f91b..ddced77e5 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean @@ -96,8 +96,6 @@ lemma narrow (sub : Sub Δ δ δ') (der : Typing (Γ ++ ⟨X, Binding.sub δ'⟩ induction der generalizing Γ case var X' _ _ => have : .sub δ' ∈ dlookup X (Γ ++ ⟨X, .sub δ'⟩ :: Δ) := by grind [List.mem_dlookup] - have : X ≠ X' := by grind - have p (δ) : Γ ++ ⟨X, .sub δ⟩ :: Δ ~ ⟨X, .sub δ⟩ :: (Γ ++ Δ) := perm_middle grind [Env.Wf.narrow, List.perm_nodupKeys, => List.perm_dlookup] case' abs => apply abs (free_union Var) case' tabs => apply tabs (free_union Var) From 55dd07079b3fde3720a1ec19660c46b36b704491 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 11 Nov 2025 13:11:11 +0000 Subject: [PATCH 038/253] chore: bump to nightly-2025-11-11 with mathlib at nightly-testing-2025-11-11 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index d5d52f180..97f44a262 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "41b823e92c33dc95da631526f176a2bae82580c6", + "rev": "2eeab6fa823e239db2f59f20195db3f6e5c49fb6", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-10", + "inputRev": "nightly-testing-2025-11-11", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7f680f8bde69abc391be23db57e1cc7ccc7e52a9", + "rev": "cb6ca211f9a001a3b56b43977e8b52f3af8bf6fd", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0f2be49a2c344eb0386e6334869f843974e54c3b", + "rev": "828bc7c72aac4efc1906c784bf86d229f2feb91a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index aaaa9c3db..505c08738 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-10" +rev = "nightly-testing-2025-11-11" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0b19b943a..b8a9d31cc 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-10 +leanprover/lean4:nightly-2025-11-11 From 3fa0b55fc28cb27f2caeafb77fa218770439a63e Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 12 Nov 2025 13:12:24 +0000 Subject: [PATCH 039/253] chore: bump to nightly-2025-11-12 with mathlib at nightly-testing-2025-11-12 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 97f44a262..2c759d531 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "2eeab6fa823e239db2f59f20195db3f6e5c49fb6", + "rev": "e1d1dcb6e3708c37cf66910bc2171eafd187b128", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-11", + "inputRev": "nightly-testing-2025-11-12", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "828bc7c72aac4efc1906c784bf86d229f2feb91a", + "rev": "4d007603df3fe747479dc05bf8436eafd50f2f35", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 505c08738..e86c573eb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-11" +rev = "nightly-testing-2025-11-12" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b8a9d31cc..1f4ffe0da 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-11 +leanprover/lean4:nightly-2025-11-12 From c29367b490ead8830283396bc9fbc92eb91b8b95 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 13 Nov 2025 16:02:11 +0000 Subject: [PATCH 040/253] chore: bump to nightly-2025-11-13 with mathlib at nightly-testing-2025-11-13 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 2c759d531..f5668fd11 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e1d1dcb6e3708c37cf66910bc2171eafd187b128", + "rev": "97d6356132c827bf339c05d8ea55f7a5dc7fdeb9", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-12", + "inputRev": "nightly-testing-2025-11-13", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4d007603df3fe747479dc05bf8436eafd50f2f35", + "rev": "ebdad22481215c741c2f6f7882d3cc2d3d8f46d6", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e86c573eb..05f570df9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-12" +rev = "nightly-testing-2025-11-13" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 1f4ffe0da..a3de4924f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-12 +leanprover/lean4:nightly-2025-11-13 From c41245cafd0f7a4a03ee11c309e23b1c1755e395 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 14 Nov 2025 16:02:04 +0000 Subject: [PATCH 041/253] chore: bump to nightly-2025-11-14 with mathlib at nightly-testing-2025-11-14 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f5668fd11..b0410bf74 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "97d6356132c827bf339c05d8ea55f7a5dc7fdeb9", + "rev": "164dd5447ea6d466353ad9a3c08e0c7d7ff04544", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-13", + "inputRev": "nightly-testing-2025-11-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "451499ea6e97cee4c8979b507a9af5581a849161", + "rev": "009064c21bad4d7f421f2901c5e817c8bf3468cb", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "95c2f8afe09d9e49d3cacca667261da04f7f93f7", + "rev": "2781d8ad404303b2fe03710ac7db946ddfe3539f", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "master", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ebdad22481215c741c2f6f7882d3cc2d3d8f46d6", + "rev": "d53e65c06abb89c732eb5734702cd07a46886f19", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "72ae7004d9f0ddb422aec5378204fdd7828c5672", + "rev": "1dae8b12f8ba27576ffe5ddee78bebf6458157b0", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.25.0-rc2", + "inputRev": "v4.25.0", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 05f570df9..cf55b9383 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-13" +rev = "nightly-testing-2025-11-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index a3de4924f..3fbc52335 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-13 +leanprover/lean4:nightly-2025-11-14 From 13cdf353de403ed1daaed6130b44455df9357659 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 15 Nov 2025 13:07:01 +0000 Subject: [PATCH 042/253] chore: bump to nightly-2025-11-15 with mathlib at nightly-testing-2025-11-15 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index b0410bf74..7f1f2cb15 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "164dd5447ea6d466353ad9a3c08e0c7d7ff04544", + "rev": "a1f446e15624935672950bad32dcbf83ab856e34", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-14", + "inputRev": "nightly-testing-2025-11-15", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "d53e65c06abb89c732eb5734702cd07a46886f19", + "rev": "288c6ec9cc2b99b779b2cf1d263085b72b70054e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index cf55b9383..bfc61a0e7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-14" +rev = "nightly-testing-2025-11-15" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3fbc52335..5a6258407 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-14 +leanprover/lean4:nightly-2025-11-15 From 222d5ab316d1d6bcfc209c146aa8c2b460e9b31f Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 17 Nov 2025 13:11:24 +0000 Subject: [PATCH 043/253] chore: bump to nightly-2025-11-17 with mathlib at nightly-testing-2025-11-17 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 7f1f2cb15..95f8b81d0 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a1f446e15624935672950bad32dcbf83ab856e34", + "rev": "eda6b9680a758291aa990e6c7dfa0634f00a8f6b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-15", + "inputRev": "nightly-testing-2025-11-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "fb8ed0a85a96e3176f6e94b20d413ea72d92576d", + "rev": "9ca66a6f83caf151b447a9102554c8eccf33c70f", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.77", + "inputRev": "v0.0.80-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "288c6ec9cc2b99b779b2cf1d263085b72b70054e", + "rev": "17572de4f6e11d803b8da95b5a3a9d99714b969d", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index bfc61a0e7..633f739f9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-15" +rev = "nightly-testing-2025-11-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 5a6258407..950d04c81 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-15 +leanprover/lean4:nightly-2025-11-17 From 4142d494271828c7788f19490b7104b0005b75d9 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 18 Nov 2025 13:11:43 +0000 Subject: [PATCH 044/253] chore: bump to nightly-2025-11-18 with mathlib at nightly-testing-2025-11-18 --- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 95f8b81d0..a02d5d299 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "eda6b9680a758291aa990e6c7dfa0634f00a8f6b", + "rev": "9e00cef02259376402a852f54693de74e8f84d7a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-17", + "inputRev": "nightly-testing-2025-11-18", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "009064c21bad4d7f421f2901c5e817c8bf3468cb", + "rev": "7ff87023a8e1b358d2d01c1bc56b040a60609577", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "cb6ca211f9a001a3b56b43977e8b52f3af8bf6fd", + "rev": "51c860af343fb7da71321c8904950a0f471ae5eb", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2781d8ad404303b2fe03710ac7db946ddfe3539f", + "rev": "1be06a278c3c249edafb722bfb278622024929d8", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "master", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "17572de4f6e11d803b8da95b5a3a9d99714b969d", + "rev": "63c127458dd8dc0886e291e94a58ea5db136d26d", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "1dae8b12f8ba27576ffe5ddee78bebf6458157b0", + "rev": "00fad25fa9bedece1f1f988ab9c180dfe3d535b3", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.25.0", + "inputRev": "v4.26.0-rc1", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 633f739f9..d29876426 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-17" +rev = "nightly-testing-2025-11-18" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 950d04c81..2b7cc37d4 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-17 +leanprover/lean4:nightly-2025-11-18 From 985f4d56a57e9b9af807b74281b89e1ffcb53410 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 18 Nov 2025 21:07:00 -0500 Subject: [PATCH 045/253] FinFun grind failure --- Cslib/Foundations/Data/FinFun.lean | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Cslib/Foundations/Data/FinFun.lean b/Cslib/Foundations/Data/FinFun.lean index 1c1d80620..6f808addd 100644 --- a/Cslib/Foundations/Data/FinFun.lean +++ b/Cslib/Foundations/Data/FinFun.lean @@ -126,7 +126,8 @@ theorem fromFun_inter [Zero β] [DecidableEq α] @[scoped grind =] theorem fromFun_comm [Zero β] [DecidableEq α] [∀ y : β, Decidable (y = 0)] {f : α → β} {support1 support2 : Finset α} : - (f ↾₀ support1) ↾₀ support2 = (f ↾₀ support2) ↾₀ support1 := by grind + (f ↾₀ support1) ↾₀ support2 = (f ↾₀ support2) ↾₀ support1 := by + grind only [= coe_eq_fn, = fromFun_fn, ←= ext] end FinFun From 3431d10614d4ae77a2475ebaf75cc19d190a8ade Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Wed, 19 Nov 2025 14:47:34 +1100 Subject: [PATCH 046/253] fix --- .../LambdaCalculus/LocallyNameless/Fsub/Subtype.lean | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean index 017ed7192..a884a9287 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Subtype.lean @@ -85,7 +85,11 @@ lemma narrow_aux subst eq have p : ∀ δ, Γ ++ ⟨X, Binding.sub δ⟩ :: Δ ~ ⟨X, Binding.sub δ⟩ :: (Γ ++ Δ) := by grind [perm_middle] - by_cases X = X' <;> grind [Sub.weaken, sublist_append_of_sublist_right] + by_cases X = X' + · grind only [= append_assoc, = Option.or_some, = dlookup_append, weaken, = dlookup_cons_eq, + → wf, =_ singleton_append, =_ cons_append, = mem_append, = Option.or_eq_some_iff, + = Option.mem_some, =_ append_assoc, trans_tvar, cases Or] + · grind [Sub.weaken, sublist_append_of_sublist_right] case all => apply Sub.all (free_union Var) <;> grind #adaptation_note /-- From 88a38b0fb53cad10018557e8377d731ecfe6da1f Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Wed, 19 Nov 2025 14:48:58 +1100 Subject: [PATCH 047/253] remove redundant have --- Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean | 1 - 1 file changed, 1 deletion(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean index ddced77e5..c728f20fc 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Typing.lean @@ -95,7 +95,6 @@ lemma narrow (sub : Sub Δ δ δ') (der : Typing (Γ ++ ⟨X, Binding.sub δ'⟩ generalize eq : Γ ++ ⟨X, Binding.sub δ'⟩ :: Δ = Θ at der induction der generalizing Γ case var X' _ _ => - have : .sub δ' ∈ dlookup X (Γ ++ ⟨X, .sub δ'⟩ :: Δ) := by grind [List.mem_dlookup] grind [Env.Wf.narrow, List.perm_nodupKeys, => List.perm_dlookup] case' abs => apply abs (free_union Var) case' tabs => apply tabs (free_union Var) From 094eb8a1333fc4b14a8417fe34deeb0a495be21a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 20 Nov 2025 13:11:12 +0000 Subject: [PATCH 048/253] chore: bump to nightly-2025-11-20 with mathlib at nightly-testing-2025-11-20 --- lake-manifest.json | 28 ++++++++++++++-------------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a02d5d299..3231f95f6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9e00cef02259376402a852f54693de74e8f84d7a", + "rev": "3dc572b55ec47e50cd184d2b8053cab9e91d4450", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-18", + "inputRev": "nightly-testing-2025-11-20", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -25,37 +25,37 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2ed4ba69b6127de8f5c2af83cccacd3c988b06bf", + "rev": "ea30e4c47dcef0bb7c002e9a017a8b6b65833232", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ff87023a8e1b358d2d01c1bc56b040a60609577", + "rev": "c5dd2e96c1f87369e6dfea983fc0eb24523a72ca", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9ca66a6f83caf151b447a9102554c8eccf33c70f", + "rev": "301f98e357b21e7e1abb84692b1e09644443e920", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.80-pre1", + "inputRev": "v0.0.82-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "51c860af343fb7da71321c8904950a0f471ae5eb", + "rev": "5f904f6809a407ec7694d898f723153d0c05e288", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,17 +65,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1be06a278c3c249edafb722bfb278622024929d8", + "rev": "645641203dd2a9b8bb3335063aa5b2ff3758f20a", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "63c127458dd8dc0886e291e94a58ea5db136d26d", + "rev": "90e3bf68cbacac466317e2d1560a5b0d7d3aa6a0", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "00fad25fa9bedece1f1f988ab9c180dfe3d535b3", + "rev": "d9fc8ae23024be37424a189982c92356e37935c8", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.26.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index d29876426..54d3590bf 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-18" +rev = "nightly-testing-2025-11-20" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2b7cc37d4..33538d8bf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-18 +leanprover/lean4:nightly-2025-11-20 From 3c82c96b3fffae17cc3f4c77472bfcf63ebd15f6 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 20 Nov 2025 09:00:25 -0500 Subject: [PATCH 049/253] destructuring needed in map_val_mem --- .../Languages/LambdaCalculus/LocallyNameless/Context.lean | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean index 1d353fdc3..6a2877cac 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean @@ -74,7 +74,13 @@ lemma map_val_keys (f) : Γ.keys = (Γ.map_val f).keys := by /-- A mapping of values maps lookups. -/ lemma map_val_mem (mem : σ ∈ Γ.dlookup x) (f) : f σ ∈ (Γ.map_val f).dlookup x := by - induction Γ <;> grind + induction Γ with + | nil => grind + | cons hd => + #adaptation_note + /-- Moving to `nightly-2025-11-20` required this destructuring -/ + let ⟨x', _⟩ := hd + grind end LambdaCalculus.LocallyNameless.Context From 534e6525a82638a58b8ce228836d7f9d50d0458f Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 20 Nov 2025 09:04:17 -0500 Subject: [PATCH 050/253] unused variable --- Cslib/Foundations/Data/OmegaSequence/Flatten.lean | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean index 2612b4b6a..8b0c763e5 100644 --- a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean +++ b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean @@ -121,8 +121,8 @@ theorem append_flatten [Inhabited α] {ls : ωSequence (List α)} (h_ls : ∀ k, /-- The length of `(ls.take n).flatten` is `ls.cumLen n`. -/ @[simp, nolint simpNF, scoped grind =] -theorem length_flatten_take {ls : ωSequence (List α)} (h_ls : ∀ k, (ls k).length > 0) - (n : ℕ) : (ls.take n).flatten.length = ls.cumLen n := by +theorem length_flatten_take {ls : ωSequence (List α)} (n : ℕ) : + (ls.take n).flatten.length = ls.cumLen n := by induction n <;> grind [take_succ'] /-- `In fact, (ls.take n).flatten` is `ls.flatten.take (ls.cumLen n)` @@ -133,7 +133,7 @@ theorem flatten_take_drop [Inhabited α] (ls.drop n).flatten = ls.flatten.drop (ls.cumLen n) := by apply append_left_right_injective · rw [append_flatten h_ls n, append_take_drop (ls.cumLen n) ls.flatten] - · rw [length_flatten_take h_ls, length_take] + · rw [length_flatten_take, length_take] theorem flatten_take [Inhabited α] {ls : ωSequence (List α)} (h_ls : ∀ k, (ls k).length > 0) (n : ℕ) : From 8ce06df5a2cefa325c0848d636fde3abfb3eed76 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 20 Nov 2025 09:06:45 -0500 Subject: [PATCH 051/253] linter --- .../LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean index efc335c05..adfa1a1ac 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean @@ -126,9 +126,7 @@ lemma map_subst (wf_σ : σ.Wf (Γ ++ ⟨X, Binding.sub τ⟩ :: Δ)) (wf_τ' : subst eq apply all (free_union [dom] Var) · grind - · intro X' _ - have : (map_val (·[X:=τ']) (⟨X', Binding.sub γ⟩ :: Γ) ++ Δ)✓ := by grind - grind [open_subst_var] + · grind [open_subst_var] all_goals grind [weaken_head] variable [HasFresh Var] in From 9050896d8de63e93d64f39185dfdf1b434e12378 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Fri, 21 Nov 2025 09:15:09 +1100 Subject: [PATCH 052/253] lean-toolchain --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index bd7c1fde3..950d04c81 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.26.0-rc1 +leanprover/lean4:nightly-2025-11-17 From afaea48885c4c6742d3d45f72bd7e62dd30ba096 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 21 Nov 2025 04:58:19 -0500 Subject: [PATCH 053/253] lint --- Cslib/Foundations/Data/Nat/Segment.lean | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index d3566a36c..809ddf896 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -196,19 +196,19 @@ theorem segment'_eq_segment (hm : StrictMono f) : ext k; unfold segment' rcases (show k < f 0 ∨ k ≥ f 0 by omega) with h_k | h_k · grind - unfold segment ; congr 1 + unfold segment; congr 1 simp only [count_eq_card_filter_range] suffices h : ∃ g, BijOn g ({x ∈ Finset.range (k - f 0 + 1) | x ∈ range fun x => f x - f 0}) ({x ∈ Finset.range (k + 1) | x ∈ range f}) by grind [BijOn.finsetCard_eq, Finset.coe_filter] refine ⟨fun n ↦ n + f 0, ?_, ?_, ?_⟩ - · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq] + · intro n; simp only [mem_range, Finset.mem_range, mem_setOf_eq] rintro ⟨h_n, i, rfl⟩ have := StrictMono.monotone hm <| zero_le i refine ⟨?_, i, ?_⟩ <;> omega · grind [injOn_of_injective, Injective] - · intro n ; simp only [mem_range, Finset.mem_range, mem_setOf_eq, mem_image] + · intro n; simp only [mem_range, Finset.mem_range, mem_setOf_eq, mem_image] rintro ⟨h_n, i, rfl⟩ have := StrictMono.monotone hm <| zero_le i grind From 5287af41f4373ebdb476791bbd4a1b962d3f48de Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Fri, 21 Nov 2025 05:31:02 -0500 Subject: [PATCH 054/253] chore: adaptations for nightly-2025-11-20 (#175) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- .../Data/OmegaSequence/Flatten.lean | 6 +-- .../LocallyNameless/Context.lean | 8 +++- .../LocallyNameless/Fsub/WellFormed.lean | 4 +- lake-manifest.json | 40 +++++++++---------- lakefile.toml | 4 +- lean-toolchain | 2 +- 6 files changed, 34 insertions(+), 30 deletions(-) diff --git a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean index aa8d2ac45..833d133b7 100644 --- a/Cslib/Foundations/Data/OmegaSequence/Flatten.lean +++ b/Cslib/Foundations/Data/OmegaSequence/Flatten.lean @@ -121,8 +121,8 @@ theorem append_flatten [Inhabited α] {ls : ωSequence (List α)} (h_ls : ∀ k, /-- The length of `(ls.take n).flatten` is `ls.cumLen n`. -/ @[simp, nolint simpNF, scoped grind =] -theorem length_flatten_take {ls : ωSequence (List α)} (h_ls : ∀ k, (ls k).length > 0) - (n : ℕ) : (ls.take n).flatten.length = ls.cumLen n := by +theorem length_flatten_take {ls : ωSequence (List α)} (n : ℕ) : + (ls.take n).flatten.length = ls.cumLen n := by induction n <;> grind [take_succ'] /-- `In fact, (ls.take n).flatten` is `ls.flatten.take (ls.cumLen n)` @@ -133,7 +133,7 @@ theorem flatten_take_drop [Inhabited α] (ls.drop n).flatten = ls.flatten.drop (ls.cumLen n) := by apply append_left_right_injective · rw [append_flatten h_ls n, append_take_drop (ls.cumLen n) ls.flatten] - · rw [length_flatten_take h_ls, length_take] + · rw [length_flatten_take, length_take] theorem flatten_take [Inhabited α] {ls : ωSequence (List α)} (h_ls : ∀ k, (ls k).length > 0) (n : ℕ) : diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean index 1d353fdc3..6a2877cac 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean @@ -74,7 +74,13 @@ lemma map_val_keys (f) : Γ.keys = (Γ.map_val f).keys := by /-- A mapping of values maps lookups. -/ lemma map_val_mem (mem : σ ∈ Γ.dlookup x) (f) : f σ ∈ (Γ.map_val f).dlookup x := by - induction Γ <;> grind + induction Γ with + | nil => grind + | cons hd => + #adaptation_note + /-- Moving to `nightly-2025-11-20` required this destructuring -/ + let ⟨x', _⟩ := hd + grind end LambdaCalculus.LocallyNameless.Context diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean index efc335c05..adfa1a1ac 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/WellFormed.lean @@ -126,9 +126,7 @@ lemma map_subst (wf_σ : σ.Wf (Γ ++ ⟨X, Binding.sub τ⟩ :: Δ)) (wf_τ' : subst eq apply all (free_union [dom] Var) · grind - · intro X' _ - have : (map_val (·[X:=τ']) (⟨X', Binding.sub γ⟩ :: Γ) ++ Δ)✓ := by grind - grind [open_subst_var] + · grind [open_subst_var] all_goals grind [weaken_head] variable [HasFresh Var] in diff --git a/lake-manifest.json b/lake-manifest.json index 289c14473..3231f95f6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,94 +1,94 @@ {"version": "1.1.0", "packagesDir": ".lake/packages", "packages": - [{"url": "https://github.com/leanprover-community/mathlib4", + [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "6a54a80825b060ab20dc31751ebdce78b3a3b518", + "scope": "", + "rev": "3dc572b55ec47e50cd184d2b8053cab9e91d4450", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "v4.26.0-rc1", + "inputRev": "nightly-testing-2025-11-20", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ec4a54b5308c1f46b4b52a9c62fb67d193aa0972", + "rev": "ca46151b876597b20728bd65794928efda180d13", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2ed4ba69b6127de8f5c2af83cccacd3c988b06bf", + "rev": "ea30e4c47dcef0bb7c002e9a017a8b6b65833232", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ff87023a8e1b358d2d01c1bc56b040a60609577", + "rev": "c5dd2e96c1f87369e6dfea983fc0eb24523a72ca", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "894c511d39bf442636bcba085245a1cf2bbdf665", + "rev": "301f98e357b21e7e1abb84692b1e09644443e920", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.81", + "inputRev": "v0.0.82-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c00943d5ff28c6dc623dbc24f8d659a9d3a3d29a", + "rev": "5f904f6809a407ec7694d898f723153d0c05e288", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1be06a278c3c249edafb722bfb278622024929d8", + "rev": "645641203dd2a9b8bb3335063aa5b2ff3758f20a", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c278d4e94fe43bc38da4966795dc0c72538e68ab", + "rev": "90e3bf68cbacac466317e2d1560a5b0d7d3aa6a0", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "00fad25fa9bedece1f1f988ab9c180dfe3d535b3", + "rev": "d9fc8ae23024be37424a189982c92356e37935c8", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.26.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 99747f181..54d3590bf 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,8 +15,8 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" -scope = "leanprover-community" -rev = "v4.26.0-rc1" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2025-11-20" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 950d04c81..33538d8bf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-17 +leanprover/lean4:nightly-2025-11-20 From 81ad2f2dab4b4d54e9791b8eaa195db261cc4276 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 21 Nov 2025 13:09:45 +0000 Subject: [PATCH 055/253] chore: bump to nightly-2025-11-21 with mathlib at nightly-testing-2025-11-21 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 3231f95f6..b02158f55 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "3dc572b55ec47e50cd184d2b8053cab9e91d4450", + "rev": "48386d45430f2f135ba092501a6af735d13249ee", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-20", + "inputRev": "nightly-testing-2025-11-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "90e3bf68cbacac466317e2d1560a5b0d7d3aa6a0", + "rev": "7ba55a287b9c7aa570b41016540e0e7f9fbe34c5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 54d3590bf..4751698e9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-20" +rev = "nightly-testing-2025-11-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 33538d8bf..c50c9c5cc 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-20 +leanprover/lean4:nightly-2025-11-21 From 53e29961faf211f46141b6e13d63efec47c2f46a Mon Sep 17 00:00:00 2001 From: Chris Henson <46805207+chenson2018@users.noreply.github.com> Date: Sat, 22 Nov 2025 05:40:36 -0500 Subject: [PATCH 056/253] chore: adaptations for nightly-2025-11-21 (#177) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: mathlib4-bot --- lake-manifest.json | 6 +++--- lean-toolchain | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 3231f95f6..b02158f55 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "3dc572b55ec47e50cd184d2b8053cab9e91d4450", + "rev": "48386d45430f2f135ba092501a6af735d13249ee", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-20", + "inputRev": "nightly-testing-2025-11-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "90e3bf68cbacac466317e2d1560a5b0d7d3aa6a0", + "rev": "7ba55a287b9c7aa570b41016540e0e7f9fbe34c5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lean-toolchain b/lean-toolchain index 33538d8bf..c50c9c5cc 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-20 +leanprover/lean4:nightly-2025-11-21 From 6c0973425a7de735323dce8e4b3dd7762fbb23f0 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Sun, 23 Nov 2025 15:14:12 +1100 Subject: [PATCH 057/253] chore: adaptations for nightly-2025-11-21 From 9d3430ab30d13ebc311996573d402e032dba8a59 Mon Sep 17 00:00:00 2001 From: Kim Morrison <477956+kim-em@users.noreply.github.com> Date: Sun, 23 Nov 2025 17:05:42 +1100 Subject: [PATCH 058/253] chore: adaptations for nightly-2025-11-21 (#179) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lakefile.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lakefile.toml b/lakefile.toml index 31f72543c..4751698e9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,8 +15,8 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" -scope = "leanprover-community" -rev = "v4.26.0-rc2" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2025-11-21" [[lean_lib]] name = "Cslib" From 94fcc38a8f8ec77afcfed6a29721719c2378e92d Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 23 Nov 2025 13:06:28 +0000 Subject: [PATCH 059/253] chore: bump to nightly-2025-11-23 with mathlib at nightly-testing-2025-11-23 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index b02158f55..2b2abdd2f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "48386d45430f2f135ba092501a6af735d13249ee", + "rev": "9de1959db45bf8c6fb680e10bd787adb30aaafc4", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-21", + "inputRev": "nightly-testing-2025-11-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ba55a287b9c7aa570b41016540e0e7f9fbe34c5", + "rev": "38e6d3429b2953b7e72b514bcbb1beba51582297", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 4751698e9..9bb37d5cb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-21" +rev = "nightly-testing-2025-11-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index c50c9c5cc..1f6dff039 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-21 +leanprover/lean4:nightly-2025-11-23 From 668b7d3a3617a2500130ad21d7f18d0ce948dd61 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 23 Nov 2025 14:15:32 -0500 Subject: [PATCH 060/253] lint, make a proof explicit --- Cslib/Computability/Automata/EpsilonNAToNA.lean | 1 - Cslib/Computability/Automata/NABuchiEquiv.lean | 10 +++++----- Cslib/Computability/Automata/Sum.lean | 6 ++---- .../LambdaCalculus/LocallyNameless/Context.lean | 8 +------- 4 files changed, 8 insertions(+), 17 deletions(-) diff --git a/Cslib/Computability/Automata/EpsilonNAToNA.lean b/Cslib/Computability/Automata/EpsilonNAToNA.lean index 3941453a8..d46caf232 100644 --- a/Cslib/Computability/Automata/EpsilonNAToNA.lean +++ b/Cslib/Computability/Automata/EpsilonNAToNA.lean @@ -20,7 +20,6 @@ private def LTS.noε (lts : LTS State (Option Label)) : LTS State Label where private lemma LTS.noε_saturate_tr {lts : LTS State (Option Label)} {h : μ = some μ'} : lts.saturate.Tr s μ s' ↔ lts.saturate.noε.Tr s μ' s' := by - simp only [LTS.noε] grind @[scoped grind =] diff --git a/Cslib/Computability/Automata/NABuchiEquiv.lean b/Cslib/Computability/Automata/NABuchiEquiv.lean index 5cd29f7ee..2ee9e090c 100644 --- a/Cslib/Computability/Automata/NABuchiEquiv.lean +++ b/Cslib/Computability/Automata/NABuchiEquiv.lean @@ -38,11 +38,11 @@ def reindex (f : State ≃ State') : Buchi State Symbol ≃ Buchi State' Symbol theorem reindex_run_iff {f : State ≃ State'} {nba : Buchi State Symbol} {xs : ωSequence Symbol} {ss' : ωSequence State'} : (nba.reindex f).Run xs ss' ↔ nba.Run xs (ss'.map f.symm) := by - constructor <;> - { rintro ⟨h_init, h_next⟩ - constructor - · grind - · exact fun n ↦ h_next n } + constructor + · rintro ⟨h_init, h_next⟩ + exact ⟨mem_image_equiv.mp h_init, fun n ↦ h_next n⟩ + · rintro ⟨h_init, h_next⟩ + exact ⟨mem_image_equiv.mpr h_init, fun n ↦ h_next n⟩ @[simp] theorem reindex_run_iff' {f : State ≃ State'} {nba : Buchi State Symbol} diff --git a/Cslib/Computability/Automata/Sum.lean b/Cslib/Computability/Automata/Sum.lean index 4283d4a55..5e802f70a 100644 --- a/Cslib/Computability/Automata/Sum.lean +++ b/Cslib/Computability/Automata/Sum.lean @@ -44,11 +44,9 @@ theorem iSum_run_iff {na : (i : I) → NA (State i) Symbol} · ext <;> grind · rintro ⟨i, ss, h_run, rfl⟩ constructor - · simp only [iSum, get_map, mem_iUnion, mem_image, Sigma.mk.injEq] + · simp only [iSum, get_map, mem_iUnion] grind - · intro n - use i - grind [Run] + · grind [Run] namespace Buchi diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean index 6a2877cac..1d353fdc3 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean @@ -74,13 +74,7 @@ lemma map_val_keys (f) : Γ.keys = (Γ.map_val f).keys := by /-- A mapping of values maps lookups. -/ lemma map_val_mem (mem : σ ∈ Γ.dlookup x) (f) : f σ ∈ (Γ.map_val f).dlookup x := by - induction Γ with - | nil => grind - | cons hd => - #adaptation_note - /-- Moving to `nightly-2025-11-20` required this destructuring -/ - let ⟨x', _⟩ := hd - grind + induction Γ <;> grind end LambdaCalculus.LocallyNameless.Context From ef2bdcf487b33d50f7b0a17d7c11a799e499e9ed Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sun, 23 Nov 2025 20:06:15 -0500 Subject: [PATCH 061/253] chore: adaptations for nightly-2025-11-23 (#182) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- Cslib/Computability/Automata/EpsilonNAToNA.lean | 1 - Cslib/Computability/Automata/NABuchiEquiv.lean | 10 +++++----- Cslib/Computability/Automata/Sum.lean | 6 ++---- .../LambdaCalculus/LocallyNameless/Context.lean | 8 +------- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 7 files changed, 13 insertions(+), 22 deletions(-) diff --git a/Cslib/Computability/Automata/EpsilonNAToNA.lean b/Cslib/Computability/Automata/EpsilonNAToNA.lean index 3941453a8..d46caf232 100644 --- a/Cslib/Computability/Automata/EpsilonNAToNA.lean +++ b/Cslib/Computability/Automata/EpsilonNAToNA.lean @@ -20,7 +20,6 @@ private def LTS.noε (lts : LTS State (Option Label)) : LTS State Label where private lemma LTS.noε_saturate_tr {lts : LTS State (Option Label)} {h : μ = some μ'} : lts.saturate.Tr s μ s' ↔ lts.saturate.noε.Tr s μ' s' := by - simp only [LTS.noε] grind @[scoped grind =] diff --git a/Cslib/Computability/Automata/NABuchiEquiv.lean b/Cslib/Computability/Automata/NABuchiEquiv.lean index 5cd29f7ee..2ee9e090c 100644 --- a/Cslib/Computability/Automata/NABuchiEquiv.lean +++ b/Cslib/Computability/Automata/NABuchiEquiv.lean @@ -38,11 +38,11 @@ def reindex (f : State ≃ State') : Buchi State Symbol ≃ Buchi State' Symbol theorem reindex_run_iff {f : State ≃ State'} {nba : Buchi State Symbol} {xs : ωSequence Symbol} {ss' : ωSequence State'} : (nba.reindex f).Run xs ss' ↔ nba.Run xs (ss'.map f.symm) := by - constructor <;> - { rintro ⟨h_init, h_next⟩ - constructor - · grind - · exact fun n ↦ h_next n } + constructor + · rintro ⟨h_init, h_next⟩ + exact ⟨mem_image_equiv.mp h_init, fun n ↦ h_next n⟩ + · rintro ⟨h_init, h_next⟩ + exact ⟨mem_image_equiv.mpr h_init, fun n ↦ h_next n⟩ @[simp] theorem reindex_run_iff' {f : State ≃ State'} {nba : Buchi State Symbol} diff --git a/Cslib/Computability/Automata/Sum.lean b/Cslib/Computability/Automata/Sum.lean index 4283d4a55..5e802f70a 100644 --- a/Cslib/Computability/Automata/Sum.lean +++ b/Cslib/Computability/Automata/Sum.lean @@ -44,11 +44,9 @@ theorem iSum_run_iff {na : (i : I) → NA (State i) Symbol} · ext <;> grind · rintro ⟨i, ss, h_run, rfl⟩ constructor - · simp only [iSum, get_map, mem_iUnion, mem_image, Sigma.mk.injEq] + · simp only [iSum, get_map, mem_iUnion] grind - · intro n - use i - grind [Run] + · grind [Run] namespace Buchi diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean index 6a2877cac..1d353fdc3 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Context.lean @@ -74,13 +74,7 @@ lemma map_val_keys (f) : Γ.keys = (Γ.map_val f).keys := by /-- A mapping of values maps lookups. -/ lemma map_val_mem (mem : σ ∈ Γ.dlookup x) (f) : f σ ∈ (Γ.map_val f).dlookup x := by - induction Γ with - | nil => grind - | cons hd => - #adaptation_note - /-- Moving to `nightly-2025-11-20` required this destructuring -/ - let ⟨x', _⟩ := hd - grind + induction Γ <;> grind end LambdaCalculus.LocallyNameless.Context diff --git a/lake-manifest.json b/lake-manifest.json index b02158f55..2b2abdd2f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "48386d45430f2f135ba092501a6af735d13249ee", + "rev": "9de1959db45bf8c6fb680e10bd787adb30aaafc4", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-21", + "inputRev": "nightly-testing-2025-11-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ba55a287b9c7aa570b41016540e0e7f9fbe34c5", + "rev": "38e6d3429b2953b7e72b514bcbb1beba51582297", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 4751698e9..9bb37d5cb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-21" +rev = "nightly-testing-2025-11-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index c50c9c5cc..1f6dff039 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-21 +leanprover/lean4:nightly-2025-11-23 From 8bf8c914996f503d57fe8fb3498da1af2245643e Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 24 Nov 2025 16:02:09 +0000 Subject: [PATCH 062/253] chore: bump to nightly-2025-11-24 with mathlib at nightly-testing-2025-11-24 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 2b2abdd2f..fb8f41a85 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9de1959db45bf8c6fb680e10bd787adb30aaafc4", + "rev": "f9640c952ebd3a4681e6614b4d7075be6b8979a6", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-23", + "inputRev": "nightly-testing-2025-11-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -48,7 +48,7 @@ "rev": "301f98e357b21e7e1abb84692b1e09644443e920", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.82-pre1", + "inputRev": "v0.0.83-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "38e6d3429b2953b7e72b514bcbb1beba51582297", + "rev": "7444211aa83390b018718c0300bdcf518b8cd5db", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 9bb37d5cb..5ec3ac930 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-23" +rev = "nightly-testing-2025-11-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 1f6dff039..45cddb2f1 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-23 +leanprover/lean4:nightly-2025-11-24 From 062288d4b2394bc1c2038211b2602f162b6a452f Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 24 Nov 2025 11:25:57 -0500 Subject: [PATCH 063/253] chore: adaptations for nightly-2025-11-24 (#183) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 2b2abdd2f..fb8f41a85 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9de1959db45bf8c6fb680e10bd787adb30aaafc4", + "rev": "f9640c952ebd3a4681e6614b4d7075be6b8979a6", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-23", + "inputRev": "nightly-testing-2025-11-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -48,7 +48,7 @@ "rev": "301f98e357b21e7e1abb84692b1e09644443e920", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.82-pre1", + "inputRev": "v0.0.83-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "38e6d3429b2953b7e72b514bcbb1beba51582297", + "rev": "7444211aa83390b018718c0300bdcf518b8cd5db", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 9bb37d5cb..5ec3ac930 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-23" +rev = "nightly-testing-2025-11-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 1f6dff039..45cddb2f1 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-23 +leanprover/lean4:nightly-2025-11-24 From e6609ae68aca6d8bfbf9e0d2df2549d4230b3a12 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 25 Nov 2025 16:02:09 +0000 Subject: [PATCH 064/253] chore: bump to nightly-2025-11-25 with mathlib at nightly-testing-2025-11-25 --- lake-manifest.json | 12 ++++++------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fb8f41a85..c2773deda 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f9640c952ebd3a4681e6614b4d7075be6b8979a6", + "rev": "a911b002d50c434ca1a97696822583ba95da6317", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-24", + "inputRev": "nightly-testing-2025-11-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -25,7 +25,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ea30e4c47dcef0bb7c002e9a017a8b6b65833232", + "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5f904f6809a407ec7694d898f723153d0c05e288", + "rev": "033343f73ff581b672a5df810e4a2961ce774367", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "645641203dd2a9b8bb3335063aa5b2ff3758f20a", + "rev": "1fd34ec2de724344b0ba4b84c5f93627c941a272", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7444211aa83390b018718c0300bdcf518b8cd5db", + "rev": "1fe4e2e047b9f3a9e14e3c7a45851fffe8bd0e56", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 5ec3ac930..c81cbf15c 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-24" +rev = "nightly-testing-2025-11-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 45cddb2f1..30e902a5d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-24 +leanprover/lean4:nightly-2025-11-25 From 82f9811404b78b1111be72c60a41439d5059f5a8 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 28 Nov 2025 10:01:48 +0000 Subject: [PATCH 065/253] chore: bump to nightly-2025-11-27 with mathlib at nightly-testing-2025-11-27 --- lake-manifest.json | 12 ++++++------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index c2773deda..91a2985e0 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a911b002d50c434ca1a97696822583ba95da6317", + "rev": "42c6ec6c6d7049b7b774bad2ee7b91c789e01fa8", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-25", + "inputRev": "nightly-testing-2025-11-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "301f98e357b21e7e1abb84692b1e09644443e920", + "rev": "652cdcba9ee81b4d621b8a10315d48f8ae05bca8", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.83-pre1", + "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "033343f73ff581b672a5df810e4a2961ce774367", + "rev": "eda0afd936954acb4006b3786b61fe9f621cc00d", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1fe4e2e047b9f3a9e14e3c7a45851fffe8bd0e56", + "rev": "02b845515939fe516151c22347e37c62513dddfd", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3da001656..b860a1b80 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -17,7 +17,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-25" +rev = "nightly-testing-2025-11-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 30e902a5d..252e843eb 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-25 +leanprover/lean4:nightly-2025-11-27 From 2165ef3fff22d53cbab1fdf9c2bbc2bdc3ccb9d3 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 28 Nov 2025 09:44:10 -0500 Subject: [PATCH 066/253] linter --- Cslib/Foundations/Data/HasFresh.lean | 1 + 1 file changed, 1 insertion(+) diff --git a/Cslib/Foundations/Data/HasFresh.lean b/Cslib/Foundations/Data/HasFresh.lean index acd5f8752..7a4a14cd2 100644 --- a/Cslib/Foundations/Data/HasFresh.lean +++ b/Cslib/Foundations/Data/HasFresh.lean @@ -70,6 +70,7 @@ declare_config_elab elabFreeUnionConfig FreeUnionConfig -/ syntax (name := freeUnion) "free_union" optConfig (" [" (term,*) "]")? term : term +set_option linter.style.emptyLine false in /-- Elaborator for `free_union`. -/ @[term_elab freeUnion] def HasFresh.freeUnion : TermElab := fun stx _ => do From cbca9732bc9f6b3b35045a24e5736924345cbfb5 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 28 Nov 2025 09:56:57 -0500 Subject: [PATCH 067/253] shake --- Cslib/Foundations/Data/OmegaSequence/Init.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Foundations/Data/OmegaSequence/Init.lean b/Cslib/Foundations/Data/OmegaSequence/Init.lean index 93554a132..fcb05a5c9 100644 --- a/Cslib/Foundations/Data/OmegaSequence/Init.lean +++ b/Cslib/Foundations/Data/OmegaSequence/Init.lean @@ -5,7 +5,7 @@ Authors: Ching-Tsun Chou, Fabrizio Montesi -/ import Cslib.Foundations.Data.OmegaSequence.Defs -import Mathlib.Algebra.Order.Ring.Nat +import Mathlib.Algebra.Order.Group.Nat import Mathlib.Algebra.Order.Sub.Basic import Mathlib.Data.Nat.Lattice From 0c679d66351a98cc5d5f9c79eff147a214828eb2 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Fri, 28 Nov 2025 10:18:26 -0500 Subject: [PATCH 068/253] chore: adaptations for nightly-2025-11-27 (#190) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- Cslib/Foundations/Data/HasFresh.lean | 1 + Cslib/Foundations/Data/OmegaSequence/Init.lean | 2 +- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 5 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Cslib/Foundations/Data/HasFresh.lean b/Cslib/Foundations/Data/HasFresh.lean index acd5f8752..7a4a14cd2 100644 --- a/Cslib/Foundations/Data/HasFresh.lean +++ b/Cslib/Foundations/Data/HasFresh.lean @@ -70,6 +70,7 @@ declare_config_elab elabFreeUnionConfig FreeUnionConfig -/ syntax (name := freeUnion) "free_union" optConfig (" [" (term,*) "]")? term : term +set_option linter.style.emptyLine false in /-- Elaborator for `free_union`. -/ @[term_elab freeUnion] def HasFresh.freeUnion : TermElab := fun stx _ => do diff --git a/Cslib/Foundations/Data/OmegaSequence/Init.lean b/Cslib/Foundations/Data/OmegaSequence/Init.lean index 93554a132..fcb05a5c9 100644 --- a/Cslib/Foundations/Data/OmegaSequence/Init.lean +++ b/Cslib/Foundations/Data/OmegaSequence/Init.lean @@ -5,7 +5,7 @@ Authors: Ching-Tsun Chou, Fabrizio Montesi -/ import Cslib.Foundations.Data.OmegaSequence.Defs -import Mathlib.Algebra.Order.Ring.Nat +import Mathlib.Algebra.Order.Group.Nat import Mathlib.Algebra.Order.Sub.Basic import Mathlib.Data.Nat.Lattice diff --git a/lake-manifest.json b/lake-manifest.json index fb8f41a85..91a2985e0 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f9640c952ebd3a4681e6614b4d7075be6b8979a6", + "rev": "42c6ec6c6d7049b7b774bad2ee7b91c789e01fa8", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-24", + "inputRev": "nightly-testing-2025-11-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -25,7 +25,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ea30e4c47dcef0bb7c002e9a017a8b6b65833232", + "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "301f98e357b21e7e1abb84692b1e09644443e920", + "rev": "652cdcba9ee81b4d621b8a10315d48f8ae05bca8", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.83-pre1", + "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5f904f6809a407ec7694d898f723153d0c05e288", + "rev": "eda0afd936954acb4006b3786b61fe9f621cc00d", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "645641203dd2a9b8bb3335063aa5b2ff3758f20a", + "rev": "1fd34ec2de724344b0ba4b84c5f93627c941a272", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7444211aa83390b018718c0300bdcf518b8cd5db", + "rev": "02b845515939fe516151c22347e37c62513dddfd", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 48498a828..b860a1b80 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -17,7 +17,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-24" +rev = "nightly-testing-2025-11-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 45cddb2f1..252e843eb 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-24 +leanprover/lean4:nightly-2025-11-27 From 5b9ea98ff8368b6c0b3e1fc656fd7796b8528160 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 1 Dec 2025 13:41:41 +0000 Subject: [PATCH 069/253] chore: bump to nightly-2025-12-01 with mathlib at nightly-testing-2025-12-01 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 91a2985e0..ba63c2e86 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "42c6ec6c6d7049b7b774bad2ee7b91c789e01fa8", + "rev": "2100ee662d0d4b3233534f70716a04f15f74c300", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-27", + "inputRev": "nightly-testing-2025-12-01", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02b845515939fe516151c22347e37c62513dddfd", + "rev": "9eab46cb0b18faa48a241f2e03f7304d4e19ebe0", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6e7834144..063885eb9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-27" +rev = "nightly-testing-2025-12-01" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 252e843eb..c2d2f9023 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-27 +leanprover/lean4:nightly-2025-12-01 From 2feaf8c02d376ae11c6f3dc0982c7aa9c8f3c64c Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 1 Dec 2025 09:44:21 -0500 Subject: [PATCH 070/253] disable unusedDecidableInType linter in files using free_union --- .../Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Fsub/Reduction.lean | 2 ++ Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean | 2 ++ Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean | 1 + .../LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean | 2 ++ .../LocallyNameless/Untyped/FullBetaConfluence.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Untyped/Properties.lean | 1 + 7 files changed, 12 insertions(+) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean index 6d22e7124..95339e1ea 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Syntax.HasSubstitution import Cslib.Languages.LambdaCalculus.LocallyNameless.Fsub.Basic +set_option linter.unusedDecidableInType false + /-! # λ-calculus The λ-calculus with polymorphism and subtyping, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean index 8aee9c84a..499b968b1 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Semantics.ReductionSystem.Basic import Cslib.Languages.LambdaCalculus.LocallyNameless.Fsub.Opening +set_option linter.unusedDecidableInType false + /-! # λ-calculus The λ-calculus with polymorphism and subtyping, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean index 5e9dada59..827cc3e78 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Languages.LambdaCalculus.LocallyNameless.Context import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.Properties +set_option linter.unusedDecidableInType false + /-! # λ-calculus The simply typed λ-calculus, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean index b8f990b06..815a02127 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean @@ -58,6 +58,7 @@ namespace FullBeta open LambdaCalculus.LocallyNameless.Untyped.Term FullBeta +set_option linter.unusedDecidableInType false in /-- Typing preservation for full beta reduction. -/ @[scoped grind →] theorem preservation (der : Γ ⊢ t ∶ τ) (step : t ⭢βᶠ t') : Γ ⊢ t' ∶ τ := by diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean index 616d364a8..ae137bdfb 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Semantics.ReductionSystem.Basic import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.Properties +set_option linter.unusedDecidableInType false + /-! # β-reduction for the λ-calculus ## References diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean index 972881f5c..0bc46d65d 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Data.Relation import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.FullBeta +set_option linter.unusedDecidableInType false + /-! # β-confluence for the λ-calculus -/ namespace Cslib diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean index 9f58e97cc..9fef37d5a 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean @@ -108,6 +108,7 @@ lemma subst_intro (x : Var) (t e : Term Var) (mem : x ∉ e.fv) (t_lc : LC t) : scoped grind_pattern subst_intro => open' e t, open' e (fvar x) +set_option linter.unusedDecidableInType false in /-- Opening of locally closed terms is locally closed. -/ @[scoped grind ←] theorem beta_lc {M N : Term Var} (m_lc : M.abs.LC) (n_lc : LC N) : LC (M ^ N) := by From 930202925a4a1914a146218a626a962e6b0ecbc3 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 1 Dec 2025 10:03:13 -0500 Subject: [PATCH 071/253] chore: adaptations for nightly-2025-12-01 (#193) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- .../LambdaCalculus/LocallyNameless/Fsub/Opening.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Fsub/Reduction.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Stlc/Basic.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Stlc/Safety.lean | 1 + .../LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean | 2 ++ .../LocallyNameless/Untyped/FullBetaConfluence.lean | 2 ++ .../LambdaCalculus/LocallyNameless/Untyped/Properties.lean | 1 + lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 10 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean index 6d22e7124..95339e1ea 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Opening.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Syntax.HasSubstitution import Cslib.Languages.LambdaCalculus.LocallyNameless.Fsub.Basic +set_option linter.unusedDecidableInType false + /-! # λ-calculus The λ-calculus with polymorphism and subtyping, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean index 8aee9c84a..499b968b1 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Reduction.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Semantics.ReductionSystem.Basic import Cslib.Languages.LambdaCalculus.LocallyNameless.Fsub.Opening +set_option linter.unusedDecidableInType false + /-! # λ-calculus The λ-calculus with polymorphism and subtyping, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean index 5e9dada59..827cc3e78 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Basic.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Languages.LambdaCalculus.LocallyNameless.Context import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.Properties +set_option linter.unusedDecidableInType false + /-! # λ-calculus The simply typed λ-calculus, with a locally nameless representation of syntax. diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean index b8f990b06..815a02127 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Stlc/Safety.lean @@ -58,6 +58,7 @@ namespace FullBeta open LambdaCalculus.LocallyNameless.Untyped.Term FullBeta +set_option linter.unusedDecidableInType false in /-- Typing preservation for full beta reduction. -/ @[scoped grind →] theorem preservation (der : Γ ⊢ t ∶ τ) (step : t ⭢βᶠ t') : Γ ⊢ t' ∶ τ := by diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean index 616d364a8..ae137bdfb 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBeta.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Semantics.ReductionSystem.Basic import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.Properties +set_option linter.unusedDecidableInType false + /-! # β-reduction for the λ-calculus ## References diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean index 972881f5c..0bc46d65d 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/FullBetaConfluence.lean @@ -7,6 +7,8 @@ Authors: Chris Henson import Cslib.Foundations.Data.Relation import Cslib.Languages.LambdaCalculus.LocallyNameless.Untyped.FullBeta +set_option linter.unusedDecidableInType false + /-! # β-confluence for the λ-calculus -/ namespace Cslib diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean index 9f58e97cc..9fef37d5a 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Properties.lean @@ -108,6 +108,7 @@ lemma subst_intro (x : Var) (t e : Term Var) (mem : x ∉ e.fv) (t_lc : LC t) : scoped grind_pattern subst_intro => open' e t, open' e (fvar x) +set_option linter.unusedDecidableInType false in /-- Opening of locally closed terms is locally closed. -/ @[scoped grind ←] theorem beta_lc {M N : Term Var} (m_lc : M.abs.LC) (n_lc : LC N) : LC (M ^ N) := by diff --git a/lake-manifest.json b/lake-manifest.json index 91a2985e0..ba63c2e86 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "42c6ec6c6d7049b7b774bad2ee7b91c789e01fa8", + "rev": "2100ee662d0d4b3233534f70716a04f15f74c300", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-11-27", + "inputRev": "nightly-testing-2025-12-01", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02b845515939fe516151c22347e37c62513dddfd", + "rev": "9eab46cb0b18faa48a241f2e03f7304d4e19ebe0", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6e7834144..063885eb9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-11-27" +rev = "nightly-testing-2025-12-01" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 252e843eb..c2d2f9023 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-11-27 +leanprover/lean4:nightly-2025-12-01 From ee3eb3c777e4f894a81a27ea8e15bea5ab7bee58 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 4 Dec 2025 16:03:52 +0000 Subject: [PATCH 072/253] chore: bump to nightly-2025-12-04 with mathlib at nightly-testing-2025-12-04 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index ba63c2e86..76530205e 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "2100ee662d0d4b3233534f70716a04f15f74c300", + "rev": "42f7d9c707cc83f542a69d046f73c15975ed20ce", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-01", + "inputRev": "nightly-testing-2025-12-04", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "eda0afd936954acb4006b3786b61fe9f621cc00d", + "rev": "8e37a9bed06d16a2c4253ee62938e216d3fc9a3a", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1fd34ec2de724344b0ba4b84c5f93627c941a272", + "rev": "2fa5d6eaad021d45b7262e79cbf6f68a2d65adfd", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9eab46cb0b18faa48a241f2e03f7304d4e19ebe0", + "rev": "9a0ab3e8886a335b378baae6b58ce7df96440dba", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 063885eb9..3529950f7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-01" +rev = "nightly-testing-2025-12-04" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index c2d2f9023..065451ef7 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-01 +leanprover/lean4:nightly-2025-12-04 From c04534ccd552a14d09b54cec0a2a91984914567f Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Thu, 4 Dec 2025 11:19:44 -0500 Subject: [PATCH 073/253] chore: adaptations for nightly-2025-12-04 (#197) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index ba63c2e86..76530205e 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "2100ee662d0d4b3233534f70716a04f15f74c300", + "rev": "42f7d9c707cc83f542a69d046f73c15975ed20ce", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-01", + "inputRev": "nightly-testing-2025-12-04", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "eda0afd936954acb4006b3786b61fe9f621cc00d", + "rev": "8e37a9bed06d16a2c4253ee62938e216d3fc9a3a", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1fd34ec2de724344b0ba4b84c5f93627c941a272", + "rev": "2fa5d6eaad021d45b7262e79cbf6f68a2d65adfd", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9eab46cb0b18faa48a241f2e03f7304d4e19ebe0", + "rev": "9a0ab3e8886a335b378baae6b58ce7df96440dba", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 063885eb9..3529950f7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-01" +rev = "nightly-testing-2025-12-04" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index c2d2f9023..065451ef7 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-01 +leanprover/lean4:nightly-2025-12-04 From c8f3a75986ddbb67d7963af5885e24a2d907bf9a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 5 Dec 2025 16:01:58 +0000 Subject: [PATCH 074/253] chore: bump to nightly-2025-12-05 with mathlib at nightly-testing-2025-12-05 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 76530205e..542c1c6a5 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "42f7d9c707cc83f542a69d046f73c15975ed20ce", + "rev": "ce00192bf8058fc20bcc4188abf983d16be18ff7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-04", + "inputRev": "nightly-testing-2025-12-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9a0ab3e8886a335b378baae6b58ce7df96440dba", + "rev": "a3e1ddfe8c20a49e96a729da48d5215caad75ac7", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3529950f7..8bc28b63b 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-04" +rev = "nightly-testing-2025-12-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 065451ef7..28607dc4c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-04 +leanprover/lean4:nightly-2025-12-05 From 30b9c10446ccfa273611f815897524d8ba6cb3f6 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Fri, 5 Dec 2025 11:18:34 -0500 Subject: [PATCH 075/253] chore: adaptations for nightly-2025-12-05 (#200) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 76530205e..542c1c6a5 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "42f7d9c707cc83f542a69d046f73c15975ed20ce", + "rev": "ce00192bf8058fc20bcc4188abf983d16be18ff7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-04", + "inputRev": "nightly-testing-2025-12-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9a0ab3e8886a335b378baae6b58ce7df96440dba", + "rev": "a3e1ddfe8c20a49e96a729da48d5215caad75ac7", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3529950f7..8bc28b63b 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-04" +rev = "nightly-testing-2025-12-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 065451ef7..28607dc4c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-04 +leanprover/lean4:nightly-2025-12-05 From bad48f8e89f96a9b8580a2c17f6ac5ead93dbf17 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 7 Dec 2025 13:07:37 +0000 Subject: [PATCH 076/253] chore: bump to nightly-2025-12-07 with mathlib at nightly-testing-2025-12-07 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 542c1c6a5..3d132e420 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ce00192bf8058fc20bcc4188abf983d16be18ff7", + "rev": "f83e6b62b6c1afa0e93948e950888d1b7ebdbfc0", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-05", + "inputRev": "nightly-testing-2025-12-07", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a3e1ddfe8c20a49e96a729da48d5215caad75ac7", + "rev": "bc5d6a375fa3822f191ad6d33b310e132ca6ed35", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 8bc28b63b..d6f40be68 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-05" +rev = "nightly-testing-2025-12-07" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28607dc4c..571593099 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-05 +leanprover/lean4:nightly-2025-12-07 From 2a6287a8c849d7651cf1eaf2c1316e40a3f211f0 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sun, 7 Dec 2025 08:27:28 -0500 Subject: [PATCH 077/253] chore: adaptations for nightly-2025-12-07 (#204) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 542c1c6a5..3d132e420 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ce00192bf8058fc20bcc4188abf983d16be18ff7", + "rev": "f83e6b62b6c1afa0e93948e950888d1b7ebdbfc0", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-05", + "inputRev": "nightly-testing-2025-12-07", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a3e1ddfe8c20a49e96a729da48d5215caad75ac7", + "rev": "bc5d6a375fa3822f191ad6d33b310e132ca6ed35", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 8bc28b63b..d6f40be68 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-05" +rev = "nightly-testing-2025-12-07" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28607dc4c..571593099 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-05 +leanprover/lean4:nightly-2025-12-07 From 162fdf562fd48ca4a9832474af76e2d5549e0dfe Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 8 Dec 2025 13:13:07 +0000 Subject: [PATCH 078/253] chore: bump to nightly-2025-12-08 with mathlib at nightly-testing-2025-12-08 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 3d132e420..bd8e58649 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f83e6b62b6c1afa0e93948e950888d1b7ebdbfc0", + "rev": "64d8fd34de4621adbe3924fd081a8f6a92d55872", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-07", + "inputRev": "nightly-testing-2025-12-08", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bc5d6a375fa3822f191ad6d33b310e132ca6ed35", + "rev": "66153a0cad828f26f7e0e65db1057cd5a104b536", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index d6f40be68..eb9415310 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-07" +rev = "nightly-testing-2025-12-08" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 571593099..599ac9c46 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-07 +leanprover/lean4:nightly-2025-12-08 From 2323933872f0452fa1508dfa5aa2cf78d298aeb1 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 8 Dec 2025 15:05:40 -0500 Subject: [PATCH 079/253] chore: adaptations for nightly-2025-12-08 (#205) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 3d132e420..bd8e58649 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f83e6b62b6c1afa0e93948e950888d1b7ebdbfc0", + "rev": "64d8fd34de4621adbe3924fd081a8f6a92d55872", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-07", + "inputRev": "nightly-testing-2025-12-08", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bc5d6a375fa3822f191ad6d33b310e132ca6ed35", + "rev": "66153a0cad828f26f7e0e65db1057cd5a104b536", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index d6f40be68..eb9415310 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-07" +rev = "nightly-testing-2025-12-08" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 571593099..599ac9c46 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-07 +leanprover/lean4:nightly-2025-12-08 From c173c07077aa06fc61df93a018e344851a423cae Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 9 Dec 2025 16:02:04 +0000 Subject: [PATCH 080/253] chore: bump to nightly-2025-12-09 with mathlib at nightly-testing-2025-12-09 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index bd8e58649..d8813f227 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "64d8fd34de4621adbe3924fd081a8f6a92d55872", + "rev": "bbf1f53abe6a2fbb5d33d72a5ef0bec27e493ec5", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-08", + "inputRev": "nightly-testing-2025-12-09", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c5dd2e96c1f87369e6dfea983fc0eb24523a72ca", + "rev": "25b1494bbf3663d3418ef81918af8ec3b000cf54", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "66153a0cad828f26f7e0e65db1057cd5a104b536", + "rev": "bda61ace1e2fbf73689899a8b3ca5fc74b0e21b1", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index eb9415310..ddaa8db43 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-08" +rev = "nightly-testing-2025-12-09" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 599ac9c46..3c068899a 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-08 +leanprover/lean4:nightly-2025-12-09 From 779f68d451acecbfb3f34d331053269f3e8d01f2 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 10 Dec 2025 13:14:00 +0000 Subject: [PATCH 081/253] chore: bump to nightly-2025-12-10 with mathlib at nightly-testing-2025-12-10 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index d8813f227..21741925e 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "bbf1f53abe6a2fbb5d33d72a5ef0bec27e493ec5", + "rev": "25918fa625b53957490426f591c8f7efe477fe0d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-09", + "inputRev": "nightly-testing-2025-12-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bda61ace1e2fbf73689899a8b3ca5fc74b0e21b1", + "rev": "80627bbde8b8a0474814092e1dd2aff89123cc1a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index ddaa8db43..469dff2bb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-09" +rev = "nightly-testing-2025-12-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3c068899a..0dc2d29e0 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-09 +leanprover/lean4:nightly-2025-12-10 From 9cfb7d387c529ce74e748905a8c58e4022ae93b6 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Wed, 10 Dec 2025 17:02:16 -0800 Subject: [PATCH 082/253] chore: fix failures caused by PR mathlib#31247 (#209) This patch is for the `nightly-testing` branch. See the discussion in Zulip: https://leanprover.zulipchat.com/#narrow/channel/513188-CSLib/topic/Upcoming.20closure.20results.20for.20regular.20languages.20in.20mathlib/with/562842179 --- Cslib/Computability/Languages/Language.lean | 4 --- .../Languages/RegularLanguage.lean | 26 ------------------- 2 files changed, 30 deletions(-) diff --git a/Cslib/Computability/Languages/Language.lean b/Cslib/Computability/Languages/Language.lean index fa4ada8eb..569171ede 100644 --- a/Cslib/Computability/Languages/Language.lean +++ b/Cslib/Computability/Languages/Language.lean @@ -21,10 +21,6 @@ open scoped Computability variable {α : Type*} {l m : Language α} -@[simp, scoped grind =] -theorem mem_inf (x : List α) : x ∈ l ⊓ m ↔ x ∈ l ∧ x ∈ m := - Iff.rfl - @[simp] theorem mem_biInf {I : Type*} (s : Set I) (l : I → Language α) (x : List α) : (x ∈ ⨅ i ∈ s, l i) ↔ ∀ i ∈ s, x ∈ l i := diff --git a/Cslib/Computability/Languages/RegularLanguage.lean b/Cslib/Computability/Languages/RegularLanguage.lean index 5f7617dce..827def2d4 100644 --- a/Cslib/Computability/Languages/RegularLanguage.lean +++ b/Cslib/Computability/Languages/RegularLanguage.lean @@ -4,7 +4,6 @@ Released under Apache 2.0 license as described in the file LICENSE. Authors: Ching-Tsun Chou -/ -import Cslib.Computability.Automata.DA.Prod import Cslib.Computability.Automata.DA.ToNA import Cslib.Computability.Automata.NA.ToDA import Mathlib.Computability.DFA @@ -54,13 +53,6 @@ theorem IsRegular.iff_cslib_nfa {l : Language Symbol} : -- From this point onward we will use only automata from Cslib in the proofs. open Cslib -@[simp] -theorem IsRegular.compl {l : Language Symbol} (h : l.IsRegular) : (lᶜ).IsRegular := by - rw [IsRegular.iff_cslib_dfa] at h ⊢ - obtain ⟨State, _, ⟨da, acc⟩, rfl⟩ := h - use State, inferInstance, ⟨da, accᶜ⟩ - grind - @[simp] theorem IsRegular.zero : (0 : Language Symbol).IsRegular := by rw [IsRegular.iff_cslib_dfa] @@ -84,24 +76,6 @@ theorem IsRegular.top : (⊤ : Language Symbol).IsRegular := by have : (⊥ᶜ : Language Symbol).IsRegular := IsRegular.compl <| IsRegular.zero rwa [← compl_bot] -@[simp] -theorem IsRegular.inf {l1 l2 : Language Symbol} - (h1 : l1.IsRegular) (h2 : l2.IsRegular) : (l1 ⊓ l2).IsRegular := by - rw [IsRegular.iff_cslib_dfa] at h1 h2 ⊢ - obtain ⟨State1, h_fin1, ⟨da1, acc1⟩, rfl⟩ := h1 - obtain ⟨State2, h_fin1, ⟨da2, acc2⟩, rfl⟩ := h2 - use State1 × State2, inferInstance, ⟨da1.prod da2, fst ⁻¹' acc1 ∩ snd ⁻¹' acc2⟩ - ext; grind - -@[simp] -theorem IsRegular.add {l1 l2 : Language Symbol} - (h1 : l1.IsRegular) (h2 : l2.IsRegular) : (l1 + l2).IsRegular := by - rw [IsRegular.iff_cslib_dfa] at h1 h2 ⊢ - obtain ⟨State1, h_fin1, ⟨da1, acc1⟩, rfl⟩ := h1 - obtain ⟨State2, h_fin1, ⟨da2, acc2⟩, rfl⟩ := h2 - use State1 × State2, inferInstance, ⟨da1.prod da2, fst ⁻¹' acc1 ∪ snd ⁻¹' acc2⟩ - ext; grind [Language.mem_add] - @[simp] theorem IsRegular.iInf {I : Type*} [Finite I] {s : Set I} {l : I → Language Symbol} (h : ∀ i ∈ s, (l i).IsRegular) : (⨅ i ∈ s, l i).IsRegular := by From 3d5395665a10bf7b61e53e7fd049f9358ca11e1f Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 14 Dec 2025 13:09:21 +0000 Subject: [PATCH 083/253] chore: bump to nightly-2025-12-14 with mathlib at nightly-testing-2025-12-14 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 21741925e..a7dbef6ed 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "25918fa625b53957490426f591c8f7efe477fe0d", + "rev": "376a0299823863afc2717dec66e0bf567acdae92", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-10", + "inputRev": "nightly-testing-2025-12-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8e37a9bed06d16a2c4253ee62938e216d3fc9a3a", + "rev": "ef69feab7fda41e39c3dc17d36f71d0515e121f2", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2fa5d6eaad021d45b7262e79cbf6f68a2d65adfd", + "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "80627bbde8b8a0474814092e1dd2aff89123cc1a", + "rev": "63ea5a64ea8b1204ef0ed347ca0c37d8ef8b4cda", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 469dff2bb..e6c755695 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-10" +rev = "nightly-testing-2025-12-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0dc2d29e0..28ebdad6c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-10 +leanprover/lean4:nightly-2025-12-14 From 8f9851c091d52224c8909aa145c066f486c570fe Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Mon, 15 Dec 2025 06:44:21 +1100 Subject: [PATCH 084/253] chore: update bump branch to nightly-2025-12-14 and mathlib master --- lake-manifest.json | 2 +- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8820e5427..42a9a1de7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -8,7 +8,7 @@ "rev": "32d24245c7a12ded17325299fd41d412022cd3fe", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "v4.27.0-rc1", + "inputRev": "master", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 377c3de5a..4a8f8b43a 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" scope = "leanprover-community" -rev = "v4.27.0-rc1" +rev = "master" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index bd19bde0c..28ebdad6c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.27.0-rc1 +leanprover/lean4:nightly-2025-12-14 From 7245106bcfd3a96b5112ae00670f3ff6aaf1377b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sun, 14 Dec 2025 20:49:53 -0500 Subject: [PATCH 085/253] chore: adaptations for nightly-2025-12-14 (#219) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 40 ++++++++++++++++++++-------------------- lakefile.toml | 4 ++-- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 42a9a1de7..a7dbef6ed 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,94 +1,94 @@ {"version": "1.1.0", "packagesDir": ".lake/packages", "packages": - [{"url": "https://github.com/leanprover-community/mathlib4", + [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "32d24245c7a12ded17325299fd41d412022cd3fe", + "scope": "", + "rev": "376a0299823863afc2717dec66e0bf567acdae92", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing-2025-12-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8d3713f36dda48467eb61f8c1c4db89c49a6251a", + "rev": "ca46151b876597b20728bd65794928efda180d13", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "19e5f5cc9c21199be466ef99489e3acab370f079", + "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4eb26e1a4806b200ddfe5179d0c2a0fae56c54a7", + "rev": "25b1494bbf3663d3418ef81918af8ec3b000cf54", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ef8377f31b5535430b6753a974d685b0019d0681", + "rev": "652cdcba9ee81b4d621b8a10315d48f8ae05bca8", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.84", + "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "fb12f5535c80e40119286d9575c9393562252d21", + "rev": "ef69feab7fda41e39c3dc17d36f71d0515e121f2", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "523ec6fc8062d2f470fdc8de6f822fe89552b5e6", + "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "6254bed25866358ce4f841fa5a13b77de04ffbc8", + "rev": "63ea5a64ea8b1204ef0ed347ca0c37d8ef8b4cda", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "726b98c53e2da249c1de768fbbbb5e67bc9cef60", + "rev": "d9fc8ae23024be37424a189982c92356e37935c8", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.27.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 4a8f8b43a..e6c755695 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,8 +15,8 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" -scope = "leanprover-community" -rev = "master" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2025-12-14" [[lean_lib]] name = "Cslib" From b17e81baf980827bc0685936ba1f4200efd18781 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 15 Dec 2025 13:15:03 +0000 Subject: [PATCH 086/253] chore: bump to nightly-2025-12-15 with mathlib at nightly-testing-2025-12-15 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a7dbef6ed..8e5cc2a7d 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "376a0299823863afc2717dec66e0bf567acdae92", + "rev": "4d6a1d528583db055842b31879e9432fd9abb02e", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-14", + "inputRev": "nightly-testing-2025-12-15", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "63ea5a64ea8b1204ef0ed347ca0c37d8ef8b4cda", + "rev": "363d7f392936e98f02d34f8ef8dc2430c23b9289", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e6c755695..933eb7d31 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-14" +rev = "nightly-testing-2025-12-15" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28ebdad6c..51c2d129d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-14 +leanprover/lean4:nightly-2025-12-15 From faac46f56d6a98bdb2c1c8234d894ea3bd38b155 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 15 Dec 2025 11:32:17 -0500 Subject: [PATCH 087/253] chore: adaptations for nightly-2025-12-15 (#222) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a7dbef6ed..8e5cc2a7d 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "376a0299823863afc2717dec66e0bf567acdae92", + "rev": "4d6a1d528583db055842b31879e9432fd9abb02e", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-14", + "inputRev": "nightly-testing-2025-12-15", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "63ea5a64ea8b1204ef0ed347ca0c37d8ef8b4cda", + "rev": "363d7f392936e98f02d34f8ef8dc2430c23b9289", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e6c755695..933eb7d31 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-14" +rev = "nightly-testing-2025-12-15" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28ebdad6c..51c2d129d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-14 +leanprover/lean4:nightly-2025-12-15 From 47e3632d32849e40a412fcc40182fcefe35d356b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 16 Dec 2025 19:03:21 +0000 Subject: [PATCH 088/253] chore: bump to nightly-2025-12-16 with mathlib at nightly-testing-2025-12-16 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8e5cc2a7d..03d9100ea 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "4d6a1d528583db055842b31879e9432fd9abb02e", + "rev": "6aa41bc08a8e0425cdced8d1a00189842e517f12", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-15", + "inputRev": "nightly-testing-2025-12-16", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -51,12 +51,12 @@ "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/leanprover-community/aesop", + {"url": "https://github.com/nomeata/aesop", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "ef69feab7fda41e39c3dc17d36f71d0515e121f2", - "name": "aesop", + "scope": "", + "rev": "bd9c6ee415a76c2ccb502ec7115451bed5ad0d6c", + "name": "Aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", "inherited": true, @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "363d7f392936e98f02d34f8ef8dc2430c23b9289", + "rev": "63cdb23411248b6c01bd4c867e9383a60ba84e06", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 933eb7d31..990028799 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-15" +rev = "nightly-testing-2025-12-16" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 51c2d129d..ea152ff02 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-15 +leanprover/lean4:nightly-2025-12-16 From b8ccdfe09a35de90d0c99268a88b8ae0d2f8a806 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Tue, 16 Dec 2025 14:13:08 -0500 Subject: [PATCH 089/253] chore: adaptations for nightly-2025-12-16 (#226) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8e5cc2a7d..03d9100ea 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "4d6a1d528583db055842b31879e9432fd9abb02e", + "rev": "6aa41bc08a8e0425cdced8d1a00189842e517f12", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-15", + "inputRev": "nightly-testing-2025-12-16", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -51,12 +51,12 @@ "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/leanprover-community/aesop", + {"url": "https://github.com/nomeata/aesop", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "ef69feab7fda41e39c3dc17d36f71d0515e121f2", - "name": "aesop", + "scope": "", + "rev": "bd9c6ee415a76c2ccb502ec7115451bed5ad0d6c", + "name": "Aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", "inherited": true, @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "363d7f392936e98f02d34f8ef8dc2430c23b9289", + "rev": "63cdb23411248b6c01bd4c867e9383a60ba84e06", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 933eb7d31..990028799 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-15" +rev = "nightly-testing-2025-12-16" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 51c2d129d..ea152ff02 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-15 +leanprover/lean4:nightly-2025-12-16 From 6296f6cf3ef55d57b7420e7b48d33c3a349d0120 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 17 Dec 2025 13:13:58 +0000 Subject: [PATCH 090/253] chore: bump to nightly-2025-12-17 with mathlib at nightly-testing-2025-12-17 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 03d9100ea..618822f40 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "6aa41bc08a8e0425cdced8d1a00189842e517f12", + "rev": "178f5fddb4143ecaf7f73e9ec8ef61518323f4a1", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-16", + "inputRev": "nightly-testing-2025-12-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -51,12 +51,12 @@ "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/nomeata/aesop", + {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, - "scope": "", - "rev": "bd9c6ee415a76c2ccb502ec7115451bed5ad0d6c", - "name": "Aesop", + "scope": "leanprover-community", + "rev": "33c0b1e20edabf196d9e888edbf061b32e63b6e4", + "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", "inherited": true, @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "63cdb23411248b6c01bd4c867e9383a60ba84e06", + "rev": "a66b2895e7d2a3246bc08054eb88b423e3af909a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 990028799..917cc3624 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-16" +rev = "nightly-testing-2025-12-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ea152ff02..105d47289 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-16 +leanprover/lean4:nightly-2025-12-17 From 0dd3422a3d970b4bd8eca958e9ab93b28a585ef8 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Wed, 17 Dec 2025 21:36:27 -0500 Subject: [PATCH 091/253] chore: adaptations for nightly-2025-12-17 (#228) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 03d9100ea..618822f40 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "6aa41bc08a8e0425cdced8d1a00189842e517f12", + "rev": "178f5fddb4143ecaf7f73e9ec8ef61518323f4a1", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-16", + "inputRev": "nightly-testing-2025-12-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -51,12 +51,12 @@ "inputRev": "v0.0.83-pre2", "inherited": true, "configFile": "lakefile.lean"}, - {"url": "https://github.com/nomeata/aesop", + {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, - "scope": "", - "rev": "bd9c6ee415a76c2ccb502ec7115451bed5ad0d6c", - "name": "Aesop", + "scope": "leanprover-community", + "rev": "33c0b1e20edabf196d9e888edbf061b32e63b6e4", + "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", "inherited": true, @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "63cdb23411248b6c01bd4c867e9383a60ba84e06", + "rev": "a66b2895e7d2a3246bc08054eb88b423e3af909a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 990028799..917cc3624 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-16" +rev = "nightly-testing-2025-12-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ea152ff02..105d47289 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-16 +leanprover/lean4:nightly-2025-12-17 From 2cde5dbda9cc3029b861864d305331e3018c19ca Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 21 Dec 2025 10:02:04 +0000 Subject: [PATCH 092/253] chore: bump to nightly-2025-12-21 with mathlib at nightly-testing-2025-12-21 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 618822f40..1fec67acf 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "178f5fddb4143ecaf7f73e9ec8ef61518323f4a1", + "rev": "79e7204347080c40edc253bd90a46e3a93d94428", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-17", + "inputRev": "nightly-testing-2025-12-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a66b2895e7d2a3246bc08054eb88b423e3af909a", + "rev": "a1b074f50773cd383d02ca57d311cc5c44362596", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 917cc3624..938d55211 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-17" +rev = "nightly-testing-2025-12-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 105d47289..536bccf95 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-17 +leanprover/lean4:nightly-2025-12-21 From c1881d5ab151467768d8c4740e41f01177559309 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 21 Dec 2025 04:19:15 -0600 Subject: [PATCH 093/253] deprecations --- Cslib/Languages/CombinatoryLogic/Confluence.lean | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib/Languages/CombinatoryLogic/Confluence.lean b/Cslib/Languages/CombinatoryLogic/Confluence.lean index 13073000a..caf1c6123 100644 --- a/Cslib/Languages/CombinatoryLogic/Confluence.lean +++ b/Cslib/Languages/CombinatoryLogic/Confluence.lean @@ -92,11 +92,11 @@ theorem reflTransGen_parallelReduction_mRed : Relation.ReflTransGen ParallelReduction = RedSKI.MRed := by ext a b constructor - · apply Relation.reflTransGen_minimal + · apply Relation.reflTransGen_of_transitive_reflexive · exact fun _ => by rfl · exact Relation.transitive_reflTransGen · exact @mRed_of_parallelReduction - · apply Relation.reflTransGen_minimal + · apply Relation.reflTransGen_of_transitive_reflexive · exact Relation.reflexive_reflTransGen · exact Relation.transitive_reflTransGen · exact fun a a' h => Relation.ReflTransGen.single (parallelReduction_of_red h) From ed6795c18825192616ebdf9bf464e0429a4b817a Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 21 Dec 2025 04:35:41 -0600 Subject: [PATCH 094/253] grind lints --- CslibTests/GrindLint.lean | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index 022ce65ec..9faaa5eb7 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -68,6 +68,8 @@ open_scoped_all Cslib #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Typing.sub #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Typing.tapp #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.para_subst +#grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.FullBeta.redex_app_l_cong +#grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.FullBeta.redex_app_r_cong #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.subst_intro #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Env.Wf.sub #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Env.Wf.ty From 99ef1fec14ba899f6d8b6af6537d9fc096253e31 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sun, 21 Dec 2025 05:49:34 -0500 Subject: [PATCH 095/253] chore: adaptations for nightly-2025-12-21 (#233) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- Cslib/Languages/CombinatoryLogic/Confluence.lean | 4 ++-- CslibTests/GrindLint.lean | 2 ++ lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 5 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Cslib/Languages/CombinatoryLogic/Confluence.lean b/Cslib/Languages/CombinatoryLogic/Confluence.lean index 13073000a..caf1c6123 100644 --- a/Cslib/Languages/CombinatoryLogic/Confluence.lean +++ b/Cslib/Languages/CombinatoryLogic/Confluence.lean @@ -92,11 +92,11 @@ theorem reflTransGen_parallelReduction_mRed : Relation.ReflTransGen ParallelReduction = RedSKI.MRed := by ext a b constructor - · apply Relation.reflTransGen_minimal + · apply Relation.reflTransGen_of_transitive_reflexive · exact fun _ => by rfl · exact Relation.transitive_reflTransGen · exact @mRed_of_parallelReduction - · apply Relation.reflTransGen_minimal + · apply Relation.reflTransGen_of_transitive_reflexive · exact Relation.reflexive_reflTransGen · exact Relation.transitive_reflTransGen · exact fun a a' h => Relation.ReflTransGen.single (parallelReduction_of_red h) diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index 022ce65ec..9faaa5eb7 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -68,6 +68,8 @@ open_scoped_all Cslib #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Typing.sub #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Typing.tapp #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.para_subst +#grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.FullBeta.redex_app_l_cong +#grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.FullBeta.redex_app_r_cong #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.subst_intro #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Env.Wf.sub #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Fsub.Env.Wf.ty diff --git a/lake-manifest.json b/lake-manifest.json index 618822f40..1fec67acf 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "178f5fddb4143ecaf7f73e9ec8ef61518323f4a1", + "rev": "79e7204347080c40edc253bd90a46e3a93d94428", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-17", + "inputRev": "nightly-testing-2025-12-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a66b2895e7d2a3246bc08054eb88b423e3af909a", + "rev": "a1b074f50773cd383d02ca57d311cc5c44362596", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 917cc3624..938d55211 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-17" +rev = "nightly-testing-2025-12-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 105d47289..536bccf95 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-17 +leanprover/lean4:nightly-2025-12-21 From b3e25e137bf6e17dce41746ebccb0a6e980870f9 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 22 Dec 2025 13:13:13 +0000 Subject: [PATCH 096/253] chore: bump to nightly-2025-12-22 with mathlib at nightly-testing-2025-12-22 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1fec67acf..fe7a1e221 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "79e7204347080c40edc253bd90a46e3a93d94428", + "rev": "edf30a5d1eada6813f39b19c8080e915a349c388", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-21", + "inputRev": "nightly-testing-2025-12-22", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 938d55211..3218117c4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-21" +rev = "nightly-testing-2025-12-22" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 536bccf95..e2b9c6584 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-21 +leanprover/lean4:nightly-2025-12-22 From 84ba53f3e7c73356f70d29ca4687315ee7b71ac3 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 22 Dec 2025 08:29:13 -0500 Subject: [PATCH 097/253] chore: adaptations for nightly-2025-12-22 (#235) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1fec67acf..fe7a1e221 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "79e7204347080c40edc253bd90a46e3a93d94428", + "rev": "edf30a5d1eada6813f39b19c8080e915a349c388", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-21", + "inputRev": "nightly-testing-2025-12-22", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 938d55211..3218117c4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-21" +rev = "nightly-testing-2025-12-22" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 536bccf95..e2b9c6584 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-21 +leanprover/lean4:nightly-2025-12-22 From b18ce61b3486bb3297dac166c4a3bced0b9f7ecc Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 25 Dec 2025 13:11:52 +0000 Subject: [PATCH 098/253] chore: bump to nightly-2025-12-25 with mathlib at nightly-testing-2025-12-25 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fe7a1e221..c5e773f19 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "edf30a5d1eada6813f39b19c8080e915a349c388", + "rev": "add0ba94d8cba4e525b32b222f32e4137cc157d8", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-22", + "inputRev": "nightly-testing-2025-12-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a1b074f50773cd383d02ca57d311cc5c44362596", + "rev": "02f37b7b968027747ad80d25053956b07a7c767e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3218117c4..fab879b48 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-22" +rev = "nightly-testing-2025-12-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index e2b9c6584..f2e524c13 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-22 +leanprover/lean4:nightly-2025-12-25 From 16a87a4110002fa8e592eed3e07017111adf158f Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Thu, 25 Dec 2025 08:37:39 -0500 Subject: [PATCH 099/253] chore: adaptations for nightly-2025-12-25 (#238) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fe7a1e221..c5e773f19 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "edf30a5d1eada6813f39b19c8080e915a349c388", + "rev": "add0ba94d8cba4e525b32b222f32e4137cc157d8", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-22", + "inputRev": "nightly-testing-2025-12-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a1b074f50773cd383d02ca57d311cc5c44362596", + "rev": "02f37b7b968027747ad80d25053956b07a7c767e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3218117c4..fab879b48 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-22" +rev = "nightly-testing-2025-12-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index e2b9c6584..f2e524c13 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-22 +leanprover/lean4:nightly-2025-12-25 From 3665faaae751daf55637b18413416081d6fe1daf Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 3 Jan 2026 10:02:00 +0000 Subject: [PATCH 100/253] chore: bump to nightly-2026-01-02 with mathlib at nightly-testing-2026-01-02 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index c5e773f19..a2ebd82f1 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "add0ba94d8cba4e525b32b222f32e4137cc157d8", + "rev": "c31e3a73aa14bfd21947d24ea88041e132afc715", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-25", + "inputRev": "nightly-testing-2026-01-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "33c0b1e20edabf196d9e888edbf061b32e63b6e4", + "rev": "0cb99ae1dcc105301c6d757cf4a7e184dea26267", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02f37b7b968027747ad80d25053956b07a7c767e", + "rev": "b5c7e4b4a18848804110935532593f38c1058f63", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index fab879b48..3245c02ab 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-25" +rev = "nightly-testing-2026-01-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f2e524c13..f5a342e80 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-25 +leanprover/lean4:nightly-2026-01-02 From d5f276f8aa8c19cbaa7203a4f118288c24dff86d Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 3 Jan 2026 08:51:30 -0600 Subject: [PATCH 101/253] use meta for env_linter --- Cslib/Foundations/Lint/Basic.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index b45bad2a9..44ce097c9 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -13,7 +13,7 @@ open Lean Meta Std Batteries.Tactic.Lint /-- A linter for checking that new declarations fall under some preexisting namespace. -/ @[env_linter] -def topNamespace : Batteries.Tactic.Lint.Linter where +meta def topNamespace : Batteries.Tactic.Lint.Linter where noErrorsFound := "No declarations are outside a namespace." errorsFound := "TOP LEVEL DECLARATIONS:" test declName := do From 9f82b337184d542b20fb15ff540d3f77281297cd Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 3 Jan 2026 08:52:49 -0600 Subject: [PATCH 102/253] deprecated IsSymm --- Cslib/Logics/LinearLogic/CLL/Basic.lean | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Cslib/Logics/LinearLogic/CLL/Basic.lean b/Cslib/Logics/LinearLogic/CLL/Basic.lean index c82540e31..ce72f1546 100644 --- a/Cslib/Logics/LinearLogic/CLL/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/Basic.lean @@ -387,8 +387,7 @@ def tensor_assoc {a b c : Proposition Atom} : a ⊗ (b ⊗ c) ≡⇓ (a ⊗ b) show a⫠ ::ₘ b⫠ ::ₘ c⫠ ::ₘ {a ⊗ (b ⊗ c)} = ((a ⊗ (b ⊗ c)) ::ₘ {a⫠} + ({b⫠} + {c⫠})) by grind ▸ (.tensor .ax <| .tensor .ax .ax)⟩ -instance {Γ : Sequent Atom} : - IsSymm (Proposition Atom) (fun a b => Sequent.Provable ((a ⊗ b) ::ₘ Γ)) where +instance {Γ : Sequent Atom} : Std.Symm (fun a b => Sequent.Provable ((a ⊗ b) ::ₘ Γ)) where symm _ _ h := Sequent.Provable.fromProof (subst_eqv_head tensor_symm h.toProof) /-- ⊕ is idempotent. -/ From 9e40afadb63b7e2e4154a3784ce15ba94e4b125d Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sat, 3 Jan 2026 10:08:18 -0500 Subject: [PATCH 103/253] chore: adaptations for nightly-2026-01-02 (#242) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- Cslib/Foundations/Lint/Basic.lean | 2 +- Cslib/Logics/LinearLogic/CLL/Basic.lean | 3 +-- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 5 files changed, 8 insertions(+), 9 deletions(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index b45bad2a9..44ce097c9 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -13,7 +13,7 @@ open Lean Meta Std Batteries.Tactic.Lint /-- A linter for checking that new declarations fall under some preexisting namespace. -/ @[env_linter] -def topNamespace : Batteries.Tactic.Lint.Linter where +meta def topNamespace : Batteries.Tactic.Lint.Linter where noErrorsFound := "No declarations are outside a namespace." errorsFound := "TOP LEVEL DECLARATIONS:" test declName := do diff --git a/Cslib/Logics/LinearLogic/CLL/Basic.lean b/Cslib/Logics/LinearLogic/CLL/Basic.lean index c82540e31..ce72f1546 100644 --- a/Cslib/Logics/LinearLogic/CLL/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/Basic.lean @@ -387,8 +387,7 @@ def tensor_assoc {a b c : Proposition Atom} : a ⊗ (b ⊗ c) ≡⇓ (a ⊗ b) show a⫠ ::ₘ b⫠ ::ₘ c⫠ ::ₘ {a ⊗ (b ⊗ c)} = ((a ⊗ (b ⊗ c)) ::ₘ {a⫠} + ({b⫠} + {c⫠})) by grind ▸ (.tensor .ax <| .tensor .ax .ax)⟩ -instance {Γ : Sequent Atom} : - IsSymm (Proposition Atom) (fun a b => Sequent.Provable ((a ⊗ b) ::ₘ Γ)) where +instance {Γ : Sequent Atom} : Std.Symm (fun a b => Sequent.Provable ((a ⊗ b) ::ₘ Γ)) where symm _ _ h := Sequent.Provable.fromProof (subst_eqv_head tensor_symm h.toProof) /-- ⊕ is idempotent. -/ diff --git a/lake-manifest.json b/lake-manifest.json index c5e773f19..a2ebd82f1 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "add0ba94d8cba4e525b32b222f32e4137cc157d8", + "rev": "c31e3a73aa14bfd21947d24ea88041e132afc715", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2025-12-25", + "inputRev": "nightly-testing-2026-01-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "33c0b1e20edabf196d9e888edbf061b32e63b6e4", + "rev": "0cb99ae1dcc105301c6d757cf4a7e184dea26267", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02f37b7b968027747ad80d25053956b07a7c767e", + "rev": "b5c7e4b4a18848804110935532593f38c1058f63", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index fab879b48..3245c02ab 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2025-12-25" +rev = "nightly-testing-2026-01-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f2e524c13..f5a342e80 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2025-12-25 +leanprover/lean4:nightly-2026-01-02 From 5b07be466309a9537ad4137266488f24c7b8d21b Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 5 Jan 2026 13:15:30 +0000 Subject: [PATCH 104/253] chore: bump to nightly-2026-01-05 with mathlib at nightly-testing-2026-01-05 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a2ebd82f1..84fc16e10 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c31e3a73aa14bfd21947d24ea88041e132afc715", + "rev": "8fdd30260e06fe5bd4053cc1c8ca66761ee196ba", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-02", + "inputRev": "nightly-testing-2026-01-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0cb99ae1dcc105301c6d757cf4a7e184dea26267", + "rev": "2a6ce7931d891ab9a2a9e6260d281d5659040a7b", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b5c7e4b4a18848804110935532593f38c1058f63", + "rev": "b397d9226a96d388e740db11c33e14430369c0bf", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3245c02ab..7d6ebf8a6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-02" +rev = "nightly-testing-2026-01-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f5a342e80..26e10ff59 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-02 +leanprover/lean4:nightly-2026-01-05 From c26d2dd53f91fc788bd44b2cdb8c755c54cda5c1 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 5 Jan 2026 08:32:09 -0500 Subject: [PATCH 105/253] chore: adaptations for nightly-2026-01-05 (#244) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a2ebd82f1..84fc16e10 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c31e3a73aa14bfd21947d24ea88041e132afc715", + "rev": "8fdd30260e06fe5bd4053cc1c8ca66761ee196ba", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-02", + "inputRev": "nightly-testing-2026-01-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0cb99ae1dcc105301c6d757cf4a7e184dea26267", + "rev": "2a6ce7931d891ab9a2a9e6260d281d5659040a7b", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b5c7e4b4a18848804110935532593f38c1058f63", + "rev": "b397d9226a96d388e740db11c33e14430369c0bf", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3245c02ab..7d6ebf8a6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-02" +rev = "nightly-testing-2026-01-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f5a342e80..26e10ff59 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-02 +leanprover/lean4:nightly-2026-01-05 From fe784200ea79f2ca84a57656e27136e479ca37e0 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 6 Jan 2026 13:14:01 +0000 Subject: [PATCH 106/253] chore: bump to nightly-2026-01-06 with mathlib at nightly-testing-2026-01-06 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 84fc16e10..07b4f12a6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "8fdd30260e06fe5bd4053cc1c8ca66761ee196ba", + "rev": "e99534b99950c8f86ed0cebb4aee21ab3e94812b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-05", + "inputRev": "nightly-testing-2026-01-06", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 7d6ebf8a6..45b892432 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-05" +rev = "nightly-testing-2026-01-06" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 26e10ff59..8b1d96a6f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-05 +leanprover/lean4:nightly-2026-01-06 From a0d656a8ed1fc3fd4a7d97ded5dfde31f8e66cee Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Tue, 6 Jan 2026 08:29:41 -0500 Subject: [PATCH 107/253] chore: adaptations for nightly-2026-01-06 (#246) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 84fc16e10..07b4f12a6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "8fdd30260e06fe5bd4053cc1c8ca66761ee196ba", + "rev": "e99534b99950c8f86ed0cebb4aee21ab3e94812b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-05", + "inputRev": "nightly-testing-2026-01-06", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 7d6ebf8a6..45b892432 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-05" +rev = "nightly-testing-2026-01-06" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 26e10ff59..8b1d96a6f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-05 +leanprover/lean4:nightly-2026-01-06 From 77217eb0329d7b676f075293474c93e45c7b7b40 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 7 Jan 2026 13:14:49 +0000 Subject: [PATCH 108/253] chore: bump to nightly-2026-01-07 with mathlib at nightly-testing-2026-01-07 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 07b4f12a6..6f24623c6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e99534b99950c8f86ed0cebb4aee21ab3e94812b", + "rev": "f78586326bc24a45390cf5e8682fce34dd18ea50", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-06", + "inputRev": "nightly-testing-2026-01-07", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 45b892432..766c6c382 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-06" +rev = "nightly-testing-2026-01-07" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 8b1d96a6f..f1ede4da8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-06 +leanprover/lean4:nightly-2026-01-07 From f64a2bcf8be13edecd845eef583bfcecd0fdc902 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Wed, 7 Jan 2026 08:51:12 -0500 Subject: [PATCH 109/253] chore: adaptations for nightly-2026-01-07 (#248) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 07b4f12a6..6f24623c6 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e99534b99950c8f86ed0cebb4aee21ab3e94812b", + "rev": "f78586326bc24a45390cf5e8682fce34dd18ea50", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-06", + "inputRev": "nightly-testing-2026-01-07", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 45b892432..766c6c382 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-06" +rev = "nightly-testing-2026-01-07" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 8b1d96a6f..f1ede4da8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-06 +leanprover/lean4:nightly-2026-01-07 From 6ac7eb44c732a0cc069f2ddd6e285e25bb129657 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 8 Jan 2026 13:14:46 +0000 Subject: [PATCH 110/253] chore: bump to nightly-2026-01-08 with mathlib at nightly-testing-2026-01-08 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 6f24623c6..df935ab37 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f78586326bc24a45390cf5e8682fce34dd18ea50", + "rev": "076312ad5fe9b334143151e4df0342a6359b38df", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-07", + "inputRev": "nightly-testing-2026-01-08", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 766c6c382..394f8d71e 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-07" +rev = "nightly-testing-2026-01-08" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f1ede4da8..2654dd84f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-07 +leanprover/lean4:nightly-2026-01-08 From bb479b53a5aa9c9ad31be1ee8f51fc9e65046063 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Thu, 8 Jan 2026 08:37:08 -0500 Subject: [PATCH 111/253] chore: adaptations for nightly-2026-01-08 (#251) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 6f24623c6..df935ab37 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f78586326bc24a45390cf5e8682fce34dd18ea50", + "rev": "076312ad5fe9b334143151e4df0342a6359b38df", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-07", + "inputRev": "nightly-testing-2026-01-08", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 766c6c382..394f8d71e 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-07" +rev = "nightly-testing-2026-01-08" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f1ede4da8..2654dd84f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-07 +leanprover/lean4:nightly-2026-01-08 From 6ae9f25734cc8af9e91f3a3b2277ac6304d35904 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 9 Jan 2026 13:14:23 +0000 Subject: [PATCH 112/253] chore: bump to nightly-2026-01-09 with mathlib at nightly-testing-2026-01-09 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index df935ab37..93b09dd58 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "076312ad5fe9b334143151e4df0342a6359b38df", + "rev": "160f5739d925b7bc2aacbcec42bacef5e3f5e805", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-08", + "inputRev": "nightly-testing-2026-01-09", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b397d9226a96d388e740db11c33e14430369c0bf", + "rev": "78da9217f81ae1daa7b396f8e43da3f77fb30f68", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 394f8d71e..09d4a8bb4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-08" +rev = "nightly-testing-2026-01-09" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2654dd84f..0421317bf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-08 +leanprover/lean4:nightly-2026-01-09 From b085d165e039159a8cf945aafd2e19356dcb5329 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Fri, 9 Jan 2026 08:31:18 -0500 Subject: [PATCH 113/253] chore: adaptations for nightly-2026-01-09 (#254) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index df935ab37..93b09dd58 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "076312ad5fe9b334143151e4df0342a6359b38df", + "rev": "160f5739d925b7bc2aacbcec42bacef5e3f5e805", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-08", + "inputRev": "nightly-testing-2026-01-09", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b397d9226a96d388e740db11c33e14430369c0bf", + "rev": "78da9217f81ae1daa7b396f8e43da3f77fb30f68", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 394f8d71e..09d4a8bb4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-08" +rev = "nightly-testing-2026-01-09" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2654dd84f..0421317bf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-08 +leanprover/lean4:nightly-2026-01-09 From 9bab47be5222f99a805d3745eca0ea901ed8bb34 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 10 Jan 2026 22:01:50 +0000 Subject: [PATCH 114/253] chore: bump to nightly-2026-01-10 with mathlib at nightly-testing-2026-01-10 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 93b09dd58..44ee9c8e2 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "160f5739d925b7bc2aacbcec42bacef5e3f5e805", + "rev": "25ef31e6a6229b890e51687a93fce763bf13936f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-09", + "inputRev": "nightly-testing-2026-01-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "78da9217f81ae1daa7b396f8e43da3f77fb30f68", + "rev": "53afdaf554bcf195979ec7f7e2721c9d67f4f330", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 09d4a8bb4..3d3146ba9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-09" +rev = "nightly-testing-2026-01-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0421317bf..27853fa06 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-09 +leanprover/lean4:nightly-2026-01-10 From 4d974ed5fb1195ddf5dff52a43324fc59fe60821 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sat, 10 Jan 2026 17:29:49 -0500 Subject: [PATCH 115/253] chore: adaptations for nightly-2026-01-10 (#257) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 93b09dd58..44ee9c8e2 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "160f5739d925b7bc2aacbcec42bacef5e3f5e805", + "rev": "25ef31e6a6229b890e51687a93fce763bf13936f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-09", + "inputRev": "nightly-testing-2026-01-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "78da9217f81ae1daa7b396f8e43da3f77fb30f68", + "rev": "53afdaf554bcf195979ec7f7e2721c9d67f4f330", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 09d4a8bb4..3d3146ba9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-09" +rev = "nightly-testing-2026-01-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0421317bf..27853fa06 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-09 +leanprover/lean4:nightly-2026-01-10 From 567a009d2e315d889d48165ef2a2736e1d4bae14 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sun, 11 Jan 2026 13:11:20 +0000 Subject: [PATCH 116/253] chore: bump to nightly-2026-01-11 with mathlib at nightly-testing-2026-01-11 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 44ee9c8e2..64003865f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "25ef31e6a6229b890e51687a93fce763bf13936f", + "rev": "7c43efe3ccf2bcb4ebf9f08f1a243154974d2d3c", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-10", + "inputRev": "nightly-testing-2026-01-11", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "53afdaf554bcf195979ec7f7e2721c9d67f4f330", + "rev": "8203568728b78ecf1838a19bd8d91915703a9d46", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3d3146ba9..d87a563e3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-10" +rev = "nightly-testing-2026-01-11" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 27853fa06..b54818a2c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-10 +leanprover/lean4:nightly-2026-01-11 From d07755e5035af21cf58e7788cdf03702e9909748 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sun, 11 Jan 2026 09:13:07 -0500 Subject: [PATCH 117/253] chore: adaptations for nightly-2026-01-11 (#259) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 44ee9c8e2..64003865f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "25ef31e6a6229b890e51687a93fce763bf13936f", + "rev": "7c43efe3ccf2bcb4ebf9f08f1a243154974d2d3c", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-10", + "inputRev": "nightly-testing-2026-01-11", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "53afdaf554bcf195979ec7f7e2721c9d67f4f330", + "rev": "8203568728b78ecf1838a19bd8d91915703a9d46", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 3d3146ba9..d87a563e3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-10" +rev = "nightly-testing-2026-01-11" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 27853fa06..b54818a2c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-10 +leanprover/lean4:nightly-2026-01-11 From 1ac8c6353ecd2df64e4a7183256cbc0d96e43b87 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 12 Jan 2026 13:15:40 +0000 Subject: [PATCH 118/253] chore: bump to nightly-2026-01-12 with mathlib at nightly-testing-2026-01-12 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 64003865f..4a088bca1 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "7c43efe3ccf2bcb4ebf9f08f1a243154974d2d3c", + "rev": "b90e38de349891798da095ffb8dcf17fd6b4d03d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-11", + "inputRev": "nightly-testing-2026-01-12", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8203568728b78ecf1838a19bd8d91915703a9d46", + "rev": "7ddc943667aa6ff42cbaf50d6a07e6ecc9ae41a8", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index d87a563e3..4c057e4c3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-11" +rev = "nightly-testing-2026-01-12" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b54818a2c..3cf3ff89e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-11 +leanprover/lean4:nightly-2026-01-12 From 2e06c5b2b612e76951bb7edcdf95a09e0640e466 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Mon, 12 Jan 2026 09:04:40 -0500 Subject: [PATCH 119/253] chore: adaptations for nightly-2026-01-12 (#262) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 64003865f..4a088bca1 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "7c43efe3ccf2bcb4ebf9f08f1a243154974d2d3c", + "rev": "b90e38de349891798da095ffb8dcf17fd6b4d03d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-11", + "inputRev": "nightly-testing-2026-01-12", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8203568728b78ecf1838a19bd8d91915703a9d46", + "rev": "7ddc943667aa6ff42cbaf50d6a07e6ecc9ae41a8", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index d87a563e3..4c057e4c3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-11" +rev = "nightly-testing-2026-01-12" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b54818a2c..3cf3ff89e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-11 +leanprover/lean4:nightly-2026-01-12 From 9766a3e86d0fca1a7ee90d91993b50d8dd07c12c Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 12 Jan 2026 14:44:41 -0500 Subject: [PATCH 120/253] module system changes --- Cslib/Foundations/Data/Relation.lean | 8 +++----- Cslib/Foundations/Lint/Basic.lean | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/Cslib/Foundations/Data/Relation.lean b/Cslib/Foundations/Data/Relation.lean index c6193e0b1..5ef0dd14f 100644 --- a/Cslib/Foundations/Data/Relation.lean +++ b/Cslib/Foundations/Data/Relation.lean @@ -169,13 +169,11 @@ theorem Confluent.equivalence_join_reflTransGen (h : Confluent r) : abbrev Terminating (r : α → α → Prop) := WellFounded (fun a b => r b a) theorem Terminating.toTransGen (ht : Terminating r) : Terminating (TransGen r) := by - simp only [Terminating] - convert WellFounded.transGen ht using 1 - grind [transGen_swap, WellFounded.transGen] + suffices _ : (fun a b => TransGen r b a) = TransGen (Function.swap r) by grind + grind [transGen_swap] theorem Terminating.ofTransGen : Terminating (TransGen r) → Terminating r := by - simp only [Terminating] - convert @WellFounded.ofTransGen α (Function.swap r) using 2 + suffices _ : (fun a b => TransGen r b a) = TransGen (Function.swap r) by grind grind [transGen_swap] theorem Terminating.iff_transGen : Terminating (TransGen r) ↔ Terminating r := diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index 8a1fb2bce..f9d52be65 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -15,7 +15,7 @@ open Lean Meta Std Batteries.Tactic.Lint /-- A linter for checking that new declarations fall under some preexisting namespace. -/ @[env_linter] -meta def topNamespace : Batteries.Tactic.Lint.Linter where +public meta def topNamespace : Batteries.Tactic.Lint.Linter where noErrorsFound := "No declarations are outside a namespace." errorsFound := "TOP LEVEL DECLARATIONS:" test declName := do From 76f5bb24efd80e6f8dc0cf281d87ed49c34d92c0 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 12 Jan 2026 14:54:31 -0500 Subject: [PATCH 121/253] shake: keep-all for mk_all --- Cslib.lean | 2 +- CslibTests.lean | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib.lean b/Cslib.lean index 8c6984eb9..155c0b40f 100644 --- a/Cslib.lean +++ b/Cslib.lean @@ -1,4 +1,4 @@ -module +module -- shake: keep-all public import Cslib.Algorithms.Lean.MergeSort.MergeSort public import Cslib.Algorithms.Lean.TimeM diff --git a/CslibTests.lean b/CslibTests.lean index e1aaeff0e..2e4434610 100644 --- a/CslibTests.lean +++ b/CslibTests.lean @@ -1,4 +1,4 @@ -module +module -- shake: keep-all public import CslibTests.Bisimulation public import CslibTests.CCS From 79ab0c5392622824a32b461643068eab836030a4 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 14 Jan 2026 13:15:05 +0000 Subject: [PATCH 122/253] chore: bump to nightly-2026-01-14 with mathlib at nightly-testing-2026-01-14 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 4a088bca1..09d8fd4dc 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "b90e38de349891798da095ffb8dcf17fd6b4d03d", + "rev": "b4b270b6d806fc808ee66f4c5fa8e79e7ece49ad", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-12", + "inputRev": "nightly-testing-2026-01-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ddc943667aa6ff42cbaf50d6a07e6ecc9ae41a8", + "rev": "c7df72751d64f426ce8e36b9f20f99c00ced0db2", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 4c057e4c3..26567f8e2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-12" +rev = "nightly-testing-2026-01-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3cf3ff89e..047b1a749 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-12 +leanprover/lean4:nightly-2026-01-14 From 35febd5f6fcf86c930dbf3fc7b27c8fdaf1fa324 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Wed, 14 Jan 2026 08:33:50 -0500 Subject: [PATCH 123/253] chore: adaptations for nightly-2026-01-14 (#266) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- Cslib.lean | 2 +- Cslib/Foundations/Data/Relation.lean | 8 +++----- Cslib/Foundations/Lint/Basic.lean | 2 +- CslibTests.lean | 2 +- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 7 files changed, 11 insertions(+), 13 deletions(-) diff --git a/Cslib.lean b/Cslib.lean index 8c6984eb9..155c0b40f 100644 --- a/Cslib.lean +++ b/Cslib.lean @@ -1,4 +1,4 @@ -module +module -- shake: keep-all public import Cslib.Algorithms.Lean.MergeSort.MergeSort public import Cslib.Algorithms.Lean.TimeM diff --git a/Cslib/Foundations/Data/Relation.lean b/Cslib/Foundations/Data/Relation.lean index c6193e0b1..5ef0dd14f 100644 --- a/Cslib/Foundations/Data/Relation.lean +++ b/Cslib/Foundations/Data/Relation.lean @@ -169,13 +169,11 @@ theorem Confluent.equivalence_join_reflTransGen (h : Confluent r) : abbrev Terminating (r : α → α → Prop) := WellFounded (fun a b => r b a) theorem Terminating.toTransGen (ht : Terminating r) : Terminating (TransGen r) := by - simp only [Terminating] - convert WellFounded.transGen ht using 1 - grind [transGen_swap, WellFounded.transGen] + suffices _ : (fun a b => TransGen r b a) = TransGen (Function.swap r) by grind + grind [transGen_swap] theorem Terminating.ofTransGen : Terminating (TransGen r) → Terminating r := by - simp only [Terminating] - convert @WellFounded.ofTransGen α (Function.swap r) using 2 + suffices _ : (fun a b => TransGen r b a) = TransGen (Function.swap r) by grind grind [transGen_swap] theorem Terminating.iff_transGen : Terminating (TransGen r) ↔ Terminating r := diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index 8a1fb2bce..f9d52be65 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -15,7 +15,7 @@ open Lean Meta Std Batteries.Tactic.Lint /-- A linter for checking that new declarations fall under some preexisting namespace. -/ @[env_linter] -meta def topNamespace : Batteries.Tactic.Lint.Linter where +public meta def topNamespace : Batteries.Tactic.Lint.Linter where noErrorsFound := "No declarations are outside a namespace." errorsFound := "TOP LEVEL DECLARATIONS:" test declName := do diff --git a/CslibTests.lean b/CslibTests.lean index e1aaeff0e..2e4434610 100644 --- a/CslibTests.lean +++ b/CslibTests.lean @@ -1,4 +1,4 @@ -module +module -- shake: keep-all public import CslibTests.Bisimulation public import CslibTests.CCS diff --git a/lake-manifest.json b/lake-manifest.json index 4a088bca1..09d8fd4dc 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "b90e38de349891798da095ffb8dcf17fd6b4d03d", + "rev": "b4b270b6d806fc808ee66f4c5fa8e79e7ece49ad", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-12", + "inputRev": "nightly-testing-2026-01-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ddc943667aa6ff42cbaf50d6a07e6ecc9ae41a8", + "rev": "c7df72751d64f426ce8e36b9f20f99c00ced0db2", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 4c057e4c3..26567f8e2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-12" +rev = "nightly-testing-2026-01-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3cf3ff89e..047b1a749 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-12 +leanprover/lean4:nightly-2026-01-14 From fdc3677f6243f44d6e82fc13a55e13a3f7a357dd Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 20 Jan 2026 13:17:21 +0000 Subject: [PATCH 124/253] chore: bump to nightly-2026-01-20 with mathlib at nightly-testing-2026-01-20 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 09d8fd4dc..034982888 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "b4b270b6d806fc808ee66f4c5fa8e79e7ece49ad", + "rev": "cbe56a4a2d1faf98f88af5b50a72c488fb5ea3bd", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-14", + "inputRev": "nightly-testing-2026-01-20", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2a6ce7931d891ab9a2a9e6260d281d5659040a7b", + "rev": "206b8738806d1e144c288946ff5153b403f44ded", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c7df72751d64f426ce8e36b9f20f99c00ced0db2", + "rev": "02b8ccf854936cec26709071e5061dab8a5728ca", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 26567f8e2..aa6ec74ba 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-14" +rev = "nightly-testing-2026-01-20" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 047b1a749..3b22be147 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-14 +leanprover/lean4:nightly-2026-01-20 From 5fae006185a9360d5f6cf5018d350001134c7c4e Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 20 Jan 2026 09:16:37 -0500 Subject: [PATCH 125/253] unset linter.unusedFintypeInType linter --- Cslib/Foundations/Data/HasFresh.lean | 1 + 1 file changed, 1 insertion(+) diff --git a/Cslib/Foundations/Data/HasFresh.lean b/Cslib/Foundations/Data/HasFresh.lean index e9cb1e8e4..d4aa4aae7 100644 --- a/Cslib/Foundations/Data/HasFresh.lean +++ b/Cslib/Foundations/Data/HasFresh.lean @@ -132,6 +132,7 @@ end export HasFresh (fresh fresh_notMem fresh_exists) +set_option linter.unusedFintypeInType false in lemma HasFresh.not_of_finite (α : Type u) [Fintype α] : IsEmpty (HasFresh α) := ⟨fun f ↦ (f.fresh_notMem .univ).elim (Finset.mem_univ _)⟩ From 321d5f9a491530b68cd98dc26655fa054e8bd0c2 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Tue, 20 Jan 2026 10:12:24 -0500 Subject: [PATCH 126/253] chore: adaptations for nightly-2026-01-20 (#271) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- Cslib/Foundations/Data/HasFresh.lean | 1 + lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Cslib/Foundations/Data/HasFresh.lean b/Cslib/Foundations/Data/HasFresh.lean index e9cb1e8e4..d4aa4aae7 100644 --- a/Cslib/Foundations/Data/HasFresh.lean +++ b/Cslib/Foundations/Data/HasFresh.lean @@ -132,6 +132,7 @@ end export HasFresh (fresh fresh_notMem fresh_exists) +set_option linter.unusedFintypeInType false in lemma HasFresh.not_of_finite (α : Type u) [Fintype α] : IsEmpty (HasFresh α) := ⟨fun f ↦ (f.fresh_notMem .univ).elim (Finset.mem_univ _)⟩ diff --git a/lake-manifest.json b/lake-manifest.json index 09d8fd4dc..034982888 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "b4b270b6d806fc808ee66f4c5fa8e79e7ece49ad", + "rev": "cbe56a4a2d1faf98f88af5b50a72c488fb5ea3bd", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-14", + "inputRev": "nightly-testing-2026-01-20", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2a6ce7931d891ab9a2a9e6260d281d5659040a7b", + "rev": "206b8738806d1e144c288946ff5153b403f44ded", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c7df72751d64f426ce8e36b9f20f99c00ced0db2", + "rev": "02b8ccf854936cec26709071e5061dab8a5728ca", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 26567f8e2..aa6ec74ba 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-14" +rev = "nightly-testing-2026-01-20" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 047b1a749..3b22be147 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-14 +leanprover/lean4:nightly-2026-01-20 From 31e54a7a38c2d5d1e6c7240f19c02d4133bbc2c5 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 21 Jan 2026 13:16:42 +0000 Subject: [PATCH 127/253] chore: bump to nightly-2026-01-21 with mathlib at nightly-testing-2026-01-21 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 034982888..4f2c141fe 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cbe56a4a2d1faf98f88af5b50a72c488fb5ea3bd", + "rev": "f3121dce009d58464415272501509aeeb70ff960", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-20", + "inputRev": "nightly-testing-2026-01-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02b8ccf854936cec26709071e5061dab8a5728ca", + "rev": "e3dfd95041376a3d188685f66796a32bfc948bec", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index aa6ec74ba..6d009cfe1 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-20" +rev = "nightly-testing-2026-01-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3b22be147..0a281ef1d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-20 +leanprover/lean4:nightly-2026-01-21 From e3b061b78da605df90ff1f6df2b069de81c361df Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Wed, 21 Jan 2026 08:34:27 -0500 Subject: [PATCH 128/253] chore: adaptations for nightly-2026-01-21 (#274) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 034982888..4f2c141fe 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cbe56a4a2d1faf98f88af5b50a72c488fb5ea3bd", + "rev": "f3121dce009d58464415272501509aeeb70ff960", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-20", + "inputRev": "nightly-testing-2026-01-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "02b8ccf854936cec26709071e5061dab8a5728ca", + "rev": "e3dfd95041376a3d188685f66796a32bfc948bec", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index aa6ec74ba..6d009cfe1 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-20" +rev = "nightly-testing-2026-01-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3b22be147..0a281ef1d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-20 +leanprover/lean4:nightly-2026-01-21 From bc02831b03afcc1aa39b85b6425ac5659175b874 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Thu, 22 Jan 2026 13:17:08 +0000 Subject: [PATCH 129/253] chore: bump to nightly-2026-01-22 with mathlib at nightly-testing-2026-01-22 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 4f2c141fe..d1aa0426c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f3121dce009d58464415272501509aeeb70ff960", + "rev": "27104944951ebf42f0f44205673e3e7e4bd57684", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-21", + "inputRev": "nightly-testing-2026-01-22", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e3dfd95041376a3d188685f66796a32bfc948bec", + "rev": "11e36b283c10089572dc3c9f79a93f01141a5fce", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6d009cfe1..b86289465 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-21" +rev = "nightly-testing-2026-01-22" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0a281ef1d..2e76e2476 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-21 +leanprover/lean4:nightly-2026-01-22 From b57c28dcd9fb21ac1fd7f521bbd12167b56cce5d Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Thu, 22 Jan 2026 08:32:25 -0500 Subject: [PATCH 130/253] chore: adaptations for nightly-2026-01-22 (#279) Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 4f2c141fe..d1aa0426c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f3121dce009d58464415272501509aeeb70ff960", + "rev": "27104944951ebf42f0f44205673e3e7e4bd57684", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-21", + "inputRev": "nightly-testing-2026-01-22", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e3dfd95041376a3d188685f66796a32bfc948bec", + "rev": "11e36b283c10089572dc3c9f79a93f01141a5fce", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6d009cfe1..b86289465 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-21" +rev = "nightly-testing-2026-01-22" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0a281ef1d..2e76e2476 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-21 +leanprover/lean4:nightly-2026-01-22 From d0f46a851b304385dfac895f9a469a8647db8248 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 23 Jan 2026 03:14:00 -0500 Subject: [PATCH 131/253] grind_lint --- CslibTests/GrindLint.lean | 1 + 1 file changed, 1 insertion(+) diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index c8fc0506c..58d14ddc5 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -35,6 +35,7 @@ open_scoped_all Cslib #grind_lint skip Cslib.FinFun.fromFun_inter #grind_lint skip Cslib.LTS.deterministic_not_lto #grind_lint skip Cslib.LTS.deterministic_tr_image_singleton +#grind_lint skip Cslib.LTS.IsExecution.refl #grind_lint skip Cslib.LTS.mem_saturate_image_τ #grind_lint skip Cslib.ωSequence.drop_const #grind_lint skip Cslib.ωSequence.get_cons_append_zero From 1817f268524df28940c6db212e980d4a7dc59cee Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 23 Jan 2026 13:15:34 +0000 Subject: [PATCH 132/253] chore: bump to nightly-2026-01-23 with mathlib at nightly-testing-2026-01-23 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index d1aa0426c..bee1ed590 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "27104944951ebf42f0f44205673e3e7e4bd57684", + "rev": "05c4275299d8c8da82c6080cc1a697e1ac63c930", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-22", + "inputRev": "nightly-testing-2026-01-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "11e36b283c10089572dc3c9f79a93f01141a5fce", + "rev": "45d90168f6e0d7001c6f4c0f0b330d0f8801d8d9", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index b86289465..8b90dc576 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-22" +rev = "nightly-testing-2026-01-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2e76e2476..6a84982e3 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-22 +leanprover/lean4:nightly-2026-01-23 From d8869e6f73ad42cb7252c00e608b0a3c64b28769 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 24 Jan 2026 10:01:54 +0000 Subject: [PATCH 133/253] chore: bump to nightly-2026-01-24 with mathlib at nightly-testing-2026-01-24 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index bee1ed590..0c30fd10b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "05c4275299d8c8da82c6080cc1a697e1ac63c930", + "rev": "cb392c137f92523b6c137ee117b3ee1a2c245230", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-23", + "inputRev": "nightly-testing-2026-01-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "652cdcba9ee81b4d621b8a10315d48f8ae05bca8", + "rev": "c04225ee7c0585effbd933662b3151f01b600e40", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.83-pre2", + "inputRev": "v0.0.85", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "45d90168f6e0d7001c6f4c0f0b330d0f8801d8d9", + "rev": "3f209e9f386e8f4eabd6eb46b6e627ad7cb130f1", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 8b90dc576..8e3e98775 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-23" +rev = "nightly-testing-2026-01-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 6a84982e3..de4040e96 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-23 +leanprover/lean4:nightly-2026-01-24 From e079c314480a9212e0f770d513dc1b00e1d222c6 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Tue, 27 Jan 2026 18:11:28 +1100 Subject: [PATCH 134/253] chore: update bump branch to use nightly-2026-01-26 --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index 4bafde205..5df66edef 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.28.0-rc1 +leanprover/lean4:nightly-2026-01-26 From 36b466bfc714ce203e3e419b4eb165ed7cf08af9 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Tue, 27 Jan 2026 13:20:04 +0000 Subject: [PATCH 135/253] chore: bump to nightly-2026-01-27 with mathlib at nightly-testing-2026-01-27 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 0c30fd10b..3eb2bea14 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cb392c137f92523b6c137ee117b3ee1a2c245230", + "rev": "580d15da0f736f4db6eb7d7b6266f02e524d99f7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-24", + "inputRev": "nightly-testing-2026-01-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "206b8738806d1e144c288946ff5153b403f44ded", + "rev": "d80e56cb1d86ddcd69c6cc321a231ac323d1fa30", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "3f209e9f386e8f4eabd6eb46b6e627ad7cb130f1", + "rev": "1c96d491446c18889ea0537727a5919f2b6307a1", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 8e3e98775..dd2028339 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-24" +rev = "nightly-testing-2026-01-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index de4040e96..ddec1be1d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-24 +leanprover/lean4:nightly-2026-01-27 From f5c0726e9306041d98a1171ea1cf9b88b4c56384 Mon Sep 17 00:00:00 2001 From: mathlib4-bot Date: Tue, 27 Jan 2026 13:29:13 +0000 Subject: [PATCH 136/253] chore: adaptations for nightly-2026-01-27 From 0d02894dd0d17bd892710a76a489dfa122e87ddf Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Tue, 27 Jan 2026 08:37:08 -0500 Subject: [PATCH 137/253] chore: adaptations for nightly-2026-01-27 (#298) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 40 ++++++++++++++++++++-------------------- lakefile.toml | 4 ++-- lean-toolchain | 2 +- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 45267c4b0..3eb2bea14 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,94 +1,94 @@ {"version": "1.1.0", "packagesDir": ".lake/packages", "packages": - [{"url": "https://github.com/leanprover-community/mathlib4", + [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "5352afccd6866369be9de43f5b7ec47203555f44", + "scope": "", + "rev": "580d15da0f736f4db6eb7d7b6266f02e524d99f7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "v4.28.0-rc1", + "inputRev": "nightly-testing-2026-01-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7311586e1a56af887b1081d05e80c11b6c41d212", + "rev": "ca46151b876597b20728bd65794928efda180d13", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5ce7f0a355f522a952a3d678d696bd563bb4fd28", + "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "875ad9d88ed684e39c16bdea260e6ecfa15afd60", + "rev": "25b1494bbf3663d3418ef81918af8ec3b000cf54", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "6d65c6e0a25b8a52c13c3adeb63ecde3bfbb6294", + "rev": "c04225ee7c0585effbd933662b3151f01b600e40", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.86", + "inputRev": "v0.0.85", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f08e838d4f9aea519f3cde06260cfb686fd4bab0", + "rev": "d80e56cb1d86ddcd69c6cc321a231ac323d1fa30", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "23324752757bf28124a518ec284044c8db79fee5", + "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "cabbb5a025bfbbc50af9184ed2dfdde6ea4f53a7", + "rev": "1c96d491446c18889ea0537727a5919f2b6307a1", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "28e0856d4424863a85b18f38868c5420c55f9bae", + "rev": "d9fc8ae23024be37424a189982c92356e37935c8", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.28.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 0bfbc2e3d..dd2028339 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,8 +15,8 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" -scope = "leanprover-community" -rev = "v4.28.0-rc1" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2026-01-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 5df66edef..ddec1be1d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-26 +leanprover/lean4:nightly-2026-01-27 From 21bf1a697a7a94c8aa5a90038844d7f937edcd38 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Wed, 28 Jan 2026 13:17:26 +0000 Subject: [PATCH 138/253] chore: bump to nightly-2026-01-28 with mathlib at nightly-testing-2026-01-28 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 3eb2bea14..52f027c9b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "580d15da0f736f4db6eb7d7b6266f02e524d99f7", + "rev": "e0bf30b6db69147b85c07859c756d68a991e5f13", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-27", + "inputRev": "nightly-testing-2026-01-28", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c04225ee7c0585effbd933662b3151f01b600e40", + "rev": "6d65c6e0a25b8a52c13c3adeb63ecde3bfbb6294", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.85", + "inputRev": "v0.0.86", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1c96d491446c18889ea0537727a5919f2b6307a1", + "rev": "db33a0238d18dc67cadd81b3fdac53f82b950bb6", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index dd2028339..a6ae20596 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-27" +rev = "nightly-testing-2026-01-28" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ddec1be1d..33223b1e9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-27 +leanprover/lean4:nightly-2026-01-28 From 778a971551826c7cb5df188d1ece5782653946a4 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Wed, 28 Jan 2026 20:40:27 -0500 Subject: [PATCH 139/253] one of the grind failures --- Cslib/Computability/Automata/NA/Loop.lean | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index 26fb94b1a..b86e49dbc 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -142,7 +142,10 @@ theorem loop_run_exists [Inhabited Symbol] {xls : ωSequence (List Symbol)} have h2 : segment segs.cumLen (n + 1) = segment segs.cumLen n + 1 := by simp [← h1, segment_idem h_mono] simp [h1, h2, h_seg0] - grind + #adaptation_note + /-- This squeeze was required moving to nightly-2026-01-28 -/ + grind only [= cumLen_succ, = getElem?_pos, = get_fun, = List.length_take, + = List.getElem?_take, = min_def, = Option.getD_some] · simp [h_len, flatten_def, segment_idem h_mono, h_seg0] namespace Buchi From 62ef5297712f3f15f59441cc215b7c2b68cfa246 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Wed, 28 Jan 2026 21:04:26 -0500 Subject: [PATCH 140/253] another grind failure --- Cslib/Computability/Automata/NA/Loop.lean | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index b86e49dbc..18a48e838 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -92,6 +92,7 @@ theorem loop_run_one_iter {xs : ωSequence Symbol} {ss : ωSequence (Unit ⊕ St exact neq.imp (congrArg List.length) · grind [loop_run_from_left] +open List in /-- For any finite word in `language na`, there is a corresponding finite run of `na.loop`. -/ theorem loop_fin_run_exists {xl : List Symbol} (h : xl ∈ language na) : ∃ sl : List (Unit ⊕ State), ∃ _ : sl.length = xl.length + 1, @@ -103,7 +104,11 @@ theorem loop_fin_run_exists {xl : List Symbol} (h : xl ∈ language na) : · use [inl ()] grind · use [inl ()] ++ (sl.extract 1 xl.length).map inr ++ [inl ()] - grind [FinAcc.loop, → LTS.tr_setImage] + #adaptation_note + /-- This squeeze was required moving to nightly-2026-01-28 -/ + grind only [= length_append, = length_cons, = length_nil, = length_map, = List.length_take, + = length_drop, = min_def, = getElem_append, = getElem_cons, = List.take_zero, FinAcc.loop, + = map_nil, = getElem_map, = getElem_take, = getElem_drop] /-- For any finite word in `language na`, there is a corresponding multistep transition of `na.loop`. -/ From 3331536bbb447614e987e349d9d4e62b8a6df57f Mon Sep 17 00:00:00 2001 From: Chris Henson <46805207+chenson2018@users.noreply.github.com> Date: Wed, 28 Jan 2026 22:11:59 -0500 Subject: [PATCH 141/253] chore: adaptations for nightly-2026-01-28 (#301) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- Cslib/Computability/Automata/NA/Loop.lean | 12 ++++++++++-- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index 26fb94b1a..18a48e838 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -92,6 +92,7 @@ theorem loop_run_one_iter {xs : ωSequence Symbol} {ss : ωSequence (Unit ⊕ St exact neq.imp (congrArg List.length) · grind [loop_run_from_left] +open List in /-- For any finite word in `language na`, there is a corresponding finite run of `na.loop`. -/ theorem loop_fin_run_exists {xl : List Symbol} (h : xl ∈ language na) : ∃ sl : List (Unit ⊕ State), ∃ _ : sl.length = xl.length + 1, @@ -103,7 +104,11 @@ theorem loop_fin_run_exists {xl : List Symbol} (h : xl ∈ language na) : · use [inl ()] grind · use [inl ()] ++ (sl.extract 1 xl.length).map inr ++ [inl ()] - grind [FinAcc.loop, → LTS.tr_setImage] + #adaptation_note + /-- This squeeze was required moving to nightly-2026-01-28 -/ + grind only [= length_append, = length_cons, = length_nil, = length_map, = List.length_take, + = length_drop, = min_def, = getElem_append, = getElem_cons, = List.take_zero, FinAcc.loop, + = map_nil, = getElem_map, = getElem_take, = getElem_drop] /-- For any finite word in `language na`, there is a corresponding multistep transition of `na.loop`. -/ @@ -142,7 +147,10 @@ theorem loop_run_exists [Inhabited Symbol] {xls : ωSequence (List Symbol)} have h2 : segment segs.cumLen (n + 1) = segment segs.cumLen n + 1 := by simp [← h1, segment_idem h_mono] simp [h1, h2, h_seg0] - grind + #adaptation_note + /-- This squeeze was required moving to nightly-2026-01-28 -/ + grind only [= cumLen_succ, = getElem?_pos, = get_fun, = List.length_take, + = List.getElem?_take, = min_def, = Option.getD_some] · simp [h_len, flatten_def, segment_idem h_mono, h_seg0] namespace Buchi diff --git a/lake-manifest.json b/lake-manifest.json index 3eb2bea14..52f027c9b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "580d15da0f736f4db6eb7d7b6266f02e524d99f7", + "rev": "e0bf30b6db69147b85c07859c756d68a991e5f13", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-27", + "inputRev": "nightly-testing-2026-01-28", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c04225ee7c0585effbd933662b3151f01b600e40", + "rev": "6d65c6e0a25b8a52c13c3adeb63ecde3bfbb6294", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.85", + "inputRev": "v0.0.86", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1c96d491446c18889ea0537727a5919f2b6307a1", + "rev": "db33a0238d18dc67cadd81b3fdac53f82b950bb6", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index dd2028339..a6ae20596 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-27" +rev = "nightly-testing-2026-01-28" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ddec1be1d..33223b1e9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-27 +leanprover/lean4:nightly-2026-01-28 From 1f95e11986f04f916b4655cf3e0ce0105851523e Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Fri, 30 Jan 2026 13:22:36 +0000 Subject: [PATCH 142/253] chore: bump to nightly-2026-01-30 with mathlib at nightly-testing-2026-01-30 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 52f027c9b..064c1a4d9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e0bf30b6db69147b85c07859c756d68a991e5f13", + "rev": "9a9627db3da33a07336b8eb4601279790a39acc3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-28", + "inputRev": "nightly-testing-2026-01-30", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "d80e56cb1d86ddcd69c6cc321a231ac323d1fa30", + "rev": "9dddcac0db0bedff8bbe88daf0a39c839613302c", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "db33a0238d18dc67cadd81b3fdac53f82b950bb6", + "rev": "c955e3f7207bdda9c69cb208fba386e95ec7f39c", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index a6ae20596..e19136cb7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-28" +rev = "nightly-testing-2026-01-30" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 33223b1e9..5dd28b59c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-28 +leanprover/lean4:nightly-2026-01-30 From fc3b93dffc1326f5f60a1ae4faaf1b6c39c58e35 Mon Sep 17 00:00:00 2001 From: Alexandre Rademaker Date: Fri, 30 Jan 2026 17:54:39 +0100 Subject: [PATCH 143/253] feat: add linear logic tests/benchmark (#302) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For all logics that are likely to be implemented, it would be interesting to have a test suite that not only demonstrates how the definitions of syntax and semantics work, but also serves a didactic purpose through concrete instantiations of the logic. In this PR, I suggest some initial tests for the linear logic already implemented in CSLib. In addition to tests for syntax and trivial equivalences, I present a proof of a linear logic theorem that I picked at random from https://arxiv.org/abs/1904.06850. From this PR onward, we can think about more systematic methods for constructing proof benchmarks. ``` @article{Olarte_2019, title={The ILLTP Library for Intuitionistic Linear Logic}, volume={292}, ISSN={2075-2180}, url={http://dx.doi.org/10.4204/EPTCS.292.7}, DOI={10.4204/eptcs.292.7}, journal={Electronic Proceedings in Theoretical Computer Science}, publisher={Open Publishing Association}, author={Olarte, Carlos and de Paiva, Valeria and Pimentel, Elaine and Reis, Giselle}, year={2019}, month=apr, pages={118–132}} ``` --- CslibTests.lean | 1 + CslibTests/CLL.lean | 218 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 219 insertions(+) create mode 100644 CslibTests/CLL.lean diff --git a/CslibTests.lean b/CslibTests.lean index 2e4434610..47740f10e 100644 --- a/CslibTests.lean +++ b/CslibTests.lean @@ -2,6 +2,7 @@ module -- shake: keep-all public import CslibTests.Bisimulation public import CslibTests.CCS +public import CslibTests.CLL public import CslibTests.DFA public import CslibTests.FreeMonad public import CslibTests.GrindLint diff --git a/CslibTests/CLL.lean b/CslibTests/CLL.lean new file mode 100644 index 000000000..4864a9299 --- /dev/null +++ b/CslibTests/CLL.lean @@ -0,0 +1,218 @@ +/- +Copyright (c) 2025 Alexandre Rademaker. All rights reserved. +Released under Apache 2.0 license as described in the file LICENSE. +Authors: Alexandre Rademaker +-/ + +import Cslib.Logics.LinearLogic.CLL.Basic + +namespace CslibTests + +/-! # Tests for Classical Linear Logic + +I use `Proposition Nat` as the concrete instantiation for atoms. +-/ + +open Cslib.CLL + +/-! ## Proposition construction tests -/ + +-- Define some atomic propositions for testing +abbrev P := Proposition Nat + +def a : P := .atom 0 +def a' : P := .atomDual 0 +def b : P := .atom 1 +def c : P := .atom 2 + +-- Test that notations work correctly +example : P := a ⊗ b -- tensor +example : P := a ⅋ b -- parr +example : P := a ⊕ b -- oplus +example : P := a & b -- with +example : P := !a -- bang +example : P := ʔa -- quest +example : P := (1 : P) -- one +example : P := (0 : P) -- zero +example : P := (⊤ : P) -- top +example : P := (⊥ : P) -- bot +example : P := a ⊸ b -- linear implication + +-- Test nested propositions +example : P := (a ⊗ b) ⅋ c +example : P := !(a ⊗ b) +example : P := a ⊕ (b & c) + +/-! ## Duality tests -/ + +-- dual_involution: a⫠⫠ = a +example : (a⫠⫠ : P) = a := Proposition.dual_involution a +example : (a ⊗ b)⫠⫠ = (a ⊗ b : P) := Proposition.dual_involution (a ⊗ b) +example : (!a)⫠⫠ = (!a : P) := Proposition.dual_involution (!a) + +-- Dual of specific propositions +example : (a⫠ : P) = a' := rfl +example : ((1 : P)⫠) = ⊥ := rfl +example : ((0 : P)⫠) = ⊤ := rfl +example : (a ⊗ b)⫠ = (a⫠ ⅋ b⫠ : P) := rfl +example : (a ⅋ b)⫠ = (a⫠ ⊗ b⫠ : P) := rfl +example : (a ⊕ b)⫠ = (a⫠ & b⫠ : P) := rfl +example : (a & b)⫠ = (a⫠ ⊕ b⫠ : P) := rfl +example : (!a)⫠ = (ʔ(a⫠) : P) := rfl +example : (ʔa)⫠ = (!(a⫠) : P) := rfl + +-- dual_neq: no proposition equals its dual +example : a ≠ a⫠ := Proposition.dual_neq a +example : (1 : P) ≠ (1 : P)⫠ := Proposition.dual_neq 1 + +-- dual_inj: duality is injective +example : (a⫠ = b⫠) ↔ (a = b) := Proposition.dual_inj a b + + +/-! ## Basic proof tests -/ + +-- Axiom: ⊢ a, a⫠ +example : ⇓({a, a⫠} : Sequent Nat) := Proof.ax +example : ⇓({a⫠, a} : Sequent Nat) := Proof.ax' + +-- One: ⊢ 1 +example : ⇓({1} : Sequent Nat) := Proof.one + +-- Top: ⊢ ⊤, Γ +example : ⇓({⊤} : Sequent Nat) := Proof.top +example : ⇓(⊤ ::ₘ {a} : Sequent Nat) := Proof.top + +-- Bot: from ⊢ Γ derive ⊢ ⊥, Γ +example : ⇓(⊥ ::ₘ {1} : Sequent Nat) := Proof.bot Proof.one + +-- Parr: from ⊢ a, b, Γ derive ⊢ a ⅋ b, Γ +example : ⇓({a ⅋ a⫠} : Sequent Nat) := Proof.parr Proof.ax + +-- Tensor: from ⊢ a, Γ and ⊢ b, Δ derive ⊢ a ⊗ b, Γ, Δ +example : ⇓({a ⊗ b, a⫠, b⫠} : Sequent Nat) := Proof.tensor Proof.ax Proof.ax + +-- Oplus: from ⊢ a, Γ derive ⊢ a ⊕ b, Γ +example : ⇓({a ⊕ b, a⫠} : Sequent Nat) := Proof.oplus₁ Proof.ax +example : ⇓({a ⊕ b, b⫠} : Sequent Nat) := Proof.oplus₂ Proof.ax + +-- With: from ⊢ a, Γ and ⊢ b, Γ derive ⊢ a & b, Γ +example : ⇓({a & a, a⫠} : Sequent Nat) := Proof.with Proof.ax Proof.ax + +-- Quest: from ⊢ a, Γ derive ⊢ ʔa, Γ +example : ⇓({ʔa, a⫠} : Sequent Nat) := Proof.quest Proof.ax + +-- Weaken: from ⊢ Γ derive ⊢ ʔa, Γ +example : ⇓({ʔa, 1} : Sequent Nat) := Proof.weaken Proof.one + + +/-! ## Logical equivalence tests (proof-irrelevant) -/ + +-- Reflexivity +example : (a : P) ≡ a := Proposition.Equiv.refl a + +-- Symmetry +example (h : (a : P) ≡ b) : b ≡ a := Proposition.Equiv.symm h + +-- Transitivity +example (hab : (a : P) ≡ b) (hbc : b ≡ c) : a ≡ c := Proposition.Equiv.trans hab hbc + +-- Coercion from proof-relevant to proof-irrelevant (via .toProp) +example : (!⊤ : P) ≡ 1 := Proposition.bang_top_eqv_one.toProp +example : (ʔ0 : P) ≡ ⊥ := Proposition.quest_zero_eqv_bot.toProp +example : (a ⊗ 0 : P) ≡ 0 := (Proposition.tensor_zero_eqv_zero a).toProp +example : (a ⅋ ⊤ : P) ≡ ⊤ := (Proposition.parr_top_eqv_top a).toProp +example : (a ⊗ b : P) ≡ b ⊗ a := Proposition.tensor_symm.toProp +example : (a ⊗ (b ⊗ c) : P) ≡ (a ⊗ b) ⊗ c := Proposition.tensor_assoc.toProp +example : (a ⊗ (b ⊕ c) : P) ≡ (a ⊗ b) ⊕ (a ⊗ c) := (Proposition.tensor_distrib_oplus a b c).toProp +example : (a ⊕ a : P) ≡ a := Proposition.oplus_idem.toProp +example : (a & a : P) ≡ a := Proposition.with_idem.toProp + + +/-! ## Proof-relevant equivalence tests -/ + +-- equiv.refl +example : (a : P) ≡⇓ a := Proposition.equiv.refl a + +-- equiv.symm +example (h : (a : P) ≡⇓ b) : b ≡⇓ a := Proposition.equiv.symm a h + +-- equiv.trans +example (hab : (a : P) ≡⇓ b) (hbc : (b : P) ≡⇓ c) : a ≡⇓ c := Proposition.equiv.trans hab hbc + +-- Proof-relevant versions of logical equivalences +example : (!⊤ : P) ≡⇓ 1 := Proposition.bang_top_eqv_one +example : (ʔ0 : P) ≡⇓ ⊥ := Proposition.quest_zero_eqv_bot +example : (a ⊗ b : P) ≡⇓ b ⊗ a := Proposition.tensor_symm +example : (a ⊗ (b ⊗ c) : P) ≡⇓ (a ⊗ b) ⊗ c := Proposition.tensor_assoc +example : (a ⊕ a : P) ≡⇓ a := Proposition.oplus_idem +example : (a & a : P) ≡⇓ a := Proposition.with_idem + + +/-! ## Inversion tests -/ + +-- parr_inversion +example (h : ⇓({a ⅋ b} : Sequent Nat)) : ⇓({a, b} : Sequent Nat) := Proof.parr_inversion h + +-- bot_inversion +example (h : ⇓({⊥, 1} : Sequent Nat)) : ⇓({1} : Sequent Nat) := Proof.bot_inversion h + +-- with_inversion +example (h : ⇓({a & b} : Sequent Nat)) : ⇓({a} : Sequent Nat) := Proof.with_inversion₁ h +example (h : ⇓({a & b} : Sequent Nat)) : ⇓({b} : Sequent Nat) := Proof.with_inversion₂ h + + +/-! ## Positive/Negative classification tests -/ + +-- Positive propositions +example : Proposition.positive a = true := rfl +example : Proposition.positive (1 : P) = true := rfl +example : Proposition.positive (0 : P) = true := rfl +example : Proposition.positive (a ⊗ b) = true := rfl +example : Proposition.positive (a ⊕ b) = true := rfl +example : Proposition.positive (!a) = true := rfl + +-- Negative propositions +example : Proposition.negative (Proposition.atomDual 0 : P) = true := rfl +example : Proposition.negative (⊥ : P) = true := rfl +example : Proposition.negative (⊤ : P) = true := rfl +example : Proposition.negative (a ⅋ b) = true := rfl +example : Proposition.negative (a & b) = true := rfl +example : Proposition.negative (ʔa) = true := rfl + + +/-! ## linear logic proofs tests -/ + +/-- Example 37 Figure 5 from https://arxiv.org/abs/1904.06850 + +B ⊢ (!(A ⊸ B) ⊸ B) ⊗ (B ⊸ (!A ⊸ B)) + +This translates to the sequent: + +⊢ B⫠, (!(A ⊸ B) ⊸ B) ⊗ (B ⊸ (!A ⊸ B)) + +Breaking down the formula: + + A ⊸ B = A⫠ ⅋ B (linear implication) + !(A ⊸ B) = !(A⫠ ⅋ B) + (!(A ⊸ B))⫠ = ʔ((A⫠ ⅋ B)⫠) = ʔ(A ⊗ B⫠) + !(A ⊸ B) ⊸ B = (!(A ⊸ B))⫠ ⅋ B = ʔ(A ⊗ B⫠) ⅋ B + !A ⊸ B = (!A)⫠ ⅋ B = ʔA⫠ ⅋ B + B ⊸ (!A ⊸ B) = B⫠ ⅋ (ʔA⫠ ⅋ B) +-/ +example : ⇓({b⫠, (!(a ⊸ b) ⊸ b) ⊗ (b ⊸ (!a ⊸ b))} : Sequent Nat) := by + apply Proof.rwConclusion (Multiset.pair_comm ..) + -- tensor rule, We need Γ + Δ = {b⫠}, so Γ = {b⫠} and Δ = {} + apply Proof.tensor (Γ := {b⫠}) (Δ := {}) + · -- !(a ⊸ b) ⊸ b = ʔ(a ⊗ b⫠) ⅋ b + apply Proof.parr -- Apply parr to get: ⊢ ʔ(a ⊗ b⫠), b, b⫠ + apply Proof.weaken + apply Proof.ax + · -- b ⊸ (!a ⊸ b) = b⫠ ⅋ (ʔa⫠ ⅋ b) + apply Proof.parr -- Apply parr to get: ⊢ b⫠, ʔa⫠ ⅋ b + apply Proof.rwConclusion (Multiset.pair_comm ..) + apply Proof.parr -- Apply parr to get: ⊢ b⫠, ʔa⫠, b + apply Proof.weaken + exact Proof.ax + + +end CslibTests From 473375cd086ab5802d6d215334a21dc20fc8fbf1 Mon Sep 17 00:00:00 2001 From: Chris Henson <46805207+chenson2018@users.noreply.github.com> Date: Fri, 30 Jan 2026 11:56:06 -0500 Subject: [PATCH 144/253] chore: simplify the connection between `HasFresh` and `Infinite` (#303) This PR adds an instance directly showing that `HasFresh` implies `Infinite`. This replaces `HasFresh.not_of_finite` which triggered a linter and is now equivalent to just `not_finite`. `HasFresh.of_infinite` is also changed to an instance with a slightly more direct definition. --- Cslib/Foundations/Data/HasFresh.lean | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Cslib/Foundations/Data/HasFresh.lean b/Cslib/Foundations/Data/HasFresh.lean index d4aa4aae7..c49b340b7 100644 --- a/Cslib/Foundations/Data/HasFresh.lean +++ b/Cslib/Foundations/Data/HasFresh.lean @@ -132,15 +132,17 @@ end export HasFresh (fresh fresh_notMem fresh_exists) -set_option linter.unusedFintypeInType false in -lemma HasFresh.not_of_finite (α : Type u) [Fintype α] : IsEmpty (HasFresh α) := - ⟨fun f ↦ (f.fresh_notMem .univ).elim (Finset.mem_univ _)⟩ +/-- `HasFresh α` implies a computably infinite type. -/ +instance HasFresh.to_infinite (α : Type u) [HasFresh α] : Infinite α := by + apply Infinite.of_not_fintype + rintro ⟨elems, _⟩ + grind [fresh_notMem elems] /-- All infinite types have an associated (at least noncomputable) fresh function. -This, in conjunction with `HasFresh.not_of_finite`, characterizes `HasFresh`. -/ -noncomputable def HasFresh.of_infinite (α : Type u) [Infinite α] : HasFresh α where - fresh s := s.finite_toSet.infinite_compl.nonempty.choose - fresh_notMem s := s.finite_toSet.infinite_compl.nonempty.choose_spec +This, in conjunction with `HasFresh.to_infinite`, characterizes `HasFresh`. -/ +noncomputable instance HasFresh.of_infinite (α : Type u) [Infinite α] : HasFresh α where + fresh s := Infinite.exists_notMem_finset s |>.choose + fresh_notMem s := by grind open Finset in /-- Construct a fresh element from an embedding of `ℕ` using `Nat.find`. -/ From 1e33a0816a604fbba26e6074574484bd6bdcfda9 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 30 Jan 2026 13:09:11 -0500 Subject: [PATCH 145/253] one adaptation note fixed by main --- Cslib/Computability/Automata/NA/Loop.lean | 33 +++++------------------ 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index 18a48e838..61dcd854a 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -125,33 +125,12 @@ the state `()` marks the boundaries between the finite words in `xls`. -/ theorem loop_run_exists [Inhabited Symbol] {xls : ωSequence (List Symbol)} (h : ∀ k, (xls k) ∈ language na - 1) : ∃ ss, na.loop.Run xls.flatten ss ∧ ∀ k, ss (xls.cumLen k) = inl () := by - have : Inhabited State := by - choose s0 _ using (h 0).left - exact { default := s0 } - choose sls h_sls using fun k ↦ loop_fin_run_exists <| (h k).left - let segs := ωSequence.mk fun k ↦ (sls k).take (xls k).length - have h_len : xls.cumLen = segs.cumLen := by ext k; induction k <;> grind - have h_pos (k : ℕ) : (segs k).length > 0 := by grind [List.eq_nil_iff_length_eq_zero] - have h_mono := cumLen_strictMono h_pos - have h_zero := cumLen_zero (ls := segs) - have h_seg0 (k : ℕ) : (segs k)[0]! = inl () := by grind - refine ⟨segs.flatten, Run.mk ?_ ?_, ?_⟩ - · simp [h_seg0, flatten_def, FinAcc.loop] - · intro n - simp only [h_len, flatten_def] - have := segment_lower_bound h_mono h_zero n - by_cases h_n : n + 1 < segs.cumLen (segment segs.cumLen n + 1) - · grind [segment_range_val h_mono (by grind) h_n] - · have h1 : segs.cumLen (segment segs.cumLen n + 1) = n + 1 := by - grind [segment_upper_bound h_mono h_zero n] - have h2 : segment segs.cumLen (n + 1) = segment segs.cumLen n + 1 := by - simp [← h1, segment_idem h_mono] - simp [h1, h2, h_seg0] - #adaptation_note - /-- This squeeze was required moving to nightly-2026-01-28 -/ - grind only [= cumLen_succ, = getElem?_pos, = get_fun, = List.length_take, - = List.getElem?_take, = min_def, = Option.getD_some] - · simp [h_len, flatten_def, segment_idem h_mono, h_seg0] + let ts := ωSequence.const (inl () : Unit ⊕ State) + have h_mtr (k : ℕ) : na.loop.MTr (ts k) (xls k) (ts (k + 1)) := by grind [loop_fin_run_mtr] + have h_pos (k : ℕ) : (xls k).length > 0 := by grind + obtain ⟨ss, _, _⟩ := LTS.ωTr.flatten h_mtr h_pos + use ss + grind [Run.mk, FinAcc.loop, cumLen_zero (ls := xls)] namespace Buchi From 024127147f45f90b7499a825cc2e7fa918649c91 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Fri, 30 Jan 2026 13:29:28 -0500 Subject: [PATCH 146/253] chore: adaptations for nightly-2026-01-30 (#307) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 52f027c9b..064c1a4d9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "e0bf30b6db69147b85c07859c756d68a991e5f13", + "rev": "9a9627db3da33a07336b8eb4601279790a39acc3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-28", + "inputRev": "nightly-testing-2026-01-30", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "d80e56cb1d86ddcd69c6cc321a231ac323d1fa30", + "rev": "9dddcac0db0bedff8bbe88daf0a39c839613302c", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "db33a0238d18dc67cadd81b3fdac53f82b950bb6", + "rev": "c955e3f7207bdda9c69cb208fba386e95ec7f39c", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index a6ae20596..e19136cb7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-28" +rev = "nightly-testing-2026-01-30" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 33223b1e9..5dd28b59c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-28 +leanprover/lean4:nightly-2026-01-30 From e74578e9ffb5c2afae5aed8c6efa2c2897e0704a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Sat, 31 Jan 2026 22:01:59 +0000 Subject: [PATCH 147/253] chore: bump to nightly-2026-01-31 with mathlib at nightly-testing-2026-01-31 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 064c1a4d9..1a09693c3 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9a9627db3da33a07336b8eb4601279790a39acc3", + "rev": "a4ea915119d17bf47e9e43d27e163ad5ce9ec4d3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-30", + "inputRev": "nightly-testing-2026-01-31", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c955e3f7207bdda9c69cb208fba386e95ec7f39c", + "rev": "9fae711bbe5f3c20d78f54204c3c6e6b37cbb37d", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e19136cb7..03b0ff8f2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-30" +rev = "nightly-testing-2026-01-31" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 5dd28b59c..61d177605 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-30 +leanprover/lean4:nightly-2026-01-31 From f9fa00abee6b5cc92360723746ebfe6649264e0a Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Sat, 31 Jan 2026 17:22:15 -0500 Subject: [PATCH 148/253] chore: adaptations for nightly-2026-01-31 (#309) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 064c1a4d9..1a09693c3 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9a9627db3da33a07336b8eb4601279790a39acc3", + "rev": "a4ea915119d17bf47e9e43d27e163ad5ce9ec4d3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-30", + "inputRev": "nightly-testing-2026-01-31", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c955e3f7207bdda9c69cb208fba386e95ec7f39c", + "rev": "9fae711bbe5f3c20d78f54204c3c6e6b37cbb37d", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e19136cb7..03b0ff8f2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-30" +rev = "nightly-testing-2026-01-31" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 5dd28b59c..61d177605 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-30 +leanprover/lean4:nightly-2026-01-31 From d97ce93e294eb5578ec9151238a356d53b91d6a7 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot Date: Mon, 2 Feb 2026 13:24:47 +0000 Subject: [PATCH 149/253] chore: bump to nightly-2026-02-02 with mathlib at nightly-testing-2026-02-02 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1a09693c3..9f9df110f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a4ea915119d17bf47e9e43d27e163ad5ce9ec4d3", + "rev": "390c30bffcb2ad54f411853020617b8f99e2dd0f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-31", + "inputRev": "nightly-testing-2026-02-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ca46151b876597b20728bd65794928efda180d13", + "rev": "def0c628f155ea883ec84293df09d906eebbf363", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "25b1494bbf3663d3418ef81918af8ec3b000cf54", + "rev": "9b261819fd5d669220cb6694d62ead0dfca1fb9d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9fae711bbe5f3c20d78f54204c3c6e6b37cbb37d", + "rev": "593b0ee5e468f94e284084b109332932d70f2eb8", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 03b0ff8f2..76dcce6e6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-31" +rev = "nightly-testing-2026-02-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 61d177605..2a2dbb70f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-31 +leanprover/lean4:nightly-2026-02-02 From 8b9eb9cc8f70d1c10ca0143ad1fef9051301da57 Mon Sep 17 00:00:00 2001 From: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Date: Tue, 3 Feb 2026 14:03:15 -0500 Subject: [PATCH 150/253] chore: adaptations for nightly-2026-02-02 (#315) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1a09693c3..9f9df110f 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a4ea915119d17bf47e9e43d27e163ad5ce9ec4d3", + "rev": "390c30bffcb2ad54f411853020617b8f99e2dd0f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-01-31", + "inputRev": "nightly-testing-2026-02-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ca46151b876597b20728bd65794928efda180d13", + "rev": "def0c628f155ea883ec84293df09d906eebbf363", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "25b1494bbf3663d3418ef81918af8ec3b000cf54", + "rev": "9b261819fd5d669220cb6694d62ead0dfca1fb9d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9fae711bbe5f3c20d78f54204c3c6e6b37cbb37d", + "rev": "593b0ee5e468f94e284084b109332932d70f2eb8", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 03b0ff8f2..76dcce6e6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-01-31" +rev = "nightly-testing-2026-02-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 61d177605..2a2dbb70f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-01-31 +leanprover/lean4:nightly-2026-02-02 From a0ac7ff51a26043c62663cc4f504b6e7bbdfec93 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 6 Feb 2026 05:15:53 +0000 Subject: [PATCH 151/253] chore: bump to nightly-2026-02-05 with mathlib at nightly-testing-2026-02-05 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 9f9df110f..1fc6a8f68 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "390c30bffcb2ad54f411853020617b8f99e2dd0f", + "rev": "20c4c4b3d8a0ec5aabc72aa3d247f2838d829759", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-02", + "inputRev": "nightly-testing-2026-02-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "def0c628f155ea883ec84293df09d906eebbf363", + "rev": "0498c368a58d22f723580e062afa488ac59b6d63", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "593b0ee5e468f94e284084b109332932d70f2eb8", + "rev": "5b13733e0c37e465bfe26ae6615b2c841acba215", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 76dcce6e6..e69ae68b7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-02" +rev = "nightly-testing-2026-02-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2a2dbb70f..28b0642b9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-02 +leanprover/lean4:nightly-2026-02-05 From db264ae4f597f9990db067726ecdb5c3652c9bb4 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 6 Feb 2026 00:33:12 -0500 Subject: [PATCH 152/253] use Lean.Meta.Instances --- Cslib/Foundations/Lint/Basic.lean | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index f9d52be65..433ce2b90 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -7,7 +7,7 @@ Authors: Chris Henson module public import Batteries.Tactic.Lint.Basic -public meta import Lean.Meta.GlobalInstances +public meta import Lean.Meta.Instances namespace Cslib.Lint @@ -21,7 +21,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where test declName := do if ← isAutoDecl declName then return none let env ← getEnv - if isGlobalInstance env declName then return none + if ← isInstanceReducible declName then return none let nss := env.getNamespaceSet let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with From 4e3ecf77a08bb7e9e115480013b8a9845a71323e Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 6 Feb 2026 00:44:54 -0500 Subject: [PATCH 153/253] simp +instances --- Cslib/Computability/Automata/DA/Buchi.lean | 2 +- Cslib/Computability/Automata/NA/Pair.lean | 5 ++--- Cslib/Computability/Automata/NA/Total.lean | 2 +- Cslib/Computability/Languages/OmegaRegularLanguage.lean | 6 +++--- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/Cslib/Computability/Automata/DA/Buchi.lean b/Cslib/Computability/Automata/DA/Buchi.lean index f793154cf..346cfd267 100644 --- a/Cslib/Computability/Automata/DA/Buchi.lean +++ b/Cslib/Computability/Automata/DA/Buchi.lean @@ -29,6 +29,6 @@ of the language accepted by the same automaton. theorem buchi_eq_finAcc_omegaLim {da : DA State Symbol} {acc : Set State} : language (Buchi.mk da acc) = (language (FinAcc.mk da acc))↗ω := by ext xs - simp + simp +instances end Cslib.Automata.DA diff --git a/Cslib/Computability/Automata/NA/Pair.lean b/Cslib/Computability/Automata/NA/Pair.lean index a2d4ba774..432e75789 100644 --- a/Cslib/Computability/Automata/NA/Pair.lean +++ b/Cslib/Computability/Automata/NA/Pair.lean @@ -35,7 +35,7 @@ theorem LTS.pairLang_regular [Finite State] {lts : LTS State Symbol} {s t : Stat rw [IsRegular.iff_nfa] use State, inferInstance, (NA.FinAcc.mk ⟨lts, {s}⟩ {t}) ext - simp + simp +instances namespace Automata.NA.Buchi @@ -47,8 +47,7 @@ theorem language_eq_fin_iSup_hmul_omegaPow [Inhabited Symbol] [Finite State] (na : Buchi State Symbol) : language na = ⨆ s ∈ na.start, ⨆ t ∈ na.accept, (na.pairLang s t) * (na.pairLang t t)^ω := by ext xs - simp only [Buchi.instωAcceptor, ωAcceptor.mem_language, - ωLanguage.mem_iSup, ωLanguage.mem_hmul, LTS.mem_pairLang] + simp only [ωAcceptor.mem_language, ωLanguage.mem_iSup, ωLanguage.mem_hmul, LTS.mem_pairLang] constructor · rintro ⟨ss, h_run, h_inf⟩ obtain ⟨t, h_acc, h_t⟩ := frequently_in_finite_type.mp h_inf diff --git a/Cslib/Computability/Automata/NA/Total.lean b/Cslib/Computability/Automata/NA/Total.lean index d6207ef50..3462a82bc 100644 --- a/Cslib/Computability/Automata/NA/Total.lean +++ b/Cslib/Computability/Automata/NA/Total.lean @@ -54,7 +54,7 @@ as long as the accepting states are also lifted in the obvious way. -/ theorem totalize_language_eq {na : FinAcc State Symbol} : language (FinAcc.mk na.totalize (inl '' na.accept)) = language na := by ext xl - simp [totalize] + simp +instances [totalize] end FinAcc diff --git a/Cslib/Computability/Languages/OmegaRegularLanguage.lean b/Cslib/Computability/Languages/OmegaRegularLanguage.lean index 6dab30161..31a34adc7 100644 --- a/Cslib/Computability/Languages/OmegaRegularLanguage.lean +++ b/Cslib/Computability/Languages/OmegaRegularLanguage.lean @@ -85,7 +85,7 @@ theorem IsRegular.bot : (⊥ : ωLanguage Symbol).IsRegular := by accept := ∅ } use Unit, inferInstance, na ext xs - simp [na] + simp +instances [na] /-- The language of all ω-sequences is ω-regular. -/ @[simp] @@ -96,8 +96,8 @@ theorem IsRegular.top : (⊤ : ωLanguage Symbol).IsRegular := by accept := univ } use Unit, inferInstance, na ext xs - simp only [na, NA.Buchi.instωAcceptor, mem_language, mem_univ, frequently_true_iff_neBot, - atTop_neBot, and_true, mem_top, iff_true] + simp +instances only [na, NA.Buchi.instωAcceptor, mem_language, mem_univ, + frequently_true_iff_neBot, atTop_neBot, and_true, mem_top, iff_true] use const () grind [NA.Run] From 443c31e6d37305e5f75c65c7f5fd812e619acfd3 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 6 Feb 2026 00:53:17 -0500 Subject: [PATCH 154/253] simp +instances in CslibTests --- CslibTests/LambdaCalculus.lean | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/CslibTests/LambdaCalculus.lean b/CslibTests/LambdaCalculus.lean index 4affacf00..1a331ea58 100644 --- a/CslibTests/LambdaCalculus.lean +++ b/CslibTests/LambdaCalculus.lean @@ -21,7 +21,7 @@ example : (abs 0 (var 0)) =α (abs 1 (var 1)) := by simp [Term.fv] example : (abs 1 (var 0)).subst 0 (app (var 1) (var 2)) = (abs 3 (app (var 1) (var 2))) := by - simp [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc] + simp +instances [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc] def x := 0 def y := 1 @@ -34,7 +34,8 @@ local instance coeNatTerm : Coe ℕ (Term ℕ) := ⟨Term.var⟩ -- section 5.3.4 of TAPL example : (abs y (app x y))[x := (app y z : Term ℕ)] = (abs w (app (app y z) w)) := by - simp [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc, instHasSubstitutionTerm] + simp +instances [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc, + instHasSubstitutionTerm] -- example : (abs 0 (abs 1 (app (var 0) (var 1)))) =α (abs 1 (abs 0 (app (var 1) (var 0)))) := by From ab85bfffaf7d4f6373950ad5d4f3a23bcbf1b0a6 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Fri, 6 Feb 2026 01:04:21 -0500 Subject: [PATCH 155/253] chore: adaptations for nightly-2026-02-05 (#324) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] --- Cslib/Computability/Automata/DA/Buchi.lean | 2 +- Cslib/Computability/Automata/NA/Pair.lean | 5 ++--- Cslib/Computability/Automata/NA/Total.lean | 2 +- Cslib/Computability/Languages/OmegaRegularLanguage.lean | 6 +++--- Cslib/Foundations/Lint/Basic.lean | 4 ++-- CslibTests/LambdaCalculus.lean | 5 +++-- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 9 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Cslib/Computability/Automata/DA/Buchi.lean b/Cslib/Computability/Automata/DA/Buchi.lean index f793154cf..346cfd267 100644 --- a/Cslib/Computability/Automata/DA/Buchi.lean +++ b/Cslib/Computability/Automata/DA/Buchi.lean @@ -29,6 +29,6 @@ of the language accepted by the same automaton. theorem buchi_eq_finAcc_omegaLim {da : DA State Symbol} {acc : Set State} : language (Buchi.mk da acc) = (language (FinAcc.mk da acc))↗ω := by ext xs - simp + simp +instances end Cslib.Automata.DA diff --git a/Cslib/Computability/Automata/NA/Pair.lean b/Cslib/Computability/Automata/NA/Pair.lean index a2d4ba774..432e75789 100644 --- a/Cslib/Computability/Automata/NA/Pair.lean +++ b/Cslib/Computability/Automata/NA/Pair.lean @@ -35,7 +35,7 @@ theorem LTS.pairLang_regular [Finite State] {lts : LTS State Symbol} {s t : Stat rw [IsRegular.iff_nfa] use State, inferInstance, (NA.FinAcc.mk ⟨lts, {s}⟩ {t}) ext - simp + simp +instances namespace Automata.NA.Buchi @@ -47,8 +47,7 @@ theorem language_eq_fin_iSup_hmul_omegaPow [Inhabited Symbol] [Finite State] (na : Buchi State Symbol) : language na = ⨆ s ∈ na.start, ⨆ t ∈ na.accept, (na.pairLang s t) * (na.pairLang t t)^ω := by ext xs - simp only [Buchi.instωAcceptor, ωAcceptor.mem_language, - ωLanguage.mem_iSup, ωLanguage.mem_hmul, LTS.mem_pairLang] + simp only [ωAcceptor.mem_language, ωLanguage.mem_iSup, ωLanguage.mem_hmul, LTS.mem_pairLang] constructor · rintro ⟨ss, h_run, h_inf⟩ obtain ⟨t, h_acc, h_t⟩ := frequently_in_finite_type.mp h_inf diff --git a/Cslib/Computability/Automata/NA/Total.lean b/Cslib/Computability/Automata/NA/Total.lean index d6207ef50..3462a82bc 100644 --- a/Cslib/Computability/Automata/NA/Total.lean +++ b/Cslib/Computability/Automata/NA/Total.lean @@ -54,7 +54,7 @@ as long as the accepting states are also lifted in the obvious way. -/ theorem totalize_language_eq {na : FinAcc State Symbol} : language (FinAcc.mk na.totalize (inl '' na.accept)) = language na := by ext xl - simp [totalize] + simp +instances [totalize] end FinAcc diff --git a/Cslib/Computability/Languages/OmegaRegularLanguage.lean b/Cslib/Computability/Languages/OmegaRegularLanguage.lean index 6dab30161..31a34adc7 100644 --- a/Cslib/Computability/Languages/OmegaRegularLanguage.lean +++ b/Cslib/Computability/Languages/OmegaRegularLanguage.lean @@ -85,7 +85,7 @@ theorem IsRegular.bot : (⊥ : ωLanguage Symbol).IsRegular := by accept := ∅ } use Unit, inferInstance, na ext xs - simp [na] + simp +instances [na] /-- The language of all ω-sequences is ω-regular. -/ @[simp] @@ -96,8 +96,8 @@ theorem IsRegular.top : (⊤ : ωLanguage Symbol).IsRegular := by accept := univ } use Unit, inferInstance, na ext xs - simp only [na, NA.Buchi.instωAcceptor, mem_language, mem_univ, frequently_true_iff_neBot, - atTop_neBot, and_true, mem_top, iff_true] + simp +instances only [na, NA.Buchi.instωAcceptor, mem_language, mem_univ, + frequently_true_iff_neBot, atTop_neBot, and_true, mem_top, iff_true] use const () grind [NA.Run] diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index f9d52be65..433ce2b90 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -7,7 +7,7 @@ Authors: Chris Henson module public import Batteries.Tactic.Lint.Basic -public meta import Lean.Meta.GlobalInstances +public meta import Lean.Meta.Instances namespace Cslib.Lint @@ -21,7 +21,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where test declName := do if ← isAutoDecl declName then return none let env ← getEnv - if isGlobalInstance env declName then return none + if ← isInstanceReducible declName then return none let nss := env.getNamespaceSet let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with diff --git a/CslibTests/LambdaCalculus.lean b/CslibTests/LambdaCalculus.lean index 4affacf00..1a331ea58 100644 --- a/CslibTests/LambdaCalculus.lean +++ b/CslibTests/LambdaCalculus.lean @@ -21,7 +21,7 @@ example : (abs 0 (var 0)) =α (abs 1 (var 1)) := by simp [Term.fv] example : (abs 1 (var 0)).subst 0 (app (var 1) (var 2)) = (abs 3 (app (var 1) (var 2))) := by - simp [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc] + simp +instances [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc] def x := 0 def y := 1 @@ -34,7 +34,8 @@ local instance coeNatTerm : Coe ℕ (Term ℕ) := ⟨Term.var⟩ -- section 5.3.4 of TAPL example : (abs y (app x y))[x := (app y z : Term ℕ)] = (abs w (app (app y z) w)) := by - simp [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc, instHasSubstitutionTerm] + simp +instances [subst, fv, bv, vars, rename, instHasFreshNat, HasFresh.ofSucc, + instHasSubstitutionTerm] -- example : (abs 0 (abs 1 (app (var 0) (var 1)))) =α (abs 1 (abs 0 (app (var 1) (var 0)))) := by diff --git a/lake-manifest.json b/lake-manifest.json index 9f9df110f..1fc6a8f68 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "390c30bffcb2ad54f411853020617b8f99e2dd0f", + "rev": "20c4c4b3d8a0ec5aabc72aa3d247f2838d829759", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-02", + "inputRev": "nightly-testing-2026-02-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "def0c628f155ea883ec84293df09d906eebbf363", + "rev": "0498c368a58d22f723580e062afa488ac59b6d63", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "593b0ee5e468f94e284084b109332932d70f2eb8", + "rev": "5b13733e0c37e465bfe26ae6615b2c841acba215", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 76dcce6e6..e69ae68b7 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-02" +rev = "nightly-testing-2026-02-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2a2dbb70f..28b0642b9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-02 +leanprover/lean4:nightly-2026-02-05 From ffc0f7a47f80254d401f09dd3764823b5f335ea1 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 10 Feb 2026 11:47:28 +0000 Subject: [PATCH 156/253] chore: bump to nightly-2026-02-10 with mathlib at nightly-testing-2026-02-10 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1fc6a8f68..36c68a9b7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "20c4c4b3d8a0ec5aabc72aa3d247f2838d829759", + "rev": "193e4ce939963855d84c5cd8ca71053f9c3d3281", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-05", + "inputRev": "nightly-testing-2026-02-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9b261819fd5d669220cb6694d62ead0dfca1fb9d", + "rev": "4cf313410e037baf5eacedeb8600eb9734e12b0d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9dddcac0db0bedff8bbe88daf0a39c839613302c", + "rev": "189d2ef5a1db92e95e83fa61aaa3efa7422b8f6c", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5b13733e0c37e465bfe26ae6615b2c841acba215", + "rev": "2e90f5551d1cd921e0d0497624770385db498712", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e69ae68b7..25f06143f 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-05" +rev = "nightly-testing-2026-02-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28b0642b9..e1784cbc5 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-05 +leanprover/lean4:nightly-2026-02-10 From 15e6b29547a1904d4fdf0b3565c18bcf708b6275 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Tue, 10 Feb 2026 07:05:23 -0500 Subject: [PATCH 157/253] chore: adaptations for nightly-2026-02-10 (#330) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 1fc6a8f68..36c68a9b7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "20c4c4b3d8a0ec5aabc72aa3d247f2838d829759", + "rev": "193e4ce939963855d84c5cd8ca71053f9c3d3281", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-05", + "inputRev": "nightly-testing-2026-02-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9b261819fd5d669220cb6694d62ead0dfca1fb9d", + "rev": "4cf313410e037baf5eacedeb8600eb9734e12b0d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "9dddcac0db0bedff8bbe88daf0a39c839613302c", + "rev": "189d2ef5a1db92e95e83fa61aaa3efa7422b8f6c", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5b13733e0c37e465bfe26ae6615b2c841acba215", + "rev": "2e90f5551d1cd921e0d0497624770385db498712", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index e69ae68b7..25f06143f 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-05" +rev = "nightly-testing-2026-02-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28b0642b9..e1784cbc5 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-05 +leanprover/lean4:nightly-2026-02-10 From 6f161b8ac4a3a1a76a0c86e6dedcb9ec459f44ac Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 13 Feb 2026 13:25:19 +0000 Subject: [PATCH 158/253] chore: bump to nightly-2026-02-13-rev2 with mathlib at nightly-testing-2026-02-13-rev2 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 36c68a9b7..51c39fb7c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "193e4ce939963855d84c5cd8ca71053f9c3d3281", + "rev": "8889baab3cc415b9e11173ba960e4794070c1118", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-10", + "inputRev": "nightly-testing-2026-02-13-rev2", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "189d2ef5a1db92e95e83fa61aaa3efa7422b8f6c", + "rev": "a74a55b6b08abdf54998cd811747397c5e4addd3", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2e90f5551d1cd921e0d0497624770385db498712", + "rev": "54211d1694e5c440ca556fa45256998058320930", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 25f06143f..881f7c84b 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-10" +rev = "nightly-testing-2026-02-13-rev2" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index e1784cbc5..b4888c75e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-10 +leanprover/lean4:nightly-2026-02-13-rev2 From 622d921df9037dff2d0cf524e9807d84121ab14a Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Fri, 13 Feb 2026 08:58:03 -0500 Subject: [PATCH 159/253] chore: adaptations for nightly-2026-02-13-rev2 (#332) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 36c68a9b7..51c39fb7c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "193e4ce939963855d84c5cd8ca71053f9c3d3281", + "rev": "8889baab3cc415b9e11173ba960e4794070c1118", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-10", + "inputRev": "nightly-testing-2026-02-13-rev2", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "189d2ef5a1db92e95e83fa61aaa3efa7422b8f6c", + "rev": "a74a55b6b08abdf54998cd811747397c5e4addd3", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2e90f5551d1cd921e0d0497624770385db498712", + "rev": "54211d1694e5c440ca556fa45256998058320930", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 25f06143f..881f7c84b 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-10" +rev = "nightly-testing-2026-02-13-rev2" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index e1784cbc5..b4888c75e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-10 +leanprover/lean4:nightly-2026-02-13-rev2 From e21566eb622f4817c2359d4f2cbdddd25ba614d5 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 15 Feb 2026 22:02:16 +0000 Subject: [PATCH 160/253] chore: bump to nightly-2026-02-15-rev1 with mathlib at nightly-testing-2026-02-15-rev1 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 51c39fb7c..6e1394438 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "8889baab3cc415b9e11173ba960e4794070c1118", + "rev": "d635d93ac7377e81f45ff062af13417b370be03b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-13-rev2", + "inputRev": "nightly-testing-2026-02-15-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a74a55b6b08abdf54998cd811747397c5e4addd3", + "rev": "ba20130d91701b1c1c015103697234c6498f093e", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "54211d1694e5c440ca556fa45256998058320930", + "rev": "1095671f4fd3fb934f72fc633f4ec1c8bb3e5348", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 881f7c84b..c9be765ac 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-13-rev2" +rev = "nightly-testing-2026-02-15-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b4888c75e..02df2fcee 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-13-rev2 +leanprover/lean4:nightly-2026-02-15-rev1 From f2a87d6703b29e80a1dd324f9b0b8ef5e6149100 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Sun, 15 Feb 2026 17:17:23 -0500 Subject: [PATCH 161/253] chore: adaptations for nightly-2026-02-15-rev1 (#337) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 51c39fb7c..6e1394438 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "8889baab3cc415b9e11173ba960e4794070c1118", + "rev": "d635d93ac7377e81f45ff062af13417b370be03b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-13-rev2", + "inputRev": "nightly-testing-2026-02-15-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a74a55b6b08abdf54998cd811747397c5e4addd3", + "rev": "ba20130d91701b1c1c015103697234c6498f093e", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "54211d1694e5c440ca556fa45256998058320930", + "rev": "1095671f4fd3fb934f72fc633f4ec1c8bb3e5348", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 881f7c84b..c9be765ac 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-13-rev2" +rev = "nightly-testing-2026-02-15-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b4888c75e..02df2fcee 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-13-rev2 +leanprover/lean4:nightly-2026-02-15-rev1 From 4a562988a6d1e1f3023025276265476e0b13c9e4 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Mon, 16 Feb 2026 13:26:29 +0000 Subject: [PATCH 162/253] chore: bump to nightly-2026-02-16 with mathlib at nightly-testing-2026-02-16 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 6e1394438..8ead780bd 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d635d93ac7377e81f45ff062af13417b370be03b", + "rev": "d14e64c5f93036d73fd7ed0d7ebe67c4783b46c7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-15-rev1", + "inputRev": "nightly-testing-2026-02-16", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index c9be765ac..51470518f 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-15-rev1" +rev = "nightly-testing-2026-02-16" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 02df2fcee..ac6ebec5a 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-15-rev1 +leanprover/lean4:nightly-2026-02-16 From efc31a1e6439971c96f73527c238d2df3fbdcacf Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 19 Feb 2026 06:54:10 -0500 Subject: [PATCH 163/253] set a nightly toolchain --- lake-manifest.json | 40 ++++++++++++++++++++-------------------- lakefile.toml | 3 ++- lean-toolchain | 2 +- 3 files changed, 23 insertions(+), 22 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fda569a0c..b10814496 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,94 +1,94 @@ {"version": "1.1.0", "packagesDir": ".lake/packages", "packages": - [{"url": "https://github.com/leanprover-community/mathlib4", + [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "33a7291a345d718bca41f8ae8a9bae365d8f2a3e", + "scope": "", + "rev": "d5b4e1ec0d9cd0bdfbb115270a6ca0746155c478", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing-2026-02-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "a8191ec244102f576a8cd93399cdd8cc489e47cd", + "rev": "0498c368a58d22f723580e062afa488ac59b6d63", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c5d5b8fe6e5158def25cd28eb94e4141ad97c843", + "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "7ccd5e026eb2b3581915ff3f0d1cd918e18c2ab9", + "rev": "4cf313410e037baf5eacedeb8600eb9734e12b0d", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "06c949a3f4a3b2eb0bd8601e31269b9f4f820aa6", + "rev": "be3b2e63b1bbf496c478cef98b86972a37c1417d", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.88", + "inputRev": "v0.0.87", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "eb165126bfb2988738792c9ae37e09d58e2fec83", + "rev": "ba20130d91701b1c1c015103697234c6498f093e", "name": "aesop", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/quote4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "90217e10b2db6c6c445d30faae7fea453d9782c0", + "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "965500ff9171556698ec2714b936739d5da438c2", + "rev": "24d33aadbf620c9ed742589b6a9c7da015351da5", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "474983579ecce1ca7d8a63e65c7ae0b1a22db6a3", + "rev": "d9fc8ae23024be37424a189982c92356e37935c8", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 81ea3e7d8..72fe4b77c 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -15,7 +15,8 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" -scope = "leanprover-community" +git = "https://github.com/leanprover-community/mathlib4-nightly-testing" +rev = "nightly-testing-2026-02-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index c7ad81a70..d8c58310b 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:v4.29.0-rc1 +leanprover/lean4:nightly-2026-02-17 From 24e0a5a923e24d374f081a586aa1376ed72630b2 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 19 Feb 2026 06:58:49 -0500 Subject: [PATCH 164/253] manual bump to nightly-2026-02-17 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8ead780bd..b10814496 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d14e64c5f93036d73fd7ed0d7ebe67c4783b46c7", + "rev": "d5b4e1ec0d9cd0bdfbb115270a6ca0746155c478", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-16", + "inputRev": "nightly-testing-2026-02-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "6d65c6e0a25b8a52c13c3adeb63ecde3bfbb6294", + "rev": "be3b2e63b1bbf496c478cef98b86972a37c1417d", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.86", + "inputRev": "v0.0.87", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "1095671f4fd3fb934f72fc633f4ec1c8bb3e5348", + "rev": "24d33aadbf620c9ed742589b6a9c7da015351da5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 51470518f..72fe4b77c 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-16" +rev = "nightly-testing-2026-02-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index ac6ebec5a..d8c58310b 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-16 +leanprover/lean4:nightly-2026-02-17 From 2deedee73272e0cdfd5b83aaa7e4c2946d6e95c0 Mon Sep 17 00:00:00 2001 From: mathlib4-bot Date: Thu, 19 Feb 2026 12:07:43 +0000 Subject: [PATCH 165/253] chore: adaptations for nightly-2026-02-17 From 786de85e1fd9a62f65d1ec8c7dfee4e0e8e008c3 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Thu, 19 Feb 2026 16:14:21 +0000 Subject: [PATCH 166/253] chore: bump to nightly-2026-02-19 with mathlib at nightly-testing-2026-02-19 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index b10814496..ed28840a0 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d5b4e1ec0d9cd0bdfbb115270a6ca0746155c478", + "rev": "91522ad44030442528729c466dc0f5ca502cd8ec", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-17", + "inputRev": "nightly-testing-2026-02-19", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "24d33aadbf620c9ed742589b6a9c7da015351da5", + "rev": "d33730128fb3e98d7b1a682a99a818160dff1944", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 72fe4b77c..39bb5d6ba 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-17" +rev = "nightly-testing-2026-02-19" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index d8c58310b..fd6b2968d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-17 +leanprover/lean4:nightly-2026-02-19 From a2e9349a29afc0970da1dd357f8567b04d33cdf0 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 19 Feb 2026 11:28:02 -0500 Subject: [PATCH 167/253] use Lean.isImplicitReducible --- Cslib/Foundations/Lint/Basic.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index 433ce2b90..d9cf55d30 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -21,7 +21,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where test declName := do if ← isAutoDecl declName then return none let env ← getEnv - if ← isInstanceReducible declName then return none + if ← isImplicitReducible declName then return none let nss := env.getNamespaceSet let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with From 2116efc6f5af698bd719929b3c5258b7e68de549 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sat, 21 Feb 2026 13:16:12 +0000 Subject: [PATCH 168/253] chore: bump to nightly-2026-02-21 with mathlib at nightly-testing-2026-02-21 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index ed28840a0..de5c6ad44 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "91522ad44030442528729c466dc0f5ca502cd8ec", + "rev": "a05cf64db607e8a9d93ee4083940e5b304e3739a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-19", + "inputRev": "nightly-testing-2026-02-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "d33730128fb3e98d7b1a682a99a818160dff1944", + "rev": "de1daadac3fa45be28c44c24415fc12797ed2bc5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 39bb5d6ba..7a3048164 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-19" +rev = "nightly-testing-2026-02-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index fd6b2968d..914e66b91 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-19 +leanprover/lean4:nightly-2026-02-21 From b4f8a0aed37325812419d14dd5197cd12c6cf070 Mon Sep 17 00:00:00 2001 From: mathlib4-bot Date: Sat, 21 Feb 2026 13:28:13 +0000 Subject: [PATCH 169/253] chore: adaptations for nightly-2026-02-21 From f2cc3a02dc637a5b24697e257380ed31b8b84e7e Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Sat, 21 Feb 2026 08:37:34 -0500 Subject: [PATCH 170/253] chore: adaptations for nightly-2026-02-21 (#361) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- Cslib/Foundations/Lint/Basic.lean | 2 +- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index 433ce2b90..d9cf55d30 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -21,7 +21,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where test declName := do if ← isAutoDecl declName then return none let env ← getEnv - if ← isInstanceReducible declName then return none + if ← isImplicitReducible declName then return none let nss := env.getNamespaceSet let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with diff --git a/lake-manifest.json b/lake-manifest.json index b10814496..de5c6ad44 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d5b4e1ec0d9cd0bdfbb115270a6ca0746155c478", + "rev": "a05cf64db607e8a9d93ee4083940e5b304e3739a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-17", + "inputRev": "nightly-testing-2026-02-21", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "24d33aadbf620c9ed742589b6a9c7da015351da5", + "rev": "de1daadac3fa45be28c44c24415fc12797ed2bc5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 72fe4b77c..7a3048164 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-17" +rev = "nightly-testing-2026-02-21" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index d8c58310b..914e66b91 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-17 +leanprover/lean4:nightly-2026-02-21 From a4559c7ce2c918d5e05bd8fa112c255a8b72bdcf Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Mon, 23 Feb 2026 16:19:56 +0000 Subject: [PATCH 171/253] chore: bump to nightly-2026-02-23 with mathlib at nightly-testing-2026-02-23 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index de5c6ad44..556fcc867 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a05cf64db607e8a9d93ee4083940e5b304e3739a", + "rev": "151548da18f305c030142d8168fac298ea1b42fa", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-21", + "inputRev": "nightly-testing-2026-02-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", + "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "de1daadac3fa45be28c44c24415fc12797ed2bc5", + "rev": "952acb4e9019b466210b44481c59528d8a436627", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 7a3048164..6cad47b8a 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-21" +rev = "nightly-testing-2026-02-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 914e66b91..7c0cee1e8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-21 +leanprover/lean4:nightly-2026-02-23 From af1ca6afbb8678a76af1a90dad610f283637b8bb Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Mon, 23 Feb 2026 11:40:56 -0500 Subject: [PATCH 172/253] chore: adaptations for nightly-2026-02-23 (#366) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index de5c6ad44..556fcc867 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a05cf64db607e8a9d93ee4083940e5b304e3739a", + "rev": "151548da18f305c030142d8168fac298ea1b42fa", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-21", + "inputRev": "nightly-testing-2026-02-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0a83ad726ee0236e9574ef48098beedca30aa5a0", + "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "de1daadac3fa45be28c44c24415fc12797ed2bc5", + "rev": "952acb4e9019b466210b44481c59528d8a436627", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 7a3048164..6cad47b8a 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-21" +rev = "nightly-testing-2026-02-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 914e66b91..7c0cee1e8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-21 +leanprover/lean4:nightly-2026-02-23 From c98fb7e3c0d73956882c2b4cb054c93834d6d7be Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 24 Feb 2026 10:14:34 +0000 Subject: [PATCH 173/253] chore: bump to nightly-2026-02-23-rev1 with mathlib at nightly-testing-2026-02-23-rev1 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 556fcc867..78f2f75a2 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "151548da18f305c030142d8168fac298ea1b42fa", + "rev": "cbbbfc24305535fce99e462992afc9b52ea62377", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-23", + "inputRev": "nightly-testing-2026-02-23-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "952acb4e9019b466210b44481c59528d8a436627", + "rev": "80b39ca1ccdbb3b479f3028701c3a164c515bd5e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6cad47b8a..32df7bdfd 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-23" +rev = "nightly-testing-2026-02-23-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 7c0cee1e8..a3d7be210 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-23 +leanprover/lean4:nightly-2026-02-23-rev1 From fa542b4286b02e5c21391eb1671a5054879827c4 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 07:38:50 -0500 Subject: [PATCH 174/253] chore: adaptations for nightly-2026-02-23-rev1 (#367) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 556fcc867..78f2f75a2 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "151548da18f305c030142d8168fac298ea1b42fa", + "rev": "cbbbfc24305535fce99e462992afc9b52ea62377", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-23", + "inputRev": "nightly-testing-2026-02-23-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "952acb4e9019b466210b44481c59528d8a436627", + "rev": "80b39ca1ccdbb3b479f3028701c3a164c515bd5e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 6cad47b8a..32df7bdfd 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-23" +rev = "nightly-testing-2026-02-23-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 7c0cee1e8..a3d7be210 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-23 +leanprover/lean4:nightly-2026-02-23-rev1 From 3e9ddedc61c3f919c5fde0e1433699082df5b238 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 27 Feb 2026 10:10:06 +0000 Subject: [PATCH 175/253] chore: bump to nightly-2026-02-25 with mathlib at nightly-testing-2026-02-25 --- lake-manifest.json | 12 ++++++------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 78f2f75a2..bfaecebdf 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cbbbfc24305535fce99e462992afc9b52ea62377", + "rev": "d44845208dd9fa5d30de6a881801d4dd5c75810f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-23-rev1", + "inputRev": "nightly-testing-2026-02-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "be3b2e63b1bbf496c478cef98b86972a37c1417d", + "rev": "b5e00ab2b8adfc9dfc9335ca3dadca7caec37629", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.87", + "inputRev": "v0.0.89", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ba20130d91701b1c1c015103697234c6498f093e", + "rev": "eb17cd9b145f8f09f756b3599bf18baaaf9623f6", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "80b39ca1ccdbb3b479f3028701c3a164c515bd5e", + "rev": "f9057b5b3a20d4b53f4ed3d477fa07380c9f19fe", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 32df7bdfd..3762f5507 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-23-rev1" +rev = "nightly-testing-2026-02-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index a3d7be210..28cffe5e2 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-23-rev1 +leanprover/lean4:nightly-2026-02-25 From 6350a88137bb14ab128784bba417e0042147bc51 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 27 Feb 2026 10:45:19 -0500 Subject: [PATCH 176/253] adaptation for lean4#12603 --- .../Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean index 8e4b44ebe..164f82d17 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean @@ -113,7 +113,7 @@ def fv : Term Var → Finset Var /-- Locally closed terms. -/ inductive LC : Term Var → Prop -| fvar (x) : LC (fvar x) +| fvar (x : Var) : LC (fvar x) | abs (L : Finset Var) (e : Term Var) : (∀ x ∉ L, LC (e ^ fvar x)) → LC (abs e) | app {l r} : l.LC → r.LC → LC (app l r) From 72c3503514b8cb7f4854fc65f9b7cf06fdd66c8d Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 11:11:13 -0500 Subject: [PATCH 177/253] chore: adaptations for nightly-2026-02-25 (#377) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- .../LocallyNameless/Untyped/Basic.lean | 2 +- lake-manifest.json | 12 ++++++------ lakefile.toml | 2 +- lean-toolchain | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean index 8e4b44ebe..164f82d17 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Untyped/Basic.lean @@ -113,7 +113,7 @@ def fv : Term Var → Finset Var /-- Locally closed terms. -/ inductive LC : Term Var → Prop -| fvar (x) : LC (fvar x) +| fvar (x : Var) : LC (fvar x) | abs (L : Finset Var) (e : Term Var) : (∀ x ∉ L, LC (e ^ fvar x)) → LC (abs e) | app {l r} : l.LC → r.LC → LC (app l r) diff --git a/lake-manifest.json b/lake-manifest.json index 78f2f75a2..bfaecebdf 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cbbbfc24305535fce99e462992afc9b52ea62377", + "rev": "d44845208dd9fa5d30de6a881801d4dd5c75810f", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-23-rev1", + "inputRev": "nightly-testing-2026-02-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "be3b2e63b1bbf496c478cef98b86972a37c1417d", + "rev": "b5e00ab2b8adfc9dfc9335ca3dadca7caec37629", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.87", + "inputRev": "v0.0.89", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ba20130d91701b1c1c015103697234c6498f093e", + "rev": "eb17cd9b145f8f09f756b3599bf18baaaf9623f6", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "80b39ca1ccdbb3b479f3028701c3a164c515bd5e", + "rev": "f9057b5b3a20d4b53f4ed3d477fa07380c9f19fe", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 32df7bdfd..3762f5507 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-23-rev1" +rev = "nightly-testing-2026-02-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index a3d7be210..28cffe5e2 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-23-rev1 +leanprover/lean4:nightly-2026-02-25 From 6ea7b28c96d2708b2c24efe1f5dba0353914d449 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 3 Mar 2026 13:35:38 -0500 Subject: [PATCH 178/253] manual bump to 2026-03-02 --- lake-manifest.json | 32 ++++++++++++++++---------------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index bfaecebdf..60899f250 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,57 +5,57 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d44845208dd9fa5d30de6a881801d4dd5c75810f", + "rev": "6ef7a9da0138c81e3d4f7b5981cd4e93ba07bc1d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-25", + "inputRev": "nightly-testing-2026-03-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0498c368a58d22f723580e062afa488ac59b6d63", + "rev": "2b93f2523263a6df8a8fbbe3dd28b7f028087480", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", + "rev": "c5d5b8fe6e5158def25cd28eb94e4141ad97c843", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4cf313410e037baf5eacedeb8600eb9734e12b0d", + "rev": "ea1e51a85f6bd53b6a84239b00593eebd03d522b", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b5e00ab2b8adfc9dfc9335ca3dadca7caec37629", + "rev": "212dc300449e436298804f09b264f624667106f8", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.89", + "inputRev": "v0.0.90", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "eb17cd9b145f8f09f756b3599bf18baaaf9623f6", + "rev": "70a51751aeaf1c332253fd4c4d91b087ce5ffee5", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,17 +65,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", + "rev": "5bb0ac23f6e6c4c3ba1b084f2d65cb1bd2a9cf7a", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f9057b5b3a20d4b53f4ed3d477fa07380c9f19fe", + "rev": "77a23c5c1a7598ffe4521e39dc8825d998636514", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "d9fc8ae23024be37424a189982c92356e37935c8", + "rev": "0c688ceba0d380f6e56f977009fc2bb2322af5a3", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "v4.29.0-rc3", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 3762f5507..f5f355865 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-25" +rev = "nightly-testing-2026-03-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28cffe5e2..f65a846d3 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-25 +leanprover/lean4:nightly-2026-03-02 \ No newline at end of file From 3bac2134a917c2a4c8f26a87c90e1cac65e4d2c6 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Tue, 3 Mar 2026 16:30:37 -0500 Subject: [PATCH 179/253] chore: adaptations for nightly-2026-03-02 (#395) Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 32 ++++++++++++++++---------------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index bfaecebdf..60899f250 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,57 +5,57 @@ "type": "git", "subDir": null, "scope": "", - "rev": "d44845208dd9fa5d30de6a881801d4dd5c75810f", + "rev": "6ef7a9da0138c81e3d4f7b5981cd4e93ba07bc1d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-02-25", + "inputRev": "nightly-testing-2026-03-02", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0498c368a58d22f723580e062afa488ac59b6d63", + "rev": "2b93f2523263a6df8a8fbbe3dd28b7f028087480", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "368243f6a97d18db0d5a2a8568aa44e261496ef7", + "rev": "c5d5b8fe6e5158def25cd28eb94e4141ad97c843", "name": "LeanSearchClient", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/import-graph", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4cf313410e037baf5eacedeb8600eb9734e12b0d", + "rev": "ea1e51a85f6bd53b6a84239b00593eebd03d522b", "name": "importGraph", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/ProofWidgets4", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b5e00ab2b8adfc9dfc9335ca3dadca7caec37629", + "rev": "212dc300449e436298804f09b264f624667106f8", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.89", + "inputRev": "v0.0.90", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "eb17cd9b145f8f09f756b3599bf18baaaf9623f6", + "rev": "70a51751aeaf1c332253fd4c4d91b087ce5ffee5", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,17 +65,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", + "rev": "5bb0ac23f6e6c4c3ba1b084f2d65cb1bd2a9cf7a", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "master", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f9057b5b3a20d4b53f4ed3d477fa07380c9f19fe", + "rev": "77a23c5c1a7598ffe4521e39dc8825d998636514", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "d9fc8ae23024be37424a189982c92356e37935c8", + "rev": "0c688ceba0d380f6e56f977009fc2bb2322af5a3", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "v4.29.0-rc3", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 3762f5507..f5f355865 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-02-25" +rev = "nightly-testing-2026-03-02" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 28cffe5e2..f65a846d3 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-02-25 +leanprover/lean4:nightly-2026-03-02 \ No newline at end of file From 6b920b618baf05cc3672f50b8da9de9f7ae2ab51 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Thu, 5 Mar 2026 13:25:18 +0000 Subject: [PATCH 180/253] chore: bump to nightly-2026-03-05 with mathlib at nightly-testing-2026-03-05 --- lake-manifest.json | 24 ++++++++++++------------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 60899f250..8671d60e9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "6ef7a9da0138c81e3d4f7b5981cd4e93ba07bc1d", + "rev": "ec8913147b34aeda03f2287062cf827b4269a3db", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-02", + "inputRev": "nightly-testing-2026-03-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2b93f2523263a6df8a8fbbe3dd28b7f028087480", + "rev": "8629a535d10cd7edfbf1a2c5cdfbaeee135a62cd", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ea1e51a85f6bd53b6a84239b00593eebd03d522b", + "rev": "f7f57d837a219a8e298798faba94bc7082111a7d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "212dc300449e436298804f09b264f624667106f8", + "rev": "d9625b5bbeb3fade5a2cb3cc9b764b96d8106fd2", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.90", + "inputRev": "v0.0.92-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "70a51751aeaf1c332253fd4c4d91b087ce5ffee5", + "rev": "66f53a2b80473e4be5cf860425193cedbd7578ae", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,17 +65,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5bb0ac23f6e6c4c3ba1b084f2d65cb1bd2a9cf7a", + "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "77a23c5c1a7598ffe4521e39dc8825d998636514", + "rev": "922c94b86687f3b7ab165d43ce9ddee610696d0c", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "0c688ceba0d380f6e56f977009fc2bb2322af5a3", + "rev": "06c8b4d690d9b7ef98d594672bbdaa618156215a", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc3", + "inputRev": "v4.29.0-rc4", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index f5f355865..784bfe775 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-02" +rev = "nightly-testing-2026-03-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f65a846d3..fd315255c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-02 \ No newline at end of file +leanprover/lean4:nightly-2026-03-05 From 5df7580a47df6e497bc24313d194c0679465528a Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Thu, 5 Mar 2026 10:46:13 -0500 Subject: [PATCH 181/253] chore: adaptations for nightly-2026-03-05 (#402) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 24 ++++++++++++------------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 60899f250..8671d60e9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "6ef7a9da0138c81e3d4f7b5981cd4e93ba07bc1d", + "rev": "ec8913147b34aeda03f2287062cf827b4269a3db", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-02", + "inputRev": "nightly-testing-2026-03-05", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2b93f2523263a6df8a8fbbe3dd28b7f028087480", + "rev": "8629a535d10cd7edfbf1a2c5cdfbaeee135a62cd", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ea1e51a85f6bd53b6a84239b00593eebd03d522b", + "rev": "f7f57d837a219a8e298798faba94bc7082111a7d", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "212dc300449e436298804f09b264f624667106f8", + "rev": "d9625b5bbeb3fade5a2cb3cc9b764b96d8106fd2", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.90", + "inputRev": "v0.0.92-pre1", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "70a51751aeaf1c332253fd4c4d91b087ce5ffee5", + "rev": "66f53a2b80473e4be5cf860425193cedbd7578ae", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,17 +65,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5bb0ac23f6e6c4c3ba1b084f2d65cb1bd2a9cf7a", + "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", "name": "Qq", "manifestFile": "lake-manifest.json", - "inputRev": "master", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/batteries", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "77a23c5c1a7598ffe4521e39dc8825d998636514", + "rev": "922c94b86687f3b7ab165d43ce9ddee610696d0c", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "0c688ceba0d380f6e56f977009fc2bb2322af5a3", + "rev": "06c8b4d690d9b7ef98d594672bbdaa618156215a", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc3", + "inputRev": "v4.29.0-rc4", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index f5f355865..784bfe775 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-02" +rev = "nightly-testing-2026-03-05" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f65a846d3..fd315255c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-02 \ No newline at end of file +leanprover/lean4:nightly-2026-03-05 From e06c14c3d40afd5a59fe99eee753e783e88174ee Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 10 Mar 2026 10:11:29 +0000 Subject: [PATCH 182/253] chore: bump to nightly-2026-03-09 with mathlib at nightly-testing-2026-03-09 --- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8671d60e9..8126bf49e 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,20 +5,20 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ec8913147b34aeda03f2287062cf827b4269a3db", + "rev": "5375d4f3d1695c5f9509c8137e976f6287c6d361", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-05", + "inputRev": "nightly-testing-2026-03-09", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8629a535d10cd7edfbf1a2c5cdfbaeee135a62cd", + "rev": "c7314e41459a8c0aa8c9b610748c72292851625d", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f7f57d837a219a8e298798faba94bc7082111a7d", + "rev": "f207d9fcf0cef00ba79962a33ef156061914d9c7", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "922c94b86687f3b7ab165d43ce9ddee610696d0c", + "rev": "4f2de985dc0dd8daac986dcdb4cc9ea38774d35a", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "06c8b4d690d9b7ef98d594672bbdaa618156215a", + "rev": "3de531c1135f5e3a01f3ac04830996fda476b28e", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc4", + "inputRev": "v4.29.0-rc6", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 17a508634..bc564d882 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-05" +rev = "nightly-testing-2026-03-09" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index fd315255c..a07c58f5e 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-05 +leanprover/lean4:nightly-2026-03-09 From 6e74614701fe62bab531122d6f61557525c928b2 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 14 Mar 2026 21:06:11 -0400 Subject: [PATCH 183/253] manual update to 2026-03-14 --- lake-manifest.json | 12 ++++++------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8126bf49e..4605a93f7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,20 +5,20 @@ "type": "git", "subDir": null, "scope": "", - "rev": "5375d4f3d1695c5f9509c8137e976f6287c6d361", + "rev": "c5d951950a58dc8c5620d05ac772e549f99a77c7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-09", + "inputRev": "nightly-testing-2026-03-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "c7314e41459a8c0aa8c9b610748c72292851625d", + "rev": "e84e3e16aea6b72cc5d311ca1bb25caad417e162", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "66f53a2b80473e4be5cf860425193cedbd7578ae", + "rev": "61944418f2cf5a6d8b217ed2c5ed82a4d9f607b7", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4f2de985dc0dd8daac986dcdb4cc9ea38774d35a", + "rev": "22f50046aa2bd8d7e31e066a274bfed54b079133", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index bc564d882..ad18186ca 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-09" +rev = "nightly-testing-2026-03-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index a07c58f5e..054e93e41 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-09 +leanprover/lean4:nightly-2026-03-14 From 8517d04f47db3b80612ce8a34fa261ac03f4fec7 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Sat, 14 Mar 2026 21:21:07 -0400 Subject: [PATCH 184/253] chore: adaptations for nightly-2026-03-14 (#426) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 8671d60e9..4605a93f7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ec8913147b34aeda03f2287062cf827b4269a3db", + "rev": "c5d951950a58dc8c5620d05ac772e549f99a77c7", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-05", + "inputRev": "nightly-testing-2026-03-14", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8629a535d10cd7edfbf1a2c5cdfbaeee135a62cd", + "rev": "e84e3e16aea6b72cc5d311ca1bb25caad417e162", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f7f57d837a219a8e298798faba94bc7082111a7d", + "rev": "f207d9fcf0cef00ba79962a33ef156061914d9c7", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "66f53a2b80473e4be5cf860425193cedbd7578ae", + "rev": "61944418f2cf5a6d8b217ed2c5ed82a4d9f607b7", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "922c94b86687f3b7ab165d43ce9ddee610696d0c", + "rev": "22f50046aa2bd8d7e31e066a274bfed54b079133", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "06c8b4d690d9b7ef98d594672bbdaa618156215a", + "rev": "3de531c1135f5e3a01f3ac04830996fda476b28e", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc4", + "inputRev": "v4.29.0-rc6", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 17a508634..ad18186ca 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-05" +rev = "nightly-testing-2026-03-14" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index fd315255c..054e93e41 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-05 +leanprover/lean4:nightly-2026-03-14 From 942e58567a6908169e79bc382d0d98925f910b7a Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 17 Mar 2026 13:28:37 +0000 Subject: [PATCH 185/253] chore: bump to nightly-2026-03-17 with mathlib at nightly-testing-2026-03-17 --- lake-manifest.json | 11 ++++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 4605a93f7..f1e8dc515 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,14 +1,14 @@ -{"version": "1.1.0", +{"version": "1.2.0", "packagesDir": ".lake/packages", "packages": [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, "scope": "", - "rev": "c5d951950a58dc8c5620d05ac772e549f99a77c7", + "rev": "7193c91861cf57baa0f7cc61b12bcb8beda91587", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-14", + "inputRev": "nightly-testing-2026-03-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "22f50046aa2bd8d7e31e066a274bfed54b079133", + "rev": "b7558def110ca10bd6c97c1cbe8a80dbb3c86d8f", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -92,4 +92,5 @@ "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", - "lakeDir": ".lake"} + "lakeDir": ".lake", + "fixedToolchain": false} diff --git a/lakefile.toml b/lakefile.toml index ad18186ca..fc33e881e 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-14" +rev = "nightly-testing-2026-03-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 054e93e41..50b3514c5 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-14 +leanprover/lean4:nightly-2026-03-17 From 44a0ed08776112e9bfd117cf1cc5c5f01d8f6372 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Tue, 17 Mar 2026 10:09:14 -0400 Subject: [PATCH 186/253] chore: adaptations for nightly-2026-03-17 (#434) Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: mathlib4-bot Co-authored-by: Ching-Tsun Chou Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 11 ++++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 4605a93f7..f1e8dc515 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -1,14 +1,14 @@ -{"version": "1.1.0", +{"version": "1.2.0", "packagesDir": ".lake/packages", "packages": [{"url": "https://github.com/leanprover-community/mathlib4-nightly-testing", "type": "git", "subDir": null, "scope": "", - "rev": "c5d951950a58dc8c5620d05ac772e549f99a77c7", + "rev": "7193c91861cf57baa0f7cc61b12bcb8beda91587", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-14", + "inputRev": "nightly-testing-2026-03-17", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "22f50046aa2bd8d7e31e066a274bfed54b079133", + "rev": "b7558def110ca10bd6c97c1cbe8a80dbb3c86d8f", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -92,4 +92,5 @@ "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", - "lakeDir": ".lake"} + "lakeDir": ".lake", + "fixedToolchain": false} diff --git a/lakefile.toml b/lakefile.toml index ad18186ca..fc33e881e 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-14" +rev = "nightly-testing-2026-03-17" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 054e93e41..50b3514c5 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-14 +leanprover/lean4:nightly-2026-03-17 From f6a4b5bdd66ececc6ed9039965e16980f971ac70 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Wed, 18 Mar 2026 13:32:59 +0000 Subject: [PATCH 187/253] chore: bump to nightly-2026-03-18 with mathlib at nightly-testing-2026-03-18 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f1e8dc515..ffd74e6e9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "7193c91861cf57baa0f7cc61b12bcb8beda91587", + "rev": "a0c49ce73d8c712e6838bd8243628e0760ef4a75", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-17", + "inputRev": "nightly-testing-2026-03-18", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b7558def110ca10bd6c97c1cbe8a80dbb3c86d8f", + "rev": "97c42f1e39b15549018b622df1758f4b87df148b", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index fc33e881e..c21714ddb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-17" +rev = "nightly-testing-2026-03-18" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 50b3514c5..75512afdf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-17 +leanprover/lean4:nightly-2026-03-18 From a7f66bff356019a162e2d7db792beeb0e11e6c51 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Wed, 18 Mar 2026 09:52:48 -0400 Subject: [PATCH 188/253] chore: adaptations for nightly-2026-03-18 (#441) Co-authored-by: Ching-Tsun Chou Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f1e8dc515..ffd74e6e9 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "7193c91861cf57baa0f7cc61b12bcb8beda91587", + "rev": "a0c49ce73d8c712e6838bd8243628e0760ef4a75", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-17", + "inputRev": "nightly-testing-2026-03-18", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "b7558def110ca10bd6c97c1cbe8a80dbb3c86d8f", + "rev": "97c42f1e39b15549018b622df1758f4b87df148b", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index fc33e881e..c21714ddb 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-17" +rev = "nightly-testing-2026-03-18" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 50b3514c5..75512afdf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-17 +leanprover/lean4:nightly-2026-03-18 From bf2634f15a00503cddfd9a8d3b847c88343e1d43 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 20 Mar 2026 10:09:26 +0000 Subject: [PATCH 189/253] chore: bump to nightly-2026-03-19 with mathlib at nightly-testing-2026-03-19 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index ffd74e6e9..0dab45d7c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a0c49ce73d8c712e6838bd8243628e0760ef4a75", + "rev": "c7154957da32e7b96300d8862c64b6b334dadaad", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-18", + "inputRev": "nightly-testing-2026-03-19", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "97c42f1e39b15549018b622df1758f4b87df148b", + "rev": "8da63a051ba57f371654d11df898f3dd2c5852e0", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index c21714ddb..945226ad8 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-18" +rev = "nightly-testing-2026-03-19" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 75512afdf..9ef4c275c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-18 +leanprover/lean4:nightly-2026-03-19 From ecd0cc8af88d13bfe5df70f2d22d9da25c430c09 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Fri, 20 Mar 2026 06:29:10 -0400 Subject: [PATCH 190/253] chore: adaptations for nightly-2026-03-19 (#447) Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Kim Morrison Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Chris Henson Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index ffd74e6e9..0dab45d7c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "a0c49ce73d8c712e6838bd8243628e0760ef4a75", + "rev": "c7154957da32e7b96300d8862c64b6b334dadaad", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-18", + "inputRev": "nightly-testing-2026-03-19", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "97c42f1e39b15549018b622df1758f4b87df148b", + "rev": "8da63a051ba57f371654d11df898f3dd2c5852e0", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index c21714ddb..945226ad8 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-18" +rev = "nightly-testing-2026-03-19" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 75512afdf..9ef4c275c 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-18 +leanprover/lean4:nightly-2026-03-19 From ef513f88a56795ff030b6c3bcbfaecaee51a7876 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 22 Mar 2026 13:16:41 +0000 Subject: [PATCH 191/253] chore: bump to nightly-2026-03-19-rev1 with mathlib at nightly-testing-2026-03-19-rev1 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 0dab45d7c..631e38b23 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c7154957da32e7b96300d8862c64b6b334dadaad", + "rev": "5a62ef12a14818672c68d9415dc766596d0221c3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-19", + "inputRev": "nightly-testing-2026-03-19-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8da63a051ba57f371654d11df898f3dd2c5852e0", + "rev": "0d632b9bcad639bde7d080c7f4faf676a9d27eb5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 945226ad8..7f4cc34e3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-19" +rev = "nightly-testing-2026-03-19-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 9ef4c275c..1b00f4bf8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-19 +leanprover/lean4:nightly-2026-03-19-rev1 From 0cf95b9b502a59cf4441592535e864542256321a Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 22 Mar 2026 09:32:12 -0400 Subject: [PATCH 192/253] getNamespaceSet -> getNamespaces --- Cslib/Foundations/Lint/Basic.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index d7cbeb59f..5eb31ac5e 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -22,7 +22,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where if ← isAutoDecl declName then return none let env ← getEnv if ← isImplicitReducible declName then return none - let nss := env.getNamespaceSet + let nss := env.getNamespaces let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with | r::_::_ => tot.insert r From 71dc8ea177ea5c496ffadd1096aa363a4b840694 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 22 Mar 2026 09:40:58 -0400 Subject: [PATCH 193/253] getNamespaceSet -> getNamespaces --- CslibTests/GrindLint.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index 8c456a6c2..5cbc172e6 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -6,7 +6,7 @@ open Lean Elab.Command elab "open_scoped_all" pre:ident : command => do let env ← getEnv - let nss := env.getNamespaceSet.toList.filter (fun name => name.getRoot = pre.getId) + let nss := env.getNamespaces.filter (fun name => name.getRoot = pre.getId) for ns in nss do let cmd ← `(open scoped $(mkIdent ns)) elabCommand cmd From b66f914bb9b68d5c8d4015657bfc350f56665ec3 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Sun, 22 Mar 2026 09:51:32 -0400 Subject: [PATCH 194/253] chore: adaptations for nightly-2026-03-19-rev1 (#451) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- Cslib/Foundations/Lint/Basic.lean | 2 +- CslibTests/GrindLint.lean | 2 +- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cslib/Foundations/Lint/Basic.lean b/Cslib/Foundations/Lint/Basic.lean index d7cbeb59f..5eb31ac5e 100644 --- a/Cslib/Foundations/Lint/Basic.lean +++ b/Cslib/Foundations/Lint/Basic.lean @@ -22,7 +22,7 @@ public meta def topNamespace : Batteries.Tactic.Lint.Linter where if ← isAutoDecl declName then return none let env ← getEnv if ← isImplicitReducible declName then return none - let nss := env.getNamespaceSet + let nss := env.getNamespaces let top := nss.fold (init := (∅ : NameSet)) fun tot n => match n.components with | r::_::_ => tot.insert r diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index 8c456a6c2..5cbc172e6 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -6,7 +6,7 @@ open Lean Elab.Command elab "open_scoped_all" pre:ident : command => do let env ← getEnv - let nss := env.getNamespaceSet.toList.filter (fun name => name.getRoot = pre.getId) + let nss := env.getNamespaces.filter (fun name => name.getRoot = pre.getId) for ns in nss do let cmd ← `(open scoped $(mkIdent ns)) elabCommand cmd diff --git a/lake-manifest.json b/lake-manifest.json index 0dab45d7c..631e38b23 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c7154957da32e7b96300d8862c64b6b334dadaad", + "rev": "5a62ef12a14818672c68d9415dc766596d0221c3", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-19", + "inputRev": "nightly-testing-2026-03-19-rev1", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "8da63a051ba57f371654d11df898f3dd2c5852e0", + "rev": "0d632b9bcad639bde7d080c7f4faf676a9d27eb5", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 945226ad8..7f4cc34e3 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-19" +rev = "nightly-testing-2026-03-19-rev1" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 9ef4c275c..1b00f4bf8 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-19 +leanprover/lean4:nightly-2026-03-19-rev1 From cd361c8e64bcb2e7df31db943cfe748c136c35ef Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 24 Mar 2026 10:14:49 +0000 Subject: [PATCH 195/253] chore: bump to nightly-2026-03-24 with mathlib at nightly-testing-2026-03-24 --- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 631e38b23..c6ca653aa 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "5a62ef12a14818672c68d9415dc766596d0221c3", + "rev": "0037610a33ecd84750e346a72af0981dd0e71c58", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-19-rev1", + "inputRev": "nightly-testing-2026-03-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e84e3e16aea6b72cc5d311ca1bb25caad417e162", + "rev": "4d955ffd04d5f6d1143c5bf8fffab59ea7d84595", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f207d9fcf0cef00ba79962a33ef156061914d9c7", + "rev": "4270b99dc7c5e90d5ee5c6cb2dd91aaba5b19557", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "61944418f2cf5a6d8b217ed2c5ed82a4d9f607b7", + "rev": "2ac0e066410c02c7f755c865c2a4770855d47291", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0d632b9bcad639bde7d080c7f4faf676a9d27eb5", + "rev": "81c23850e7c2b5f82ed16e3569def2fe0f52e1c9", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "3de531c1135f5e3a01f3ac04830996fda476b28e", + "rev": "33583e6fb5096defc38f0c7f67d1c4a3825aee1f", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc6", + "inputRev": "v4.29.0-rc7", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 7f4cc34e3..8fd6ae5b6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-19-rev1" +rev = "nightly-testing-2026-03-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 1b00f4bf8..de7cb2ba9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-19-rev1 +leanprover/lean4:nightly-2026-03-24 From e061a6e6018f05a30290764c035a69c7c1838249 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Tue, 24 Mar 2026 06:29:13 -0400 Subject: [PATCH 196/253] chore: adaptations for nightly-2026-03-24 (#454) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: Chris Henson Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 16 ++++++++-------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 631e38b23..c6ca653aa 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "5a62ef12a14818672c68d9415dc766596d0221c3", + "rev": "0037610a33ecd84750e346a72af0981dd0e71c58", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-19-rev1", + "inputRev": "nightly-testing-2026-03-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e84e3e16aea6b72cc5d311ca1bb25caad417e162", + "rev": "4d955ffd04d5f6d1143c5bf8fffab59ea7d84595", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f207d9fcf0cef00ba79962a33ef156061914d9c7", + "rev": "4270b99dc7c5e90d5ee5c6cb2dd91aaba5b19557", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "61944418f2cf5a6d8b217ed2c5ed82a4d9f607b7", + "rev": "2ac0e066410c02c7f755c865c2a4770855d47291", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0d632b9bcad639bde7d080c7f4faf676a9d27eb5", + "rev": "81c23850e7c2b5f82ed16e3569def2fe0f52e1c9", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "3de531c1135f5e3a01f3ac04830996fda476b28e", + "rev": "33583e6fb5096defc38f0c7f67d1c4a3825aee1f", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc6", + "inputRev": "v4.29.0-rc7", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 7f4cc34e3..8fd6ae5b6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-19-rev1" +rev = "nightly-testing-2026-03-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 1b00f4bf8..de7cb2ba9 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-19-rev1 +leanprover/lean4:nightly-2026-03-24 From 34a1a8ccaee5f983290d0b2ff3762d8702331901 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Thu, 26 Mar 2026 16:23:04 +0000 Subject: [PATCH 197/253] chore: bump to nightly-2026-03-25 with mathlib at nightly-testing-2026-03-25 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index c6ca653aa..a3d46b67b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "0037610a33ecd84750e346a72af0981dd0e71c58", + "rev": "f80b5e44ea5c7ba214391d936e993462fb1f0e0a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-24", + "inputRev": "nightly-testing-2026-03-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4d955ffd04d5f6d1143c5bf8fffab59ea7d84595", + "rev": "22a0afa903bcf65285152eea298a3d319badc78d", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4270b99dc7c5e90d5ee5c6cb2dd91aaba5b19557", + "rev": "db22912cdd820b2a2bd84bd25273cb322ff09ead", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "81c23850e7c2b5f82ed16e3569def2fe0f52e1c9", + "rev": "da8a068708756fcc8aa953efc0dd95094b73a934", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "33583e6fb5096defc38f0c7f67d1c4a3825aee1f", + "rev": "61cd682f2a25175996bc1b9e8d8231e76cded866", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc7", + "inputRev": "v4.29.0-rc8", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 8fd6ae5b6..6a1d86c9a 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-24" +rev = "nightly-testing-2026-03-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index de7cb2ba9..b222dcbd6 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-24 +leanprover/lean4:nightly-2026-03-25 From eded9ac42cf1b26e8357cf7cc16322768489e2fb Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> Date: Thu, 26 Mar 2026 12:43:53 -0400 Subject: [PATCH 198/253] chore: adaptations for nightly-2026-03-25 (#459) Co-authored-by: mathlib4-bot Co-authored-by: leanprover-community-mathlib4-bot <129911861+leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Kim Morrison Co-authored-by: leanprover-community-mathlib4-bot Co-authored-by: Chris Henson Co-authored-by: Chris Henson <46805207+chenson2018@users.noreply.github.com> Co-authored-by: Kim Morrison <477956+kim-em@users.noreply.github.com> Co-authored-by: Ching-Tsun Chou Co-authored-by: Alexandre Rademaker Co-authored-by: mathlib-nightly-testing[bot] Co-authored-by: mathlib-nightly-testing[bot] <258991302+mathlib-nightly-testing[bot]@users.noreply.github.com> --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index c6ca653aa..a3d46b67b 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "0037610a33ecd84750e346a72af0981dd0e71c58", + "rev": "f80b5e44ea5c7ba214391d936e993462fb1f0e0a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-24", + "inputRev": "nightly-testing-2026-03-25", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4d955ffd04d5f6d1143c5bf8fffab59ea7d84595", + "rev": "22a0afa903bcf65285152eea298a3d319badc78d", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4270b99dc7c5e90d5ee5c6cb2dd91aaba5b19557", + "rev": "db22912cdd820b2a2bd84bd25273cb322ff09ead", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "81c23850e7c2b5f82ed16e3569def2fe0f52e1c9", + "rev": "da8a068708756fcc8aa953efc0dd95094b73a934", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "33583e6fb5096defc38f0c7f67d1c4a3825aee1f", + "rev": "61cd682f2a25175996bc1b9e8d8231e76cded866", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc7", + "inputRev": "v4.29.0-rc8", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 8fd6ae5b6..6a1d86c9a 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-24" +rev = "nightly-testing-2026-03-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index de7cb2ba9..b222dcbd6 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-24 +leanprover/lean4:nightly-2026-03-25 From ba9b3084fd63fc7e0c12775912799072a093962b Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 31 Mar 2026 21:20:38 +0000 Subject: [PATCH 199/253] chore: bump to nightly-2026-03-31 with mathlib at nightly-testing-2026-03-31 --- lake-manifest.json | 18 +++++++++--------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a3d46b67b..90a359327 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f80b5e44ea5c7ba214391d936e993462fb1f0e0a", + "rev": "4047fec9d1b8d510609b0a97a7268cd2887a0845", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-25", + "inputRev": "nightly-testing-2026-03-31", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "22a0afa903bcf65285152eea298a3d319badc78d", + "rev": "83e90935a17ca19ebe4b7893c7f7066e266f50d3", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "db22912cdd820b2a2bd84bd25273cb322ff09ead", + "rev": "48d5698bc464786347c1b0d859b18f938420f060", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -45,10 +45,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "d9625b5bbeb3fade5a2cb3cc9b764b96d8106fd2", + "rev": "deb22fb93be72adcd7cacfc47e280193e2ab011e", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "v0.0.92-pre1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "da8a068708756fcc8aa953efc0dd95094b73a934", + "rev": "81df60304bb26e3e1efc6ee9b07fb387dac19108", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "61cd682f2a25175996bc1b9e8d8231e76cded866", + "rev": "7802da01beb530bf051ab657443f9cd9bc3e1a29", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0-rc8", + "inputRev": "v4.29.0", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 6a1d86c9a..c78c7f002 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-25" +rev = "nightly-testing-2026-03-31" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index b222dcbd6..3911411c4 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-25 +leanprover/lean4:nightly-2026-03-31 From 35d6de960af1124aa8b8ee9aab8568b281c2efe2 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Wed, 1 Apr 2026 00:04:33 +0200 Subject: [PATCH 200/253] grind failure in nth_of_strictMono (transparency?) --- Cslib/Foundations/Data/Nat/Segment.lean | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index be061363b..8345cf331 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -59,8 +59,12 @@ theorem nth_succ_gap {p : ℕ → Prop} (hf : (setOf p).Infinite) (n : ℕ) : element of the range of `f`. -/ theorem nth_of_strictMono (hm : StrictMono f) (n : ℕ) : f n = nth (· ∈ range f) n := by - have (hf : (range f).Finite) : False := hf.not_infinite (strictMono_infinite hm) - rw [←nth_comp_of_strictMono hm] <;> first | grind | simp + rw [← nth_comp_of_strictMono hm] + · simp + · simp + · intros + have : (range f).Infinite := strictMono_infinite hm + contradiction open scoped Classical in /-- If `f 0 = 0`, then `0` is below any `n` not in the range of `f`. -/ From 3df6d030c07bc4159fce352c967c8bc7e4ec189c Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Wed, 1 Apr 2026 13:29:42 +0000 Subject: [PATCH 201/253] chore: bump to nightly-2026-04-01 with mathlib at nightly-testing-2026-04-01 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 90a359327..780751564 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "4047fec9d1b8d510609b0a97a7268cd2887a0845", + "rev": "f95219a959062bacea64da2938fa20ac05320301", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-03-31", + "inputRev": "nightly-testing-2026-04-01", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "81df60304bb26e3e1efc6ee9b07fb387dac19108", + "rev": "bbce955199ecd027a4706410de098bdd2804f9a9", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index c78c7f002..5f3e8d8d2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-03-31" +rev = "nightly-testing-2026-04-01" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 3911411c4..db10ba331 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-03-31 +leanprover/lean4:nightly-2026-04-01 From ba9a3f0d8a4f340df9c79555dc0e0bcd81450122 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 09:03:13 +0200 Subject: [PATCH 202/253] add an adaptation note --- Cslib/Foundations/Data/Nat/Segment.lean | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index 8345cf331..196e9bb2f 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -62,7 +62,9 @@ theorem nth_of_strictMono (hm : StrictMono f) (n : ℕ) : rw [← nth_comp_of_strictMono hm] · simp · simp - · intros + · #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + intros have : (range f).Infinite := strictMono_infinite hm contradiction From 6936134a4fa547875ba449f77c9e1b7ebc1acc80 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 09:31:07 +0200 Subject: [PATCH 203/253] grind regression in Proof.expand_onlyAtomicAxioms_dual --- Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean index de4cfdb95..a82301f63 100644 --- a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean +++ b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean @@ -108,7 +108,17 @@ open Proposition Proof in @[local grind →] private lemma Proof.expand_onlyAtomicAxioms_dual {a : Proposition Atom} : a.expand.onlyAtomicAxioms → a⫠.expand.onlyAtomicAxioms := by - induction a <;> grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + induction a with + | one => simp +contextual [dual, expand, onlyAtomicAxioms] + | bot => + intro h + rw [←h] + congr 1 + · grind + · simp [dual, expand, rwConclusion, Logic.InferenceSystem.rwConclusion] + | _ => grind open Proposition Proof in /-- η-expansion is correct: the proof returned by η-expansion contains only atomic axioms. -/ From 49aa6273dcb5e561725c60c50afac23c8e944ec5 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 10:27:19 +0200 Subject: [PATCH 204/253] segment_range_val grind regressions --- Cslib/Foundations/Data/Nat/Segment.lean | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Cslib/Foundations/Data/Nat/Segment.lean b/Cslib/Foundations/Data/Nat/Segment.lean index 196e9bb2f..9a7240883 100644 --- a/Cslib/Foundations/Data/Nat/Segment.lean +++ b/Cslib/Foundations/Data/Nat/Segment.lean @@ -158,11 +158,16 @@ theorem segment_range_val (hm : StrictMono f) {m k : ℕ} · obtain ⟨j, h_j, rfl⟩ : ∃ j < f (m + 1) - f m - 1, k = j + f m + 1 := ⟨k - f m - 1, by omega⟩ induction j case zero => - have : count (· ∈ range f) (f m + 1 + 1) = count (· ∈ range f) (f m + 1) := by - have := strictMono_range_gap hm (show f m < f m + 1 by grind) - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have := strictMono_range_gap hm (show f m < f m + 1 by grind) + have : count (· ∈ range f) (f m + 1 + 1) = count (· ∈ range f) (f m + 1) := by grind have := nth_of_strictMono hm m - grind [count_nth_of_infinite, strictMono_infinite] + have := count_succ (· ∈ range f) + simp_all only [segment, mem_range] + split + · grind [count_nth_of_infinite (strictMono_infinite hm) m] + · grind case succ j _ => have := strictMono_range_gap hm (show f m < j + 1 + f m by grind) have := strictMono_range_gap hm (show f m < j + 1 + f m + 1 by grind) From fad1506130c128f5e716719d3bcec5ea897e6e27 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 10:40:29 +0200 Subject: [PATCH 205/253] map_toCompCfg_left_step grind regression --- Cslib/Computability/Machines/SingleTapeTuring/Basic.lean | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Machines/SingleTapeTuring/Basic.lean b/Cslib/Computability/Machines/SingleTapeTuring/Basic.lean index 4f31c1530..4d37134ac 100644 --- a/Cslib/Computability/Machines/SingleTapeTuring/Basic.lean +++ b/Cslib/Computability/Machines/SingleTapeTuring/Basic.lean @@ -306,7 +306,9 @@ private theorem map_toCompCfg_left_step (hcfg1 : cfg1.state.isSome) : simp only [step, toCompCfg_left, compComputer] generalize hM : tm1.tr q BiTape.head = result obtain ⟨⟨wr, dir⟩, nextState⟩ := result - cases nextState <;> grind [toCompCfg_left] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + cases nextState <;> (simp_all; rfl) /-- The right converting function commutes with steps of the machines. -/ private theorem map_toCompCfg_right_step : From 4500048bbc852917e5ce7267ec931289f5198876 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 10:46:00 +0200 Subject: [PATCH 206/253] mem_biSup --- Cslib/Computability/Languages/Language.lean | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Cslib/Computability/Languages/Language.lean b/Cslib/Computability/Languages/Language.lean index e02b50aaf..acba1ed03 100644 --- a/Cslib/Computability/Languages/Language.lean +++ b/Cslib/Computability/Languages/Language.lean @@ -30,14 +30,13 @@ theorem mem_biInf {I : Type*} (s : Set I) (l : I → Language α) (x : List α) (x ∈ ⨅ i ∈ s, l i) ↔ ∀ i ∈ s, x ∈ l i := mem_iInter₂ +#adaptation_note +/-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ @[simp] theorem mem_biSup {I : Type*} (s : Set I) (l : I → Language α) (x : List α) : - (x ∈ ⨆ i ∈ s, l i) ↔ ∃ i ∈ s, x ∈ l i := by - constructor <;> intro h - · have := mem_iUnion₂.mp h - grind - · apply mem_iUnion₂.mpr - grind + (x ∈ ⨆ i ∈ s, l i) ↔ ∃ i ∈ s, x ∈ l i where + mp h := bex_def.mp (mem_iUnion₂.mp h) + mpr h := mem_iUnion₂.mpr (bex_def.mpr h) theorem le_one_iff_eq : l ≤ 1 ↔ l = 0 ∨ l = 1 := subset_singleton_iff_eq From c0ace9d8005d909b0a9e8acd01b0ed1b87023220 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 11:23:05 +0200 Subject: [PATCH 207/253] sub_one_mul grind regressions --- Cslib/Computability/Languages/Language.lean | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/Cslib/Computability/Languages/Language.lean b/Cslib/Computability/Languages/Language.lean index acba1ed03..9e68209c4 100644 --- a/Cslib/Computability/Languages/Language.lean +++ b/Cslib/Computability/Languages/Language.lean @@ -49,17 +49,23 @@ theorem mem_sub_one (x : List α) : x ∈ (l - 1) ↔ x ∈ l ∧ x ≠ [] := theorem reverse_sub (l m : Language α) : (l - m).reverse = l.reverse - m.reverse := by ext x; simp [mem_sub] +#adaptation_note +/-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ @[scoped grind =] theorem sub_one_mul : (l - 1) * l = l * l - 1 := by ext x; constructor · rintro ⟨u, h_u, v, h_v, rfl⟩ constructor - · refine ⟨u, ?_, v, ?_⟩ <;> grind - · grind [append_eq_nil_iff, mem_one] + · exact ⟨u, Set.mem_of_mem_inter_left h_u, v, h_v, rfl⟩ + · by_contra h + have := mem_sub_one u |>.mp h_u + have := mem_one (u ++ v) |>.mp h + grind [append_eq_nil_iff] · rintro ⟨⟨u, h_u, v, h_v, rfl⟩, h_x⟩ rcases eq_or_ne u [] with (rfl | h_u') - · refine ⟨v, ?_, [], ?_⟩ <;> grind [mem_sub, mem_one] - · refine ⟨u, ?_, v, ?_⟩ <;> grind + · use v, (mem_sub l 1 v |>.mpr) ⟨h_v, Not.intro h_x⟩, [] + grind [mem_sub, mem_one] + · use u, (mem_sub_one u).mpr ⟨h_u, h_u'⟩, v @[scoped grind =] theorem mul_sub_one : l * (l - 1) = l * l - 1 := by From e1f0e48bbd496a11d6f8a992d543ffccca3cd74e Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 22:04:53 +0200 Subject: [PATCH 208/253] kstar_sub_one grind regression --- Cslib/Computability/Languages/Language.lean | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Languages/Language.lean b/Cslib/Computability/Languages/Language.lean index 9e68209c4..d9ac2a530 100644 --- a/Cslib/Computability/Languages/Language.lean +++ b/Cslib/Computability/Languages/Language.lean @@ -75,6 +75,8 @@ theorem mul_sub_one : l * (l - 1) = l * l - 1 := by _ = (l.reverse * l.reverse - 1).reverse := by rw [sub_one_mul] _ = _ := by rw [reverse_sub, reverse_one, reverse_mul, reverse_reverse] +#adaptation_note +/-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ @[scoped grind =] theorem kstar_sub_one : l∗ - 1 = (l - 1) * l∗ := by ext x; constructor @@ -82,8 +84,8 @@ theorem kstar_sub_one : l∗ - 1 = (l - 1) * l∗ := by obtain ⟨xl, rfl, h_xl⟩ := kstar_def_nonempty l ▸ h1 have h3 : ¬ xl = [] := by grind [one_def] obtain ⟨x, xl', h_xl'⟩ := exists_cons_of_ne_nil h3 - have := h_xl x - refine ⟨x, ?_, xl'.flatten, ?_, ?_⟩ <;> grind [join_mem_kstar] + subst h_xl' + refine ⟨x, mem_preimage.mp (h_xl x ?_), xl'.flatten, join_mem_kstar ?_, ?_⟩ <;> grind · rintro ⟨y, ⟨h_y, h_1⟩, z, h_z, rfl⟩ refine ⟨?_, ?_⟩ · apply (show l * l∗ ≤ l∗ by exact mul_kstar_le_kstar) From a411b73a587bab207d7110e9282ff499c066bbd5 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 22:15:23 +0200 Subject: [PATCH 209/253] omegaPow_eq_empty grind regression --- Cslib/Computability/Languages/OmegaLanguage.lean | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Languages/OmegaLanguage.lean b/Cslib/Computability/Languages/OmegaLanguage.lean index a761e7182..4e11c2db4 100644 --- a/Cslib/Computability/Languages/OmegaLanguage.lean +++ b/Cslib/Computability/Languages/OmegaLanguage.lean @@ -279,11 +279,14 @@ theorem one_omegaPow [Inhabited α] : (1 : Language α)^ω = ⊥ := by theorem omegaPow_of_le_one [Inhabited α] (h : l ≤ 1) : l^ω = ⊥ := by cases (Language.le_one_iff_eq.mp h) <;> simp_all +#adaptation_note +/-- A grind regression found moving to nightly-2026-03-31 (from lean#13166? seems different) -/ theorem omegaPow_eq_empty [Inhabited α] (h : l^ω = ⊥) : l ≤ 1 := by intro x h_x by_contra h_contra suffices h' : (const x).flatten ∈ l^ω by simp [h] at h' - exact ⟨const x, rfl, by grind [Language.mem_sub]⟩ + use const x, rfl + exact fun _ => ⟨h_x, h_contra⟩ /-- An alternative characterization of `l * p`. -/ theorem hmul_seq_prop : l * p = { s | ∃ k, s.take k ∈ l ∧ s.drop k ∈ p } := by From a17ca1b4a14344d826b97fb2cf911677e64f5032 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Thu, 2 Apr 2026 22:44:15 +0200 Subject: [PATCH 210/253] omegaPow_le_hmul_omegaPow' grind regression --- Cslib/Computability/Languages/OmegaLanguage.lean | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Languages/OmegaLanguage.lean b/Cslib/Computability/Languages/OmegaLanguage.lean index 4e11c2db4..662baf1d3 100644 --- a/Cslib/Computability/Languages/OmegaLanguage.lean +++ b/Cslib/Computability/Languages/OmegaLanguage.lean @@ -340,11 +340,13 @@ theorem omegaPow_coind [Inhabited α] (h_le : p ≤ (l - 1) * p) : p ≤ l^ω := refine omegaPow_coind' ?_ h_le simp +#adaptation_note +/-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ theorem omegaPow_le_hmul_omegaPow' [Inhabited α] (l : Language α) : l^ω ≤ (l - 1) * l^ω := by rintro s ⟨xs, rfl, h_xs⟩ - refine ⟨xs.head, ?_, xs.tail.flatten, ⟨xs.tail, rfl, ?_⟩, ?_⟩ <;> - grind [Language.mem_sub_one, Language.mem_sub_one, List.ne_nil_iff_length_pos] + refine ⟨xs.head, h_xs 0, xs.tail.flatten, ⟨xs.tail, rfl, ?_⟩, ?_⟩ <;> + grind [l.mem_sub_one] theorem omegaPow_le_hmul_omegaPow [Inhabited α] (l : Language α) : l^ω ≤ l * l^ω := by have h1 := omegaPow_le_hmul_omegaPow' l From 2d6cdbccc4d2248e7e9cc95a2c33ece349e7ef6d Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 3 Apr 2026 08:26:40 +0200 Subject: [PATCH 211/253] biorth_least_fact --- Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean index 536cb6a5a..5821eddf1 100644 --- a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean @@ -257,7 +257,13 @@ lemma biorth_least_fact (G : Set P) : have h_min : ∀ {F : Set P}, isFact F → G ⊆ F → G⫠⫠ ⊆ F := by intro F hF hGF - have : F = c F := by grind [isFact] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have : F = c F := by + simp only [isFact] at hF + rw [hF] + symm at hF ⊢ + apply ClosureOperator.IsClosed.closure_eq (congrArg orthogonal (congrArg orthogonal hF)) have hF_closed : c.IsClosed F := (c.isClosed_iff).2 this.symm simpa [c] using ClosureOperator.closure_min hGF hF_closed apply h_min From 11bb7a897ef5e96732962890eff751c0da678d24 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 3 Apr 2026 08:29:25 +0200 Subject: [PATCH 212/253] tensor_of_par --- Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean index 5821eddf1..a2d1d7ad8 100644 --- a/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean +++ b/Cslib/Logics/LinearLogic/CLL/PhaseSemantics/Basic.lean @@ -446,7 +446,9 @@ lemma tensor_of_par {G H : Fact P} : (G ⊗ H) = (Gᗮ ⅋ Hᗮ)ᗮ := SetLike.coe_injective <| by simp only [tensor, parr, dualFact, mk_dual, mk_subset, coe_mk] rw [G.eq, H.eq] - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + rfl lemma par_of_tensor {G H : Fact P} : (G ⅋ H) = (Gᗮ ⊗ Hᗮ)ᗮ := by simp [tensor_of_par] From 7b312aa1f9ada07c6fa6b32877323054667846f2 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 3 Apr 2026 08:37:09 +0200 Subject: [PATCH 213/253] bisimilarity_congr_res --- Cslib/Languages/CCS/BehaviouralTheory.lean | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Cslib/Languages/CCS/BehaviouralTheory.lean b/Cslib/Languages/CCS/BehaviouralTheory.lean index 83850eb12..ad06cf635 100644 --- a/Cslib/Languages/CCS/BehaviouralTheory.lean +++ b/Cslib/Languages/CCS/BehaviouralTheory.lean @@ -283,17 +283,25 @@ theorem bisimilarity_congr_res : case left => intro s1' htr cases htr with | res _ _ htr => - obtain ⟨q', _⟩ := Bisimilarity.is_bisimulation.follow_fst h htr + obtain ⟨q', _, bisim⟩ := Bisimilarity.is_bisimulation.follow_fst h htr exists res a q' unfold lts at * - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + split_ands + · grind + · exact ResBisim.res bisim case right => intro s2' htr cases htr with | res _ _ htr => - obtain ⟨p', _⟩ := Bisimilarity.is_bisimulation.follow_snd h htr + obtain ⟨p', _, bisim⟩ := Bisimilarity.is_bisimulation.follow_snd h htr exists res a p' unfold lts at * - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + split_ands + · grind + · exact ResBisim.res bisim private inductive ChoiceBisim : Process Name Constant → Process Name Constant → Prop where | choice : (p ~[lts (defs := defs)] q) → ChoiceBisim (choice p r) (choice q r) From 96f0752759e186883cd39e12271fa861d93a18f1 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 3 Apr 2026 10:10:26 +0200 Subject: [PATCH 214/253] omegaPow_coind' --- Cslib/Computability/Languages/OmegaLanguage.lean | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Languages/OmegaLanguage.lean b/Cslib/Computability/Languages/OmegaLanguage.lean index 662baf1d3..8d0892386 100644 --- a/Cslib/Computability/Languages/OmegaLanguage.lean +++ b/Cslib/Computability/Languages/OmegaLanguage.lean @@ -328,8 +328,18 @@ theorem omegaPow_coind' [Inhabited α] (h_nn : [] ∉ l) (h_le : p ≤ l * p) : grind [extract_eq_drop_take] choose nxt_n nxt_p using h_nxt let f := iter_helper (fun n ↦ s.drop n ∈ p) nxt_n - have h_f (n) : f n < f (n + 1) ∧ s.extract (f n) (f (n + 1)) ∈ l ∧ s.drop (f (n + 1)) ∈ p := by - induction n <;> grind [iter_helper] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have _ (n) : f n < f (n + 1) := by + induction n + · simp only [f, iter_helper] + split_ifs with h + · simp_all + · simp [drop_zero] at h + contradiction + · grind [iter_helper] + have _ (n) : s.extract (f n) (f (n + 1)) ∈ l ∧ s.drop (f (n + 1)) ∈ p := by + induction n <;> grind [iter_helper] rw [omegaPow_seq_prop] use f grind [strictMono_nat_of_lt_succ, iter_helper] From 2bc82dcc9373bd894fe967f2b16bcb8c38165f61 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Fri, 3 Apr 2026 10:14:21 +0200 Subject: [PATCH 215/253] remove import from cslib#467 in nightly-testing temporarily --- Cslib/Computability/URM/Basic.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Computability/URM/Basic.lean b/Cslib/Computability/URM/Basic.lean index bdedd9b0a..2e1544cc6 100644 --- a/Cslib/Computability/URM/Basic.lean +++ b/Cslib/Computability/URM/Basic.lean @@ -7,7 +7,7 @@ module public import Cslib.Computability.URM.Defs public import Mathlib.Data.List.MinMax -public import Mathlib.Data.List.Fold +--public import Mathlib.Data.List.Fold /-! # URM Basic Lemmas From a5d6b5c9ad94fd330345b16d51af41c8b24f6c0b Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Fri, 3 Apr 2026 09:50:41 -0700 Subject: [PATCH 216/253] Fix grind failure in NA/toDA.lean --- Cslib/Computability/Automata/NA/ToDA.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/ToDA.lean b/Cslib/Computability/Automata/NA/ToDA.lean index 041f6ab34..a95e2affe 100644 --- a/Cslib/Computability/Automata/NA/ToDA.lean +++ b/Cslib/Computability/Automata/NA/ToDA.lean @@ -42,7 +42,7 @@ open scoped DA.FinAcc LTS in theorem toDAFinAcc_language_eq {na : NA.FinAcc State Symbol} : language na.toDAFinAcc = language na := by ext xs - grind + grind [Accepts] end FinAcc From 72521c2aa041a720482cf025f9c01ae9d66a8fbd Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Fri, 3 Apr 2026 10:04:43 -0700 Subject: [PATCH 217/253] Fix grind failure in NA/toDA.lean --- Cslib/Computability/Automata/NA/ToDA.lean | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Cslib/Computability/Automata/NA/ToDA.lean b/Cslib/Computability/Automata/NA/ToDA.lean index a95e2affe..3fa43ee86 100644 --- a/Cslib/Computability/Automata/NA/ToDA.lean +++ b/Cslib/Computability/Automata/NA/ToDA.lean @@ -42,6 +42,8 @@ open scoped DA.FinAcc LTS in theorem toDAFinAcc_language_eq {na : NA.FinAcc State Symbol} : language na.toDAFinAcc = language na := by ext xs + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ grind [Accepts] end FinAcc From 239fd9e9a5153e199710b61c09f09e4a873c3746 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 4 Apr 2026 10:14:56 +0200 Subject: [PATCH 218/253] toNAFinAcc_language_eq grind regression --- Cslib/Computability/Automata/EpsilonNA/ToNA.lean | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/EpsilonNA/ToNA.lean b/Cslib/Computability/Automata/EpsilonNA/ToNA.lean index 4882cf657..35c48e10c 100644 --- a/Cslib/Computability/Automata/EpsilonNA/ToNA.lean +++ b/Cslib/Computability/Automata/EpsilonNA/ToNA.lean @@ -52,7 +52,9 @@ theorem toNAFinAcc_language_eq {ena : εNA.FinAcc State Symbol} : ext xs have : ∀ s s', ena.saturate.MTr s (xs.map some) s' = ena.saturate.noε.MTr s xs s' := by simp [LTS.noε_saturate_mTr] - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + grind [Accepts] end Automata.εNA.FinAcc From bcc64c638bb96b36dec0a2b02d2e03041b70bd8e Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 4 Apr 2026 10:41:15 +0200 Subject: [PATCH 219/253] toNAFinAcc_language_eq grind regression --- Cslib/Computability/Automata/DA/ToNA.lean | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Automata/DA/ToNA.lean b/Cslib/Computability/Automata/DA/ToNA.lean index dabbdc147..4127535a6 100644 --- a/Cslib/Computability/Automata/DA/ToNA.lean +++ b/Cslib/Computability/Automata/DA/ToNA.lean @@ -54,11 +54,13 @@ open scoped FLTS NA.FinAcc in theorem toNAFinAcc_language_eq {a : DA.FinAcc State Symbol} : language a.toNAFinAcc = language a := by ext xs + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ constructor - · grind + · simp_all [mem_language a xs, Accepts, toNAFinAcc, toNA, FLTS.toLTS_mtr] · intro _ use a.start - grind + simp_all [Accepts, toNAFinAcc, toNA, FLTS.toLTS_mtr] end FinAcc From 73597702f9695dfe83967a1a785e2a997c05c17c Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sat, 4 Apr 2026 18:29:48 +0200 Subject: [PATCH 220/253] toNABuchi_language_eq --- Cslib/Computability/Automata/DA/ToNA.lean | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Cslib/Computability/Automata/DA/ToNA.lean b/Cslib/Computability/Automata/DA/ToNA.lean index 4127535a6..8e8bec77a 100644 --- a/Cslib/Computability/Automata/DA/ToNA.lean +++ b/Cslib/Computability/Automata/DA/ToNA.lean @@ -72,16 +72,19 @@ def toNABuchi (a : DA.Buchi State Symbol) : NA.Buchi State Symbol := { a.toNA with accept := a.accept } open ωAcceptor in -open scoped NA.Buchi in /-- The `NA.Buchi` constructed from a `DA.Buchi` has the same ω-language. -/ @[simp, scoped grind _=_] theorem toNABuchi_language_eq {a : DA.Buchi State Symbol} : language a.toNABuchi = language a := by ext xs; constructor - · grind - · intro _ + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + · simp_all [Accepts, language, toNABuchi] + · intro h use (a.run xs) - grind + split_ands + · grind + · exact Filter.frequently_map.mp h end Buchi From 024f2e4078b1aff88af58941ac0d6ad31de9e8db Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 5 Apr 2026 19:46:44 +0200 Subject: [PATCH 221/253] congr_language_eq --- Cslib/Computability/Automata/DA/Congr.lean | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/DA/Congr.lean b/Cslib/Computability/Automata/DA/Congr.lean index 6301073dc..5d3d47eeb 100644 --- a/Cslib/Computability/Automata/DA/Congr.lean +++ b/Cslib/Computability/Automata/DA/Congr.lean @@ -58,7 +58,11 @@ the equivalence class corresponding to `s`. -/ @[simp] theorem congr_language_eq {a : Quotient c.eq} : language (FinAcc.mk c.toDA {a}) = eqvCls a := by ext - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + constructor <;> + · intro h + simpa [mem_language, Accepts, congr_mtr_eq] using h end FinAcc From 0dc60b075b548534bb8d100e0280708961dd8085 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 5 Apr 2026 19:54:37 +0200 Subject: [PATCH 222/253] reindex_language_eq --- Cslib/Computability/Automata/NA/BuchiEquiv.lean | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/BuchiEquiv.lean b/Cslib/Computability/Automata/NA/BuchiEquiv.lean index 3c065975d..607d48a57 100644 --- a/Cslib/Computability/Automata/NA/BuchiEquiv.lean +++ b/Cslib/Computability/Automata/NA/BuchiEquiv.lean @@ -60,7 +60,10 @@ theorem reindex_language_eq {f : State ≃ State'} {nba : Buchi State Symbol} : ext xs constructor · rintro ⟨ss', h_run', h_acc'⟩ - grind [reindex_run_iff] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + simp only [mem_language, Accepts] + exact frequently_principal.mp (· (reindex_run_iff.mp h_run') h_acc') · rintro ⟨ss, h_run, h_acc⟩ use ss.map f constructor <;> grind [reindex_run_iff'] From 31204e72f7dabc91ff745dd80aeb661e66f58fda Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 5 Apr 2026 20:12:28 +0200 Subject: [PATCH 223/253] Proof.expand_onlyAtomicAxioms --- Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean index a82301f63..fdbf0f934 100644 --- a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean +++ b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean @@ -123,6 +123,18 @@ private lemma Proof.expand_onlyAtomicAxioms_dual {a : Proposition Atom} : open Proposition Proof in /-- η-expansion is correct: the proof returned by η-expansion contains only atomic axioms. -/ theorem Proof.expand_onlyAtomicAxioms (a : Proposition Atom) : a.expand.onlyAtomicAxioms := by - induction a <;> grind [onlyAtomicAxioms_rwConclusion] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + induction a with + | one => + rw [←dual_involution .one] + apply expand_onlyAtomicAxioms_dual + simp [expand, onlyAtomicAxioms, dual] + | zero => + rw [←dual_involution .zero] + apply expand_onlyAtomicAxioms_dual + simp [expand, onlyAtomicAxioms, dual] + | top | bot => simp [expand, onlyAtomicAxioms] + | _ => grind end Cslib.CLL From 4a84152409261d3c0cab7e86fe127a4d2628621b Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 5 Apr 2026 20:25:55 +0200 Subject: [PATCH 224/253] loop_language_eq --- Cslib/Computability/Automata/NA/Loop.lean | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index 5f4f64b94..357c5fca5 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -145,8 +145,10 @@ theorem loop_language_eq [Inhabited Symbol] : rintro xs ⟨ss, h_run, h_acc⟩ obtain ⟨k, h1, h2⟩ : ∃ k > 0, (ss k).isLeft := by grind [FinAcc.loop, frequently_atTop'.mp h_acc 0] - obtain ⟨n, _⟩ := loop_run_one_iter h_run h1 h2 - refine ⟨xs.take n, by grind, xs.drop n, ?_, by simp⟩ + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + obtain ⟨n, _, h, _⟩ := loop_run_one_iter h_run h1 h2 + refine ⟨xs.take n, h, xs.drop n, ?_, by simp⟩ refine ⟨ss.drop n, by grind, ?_⟩ apply (drop_frequently_iff_frequently n).mpr grind From 65f8b271f8a810216e101f9807ef9aaf9ea18af0 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 5 Apr 2026 14:32:35 -0700 Subject: [PATCH 225/253] Fix grind failure in Automata/NA/Sum.lean --- Cslib/Computability/Automata/NA/Sum.lean | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/Sum.lean b/Cslib/Computability/Automata/NA/Sum.lean index 541e15243..2fafad955 100644 --- a/Cslib/Computability/Automata/NA/Sum.lean +++ b/Cslib/Computability/Automata/NA/Sum.lean @@ -71,7 +71,9 @@ theorem iSum_language_eq {na : (i : I) → NA (State i) Symbol} {acc : (i : I) constructor · rintro ⟨ss, h_run, h_acc⟩ simp only [mem_iUnion] at h_acc - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + grind [Accepts] · rintro ⟨i, ss_i, _⟩ use ss_i.map (Sigma.mk i) simp only [mem_iUnion] From f1ea3d55443f8ee64e10433ddfd99951f8d2284a Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 5 Apr 2026 14:53:50 -0700 Subject: [PATCH 226/253] Fix grind failures in Automata/NA/Concat.lean --- Cslib/Computability/Automata/NA/Concat.lean | 25 ++++++++++++++------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Concat.lean b/Cslib/Computability/Automata/NA/Concat.lean index 6e7dac29a..168621c18 100644 --- a/Cslib/Computability/Automata/NA/Concat.lean +++ b/Cslib/Computability/Automata/NA/Concat.lean @@ -159,22 +159,31 @@ theorem finConcat_language_eq [Inhabited Symbol] : obtain ⟨xs, ss, h_ωtr, rfl, rfl⟩ := LTS.Total.extend_omegaExecution h_mtr have hc : (finConcat na1 na2).Run (xl ++ω xs) ss := by grind [Run] have hr : (ss xl.length).isRight := by grind - obtain ⟨n, _⟩ := concat_run_proj hc hr + obtain ⟨n, _, _, ss2, h_run2, _⟩ := concat_run_proj hc hr refine ⟨xl.take n, ?_, xl.drop n, ?_, ?_⟩ · grind [totalize_language_eq, take_append_of_le_length] · have : ss xl.length = (ss.drop n) (xl.length - n) := by grind - grind [drop_append_of_le_length, take_append_of_le_length, totalize_run_mtr] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have : ss xl.length = inr (ss2 (xl.length - n)) := by grind + have hl : (ss2 (xl.length - n)).isLeft := by grind + obtain ⟨s2, t2, h_mtr2, _, _, _⟩ := totalize_run_mtr h_run2 hl + refine ⟨s2, ?_, t2, ?_, ?_⟩ <;> grind [drop_append_of_le_length, take_append_of_le_length] · exact xl.take_append_drop n · rintro ⟨xl1, h_xl1, xl2, h_xl2, rfl⟩ rw [← totalize_language_eq] at h_xl1 obtain ⟨_, h_s2, _, _, h_mtr2⟩ := h_xl2 - obtain ⟨_, _, h_run2, _, _⟩ := totalize_mtr_run h_s2 h_mtr2 + obtain ⟨_, ss2, h_run2, _, _⟩ := totalize_mtr_run h_s2 h_mtr2 obtain ⟨ss, ⟨_, h_ωtr⟩, _⟩ := concat_run_exists h_xl1 h_run2 - grind [ - finConcat, List.length_append, take_append_of_le_length, - extract_eq_drop_take, =_ append_append_ωSequence, get_drop xl2.length xl1.length ss, - LTS.OmegaExecution.extract_mTr h_ωtr (zero_le (xl1.length + xl2.length)) - ] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have h_mtr := LTS.OmegaExecution.extract_mTr h_ωtr (zero_le (xl1.length + xl2.length)) + simp [← append_append_ωSequence, extract_eq_drop_take, + take_append_of_le_length, ← List.length_append] at h_mtr + have : ss (xl1.length + xl2.length) = (ss.drop xl1.length) xl2.length := by grind + have : ss (xl1.length + xl2.length) = inr (ss2 xl2.length) := by grind + refine ⟨ss 0, ?_, ss (xl1.length + xl2.length), ?_, ?_⟩ <;> + grind [finConcat, List.length_append] end FinAcc From 42f89c2adcfb7009779d24d294264c964804f165 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 5 Apr 2026 16:02:31 -0700 Subject: [PATCH 227/253] Fix grind failures in Automata/NA/Loop.lean --- Cslib/Computability/Automata/NA/Loop.lean | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index 357c5fca5..df75e2fb5 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -193,10 +193,18 @@ theorem loop_language_eq [Inhabited Symbol] (h : ¬ language na = 0) : obtain ⟨h1, h2⟩ : 0 < xl.length ∧ (ss xl.length).isLeft := by simp only [mem_singleton_iff] at h_acc grind - obtain ⟨n, h_n, _, _, h_ωtr'⟩ := loop_run_one_iter h_run h1 h2 + obtain ⟨n, h_n, h_take, h_drop, h_ωtr'⟩ := loop_run_one_iter h_run h1 h2 left; refine ⟨xl.take n, ?_, xl.drop n, ?_, ?_⟩ - · grind [totalize_language_eq, take_append_of_le_length] - · refine ⟨ss n, by grind, ss xl.length, by grind, ?_⟩ + · #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + -- The following code doesn't make any sense, but it is the only way I could make + -- the proof go through. + simp (disch := grind) [totalize_language_eq, take_append_of_le_length] at h_take + have := mem_sub_one (l := language na) (xl.take n) + apply this.mpr + simp [language] + grind + · refine ⟨ss n, by aesop, ss xl.length, by grind, ?_⟩ have := LTS.OmegaExecution.extract_mTr h_ωtr' (show 0 ≤ xl.length - n by grind) have : n + (xl.length - n) = xl.length := by grind have : ((xl ++ω xs).drop n).extract 0 (xl.length - n) = xl.drop n := by From 47e76a68135a01372738b62bf9ba7fb098e23703 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 5 Apr 2026 19:18:16 -0700 Subject: [PATCH 228/253] Use Robin Arnez's better proof in NA/Loop.lean --- Cslib/Computability/Automata/NA/Loop.lean | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Cslib/Computability/Automata/NA/Loop.lean b/Cslib/Computability/Automata/NA/Loop.lean index df75e2fb5..7bc0f2a16 100644 --- a/Cslib/Computability/Automata/NA/Loop.lean +++ b/Cslib/Computability/Automata/NA/Loop.lean @@ -197,13 +197,8 @@ theorem loop_language_eq [Inhabited Symbol] (h : ¬ language na = 0) : left; refine ⟨xl.take n, ?_, xl.drop n, ?_, ?_⟩ · #adaptation_note /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ - -- The following code doesn't make any sense, but it is the only way I could make - -- the proof go through. - simp (disch := grind) [totalize_language_eq, take_append_of_le_length] at h_take - have := mem_sub_one (l := language na) (xl.take n) - apply this.mpr - simp [language] - grind + change List.take n xl ∈ language na - 1 -- canonicalize membership instance + grind [totalize_language_eq, take_append_of_le_length] · refine ⟨ss n, by aesop, ss xl.length, by grind, ?_⟩ have := LTS.OmegaExecution.extract_mTr h_ωtr' (show 0 ≤ xl.length - n by grind) have : n + (xl.length - n) = xl.length := by grind From 42749fe395f7a147e97b8a0df949c3fb488687a0 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 10:58:46 +0200 Subject: [PATCH 229/253] IsRegular.{compl,zero} --- Cslib/Computability/Languages/RegularLanguage.lean | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Languages/RegularLanguage.lean b/Cslib/Computability/Languages/RegularLanguage.lean index af7e9f51b..d237a8222 100644 --- a/Cslib/Computability/Languages/RegularLanguage.lean +++ b/Cslib/Computability/Languages/RegularLanguage.lean @@ -61,7 +61,11 @@ theorem IsRegular.compl {l : Language Symbol} (h : l.IsRegular) : (lᶜ).IsRegul rw [IsRegular.iff_dfa] at h ⊢ obtain ⟨State, _, ⟨da, acc⟩, rfl⟩ := h use State, inferInstance, ⟨da, accᶜ⟩ - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + ext + simp only [language, Accepts] + rfl /-- The empty language is regular. -/ @[simp] @@ -69,7 +73,11 @@ theorem IsRegular.zero : (0 : Language Symbol).IsRegular := by rw [IsRegular.iff_dfa] let flts := FLTS.mk (fun () (_ : Symbol) ↦ ()) use Unit, inferInstance, ⟨DA.mk flts (), ∅⟩ - grind + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + ext + simp only [language, Accepts] + rfl /-- The language containing only the empty word is regular. -/ @[simp] From b484801e8606a2773af025ead37b3b1ffeafc484 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 11:02:40 +0200 Subject: [PATCH 230/253] finish off RegularLanguage --- Cslib/Computability/Languages/RegularLanguage.lean | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/Cslib/Computability/Languages/RegularLanguage.lean b/Cslib/Computability/Languages/RegularLanguage.lean index d237a8222..7ebaf3ae8 100644 --- a/Cslib/Computability/Languages/RegularLanguage.lean +++ b/Cslib/Computability/Languages/RegularLanguage.lean @@ -86,10 +86,12 @@ theorem IsRegular.one : (1 : Language Symbol).IsRegular := by let flts := FLTS.mk (fun (_ : Fin 2) (_ : Symbol) ↦ 1) use Fin 2, inferInstance, ⟨DA.mk flts 0, {0}⟩ ext; constructor + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ · intro h; by_contra h' have := dropLast_append_getLast h' - grind - · grind [Language.mem_one] + grind [Accepts] + · grind [Accepts, Language.mem_one] /-- The language of all finite words is regular. -/ @[simp] @@ -105,7 +107,9 @@ theorem IsRegular.inf {l1 l2 : Language Symbol} obtain ⟨State1, h_fin1, ⟨da1, acc1⟩, rfl⟩ := h1 obtain ⟨State2, h_fin1, ⟨da2, acc2⟩, rfl⟩ := h2 use State1 × State2, inferInstance, ⟨da1.prod da2, fst ⁻¹' acc1 ∩ snd ⁻¹' acc2⟩ - ext; grind [Language.mem_inf] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + ext; grind [Accepts, Language.mem_inf] /-- The union of two regular languages is regular. -/ @[simp] @@ -115,7 +119,9 @@ theorem IsRegular.add {l1 l2 : Language Symbol} obtain ⟨State1, h_fin1, ⟨da1, acc1⟩, rfl⟩ := h1 obtain ⟨State2, h_fin1, ⟨da2, acc2⟩, rfl⟩ := h2 use State1 × State2, inferInstance, ⟨da1.prod da2, fst ⁻¹' acc1 ∪ snd ⁻¹' acc2⟩ - ext; grind [Language.mem_add] + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + ext; grind [Accepts, Language.mem_add] /-- The intersection of any finite number of regular languages is regular. -/ @[simp] From 7a80f960ac7dc017c4ab35500d4cb7ad7a73d006 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 11:40:18 +0200 Subject: [PATCH 231/253] buchiCongruence_transfer --- .../Computability/Languages/Congruences/BuchiCongruence.lean | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean index 8a980b776..ba1cb0fd1 100644 --- a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean +++ b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean @@ -84,6 +84,10 @@ lemma buchiCongruence_transfer ( xl ∈ na.pairViaLang na.accept s t → ∃ r ∈ na.accept, r ∈ sl ) := by have h_eq : na.BuchiCongruence.eq xl yl := by apply Quotient.exact + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ + have : ⟦xl⟧ = a := mem_singleton_iff.mp <| mem_preimage.mp hc + have : ⟦yl⟧ = a := mem_singleton_iff.mp <| mem_preimage.mp hc' grind have := h_eq s t have h_yl : yl ∈ na.pairLang s t := by grind From 68db938989b1d389aaa3635c12919953dbfdd4f7 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 14:01:43 +0200 Subject: [PATCH 232/253] buchiFamily_cover --- .../Languages/Congruences/BuchiCongruence.lean | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean index ba1cb0fd1..c1da62ffb 100644 --- a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean +++ b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean @@ -125,14 +125,26 @@ theorem buchiFamily_cover [Inhabited Symbol] [Finite State] : use ⟦ xs.take (f 0) ⟧, b apply mem_buchiFamily.mpr use xs.take (f 0), xs.drop (f 0) |>.toSegs (f · - f 0) + #adaptation_note + /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ split_ands - · grind + · rfl · intro k specialize h_color {f k, f (k + 1)} have := @h_mono 0 k have := @h_mono k (k + 1) - grind [extract_drop, Finset.insert_nonempty, Finset.singleton_nonempty, min'_insert, - min'_singleton, max'_insert, max'_singleton, toSegs_def, Language.mem_sub_one] + simp only [Language.mem_sub_one, toSegs_def] + split_ands + · have : b = color {f k, f (k + 1)} := by grind + simp_all only [extract_drop, color] + split_ifs with h + · have : f k ≤ f (k + 1) := by lia + have : f 0 + (f k - f 0) = f k := by lia + have : f 0 + (f (k + 1) - f 0) = f (k + 1) := by lia + simp_all + rfl + · simp at h + · grind · grind [Nat.base_zero_strictMono h_mono] -- This intermediate result is split out of the proof of `buchiCongruence_saturation` below From 65285787bd1d99ac5e32742e1afa9f72160ce4d7 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 14:02:45 +0200 Subject: [PATCH 233/253] whitespace --- Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean index fdbf0f934..2810cb8a3 100644 --- a/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean +++ b/Cslib/Logics/LinearLogic/CLL/EtaExpansion.lean @@ -110,9 +110,9 @@ private lemma Proof.expand_onlyAtomicAxioms_dual {a : Proposition Atom} : a.expand.onlyAtomicAxioms → a⫠.expand.onlyAtomicAxioms := by #adaptation_note /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ - induction a with + induction a with | one => simp +contextual [dual, expand, onlyAtomicAxioms] - | bot => + | bot => intro h rw [←h] congr 1 From af786e3d900943e22263a8c15d6d7bf592eff02b Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 14:07:34 +0200 Subject: [PATCH 234/253] OmegaRegularLanguage --- Cslib/Computability/Languages/OmegaRegularLanguage.lean | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib/Computability/Languages/OmegaRegularLanguage.lean b/Cslib/Computability/Languages/OmegaRegularLanguage.lean index 526cd5e2a..58e7c4f5a 100644 --- a/Cslib/Computability/Languages/OmegaRegularLanguage.lean +++ b/Cslib/Computability/Languages/OmegaRegularLanguage.lean @@ -119,7 +119,7 @@ theorem IsRegular.sup {p1 p2 : ωLanguage Symbol} ext xs simp only [NA.Buchi.iSum_language_eq, mem_sup, mem_language] rw [mem_iUnion, Fin.exists_fin_two] - grind + rfl -- TODO: fix proof to work with backward.isDefEq.respectTransparency set_option backward.isDefEq.respectTransparency false in @@ -141,7 +141,7 @@ theorem IsRegular.inf {p1 p2 : ωLanguage Symbol} ext xs simp only [inter_language_eq, mem_inf, mem_language] rw [mem_iInter, Bool.forall_bool] - grind + rfl /-- The union of any finite number of ω-regular languages is ω-regular. -/ @[simp] From c8f5e578510329e92cf0fa12d678f9a533b10f24 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Mon, 6 Apr 2026 14:17:28 +0200 Subject: [PATCH 235/253] grind lint changes --- CslibTests/GrindLint.lean | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CslibTests/GrindLint.lean b/CslibTests/GrindLint.lean index 7c403f720..0a9d2d43d 100644 --- a/CslibTests/GrindLint.lean +++ b/CslibTests/GrindLint.lean @@ -79,6 +79,19 @@ open_scoped_all Cslib #grind_lint skip Cslib.Logic.HML.bisimulation_satisfies #grind_lint skip Cslib.Logic.HML.Satisfies.diamond #grind_lint skip Cslib.LambdaCalculus.LocallyNameless.Untyped.Term.step_multiApp_l +#adaptation_note +/-- (changes from lean#13166) -/ +#grind_lint skip Cslib.ωLanguage.map_id +#grind_lint skip Cslib.LTS.Bisimilarity.gfp +#grind_lint skip Cslib.LTS.Bisimilarity.is_bisimulation +#grind_lint skip Cslib.LTS.Bisimilarity.largest_bisimulation +#grind_lint skip Cslib.LTS.IsBisimulation.bot +#grind_lint skip Cslib.LTS.IsBisimulation.comp +#grind_lint skip Cslib.LTS.IsBisimulation.inv +#grind_lint skip Cslib.LTS.IsBisimulation.sup +#grind_lint skip Cslib.LTS.IsBisimulation.traceEq +#grind_lint skip Cslib.LTS.IsBisimulationUpTo.is_bisimulation +#grind_lint skip Cslib.Logic.HML.theoryEq_isBisimulation #guard_msgs in #grind_lint check (min := 20) in Cslib From 1f82feae5738a5e1a069bcbea7148f06e5015f9d Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 7 Apr 2026 10:19:18 +0000 Subject: [PATCH 236/253] chore: bump to nightly-2026-04-06 with mathlib at nightly-testing-2026-04-06 --- lake-manifest.json | 24 ++++++++++++------------ lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 780751564..f68ae0ecd 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "f95219a959062bacea64da2938fa20ac05320301", + "rev": "5212dc478426d5caca02fc5aea6df6d211fbdd7e", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-01", + "inputRev": "nightly-testing-2026-04-06", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "83e90935a17ca19ebe4b7893c7f7066e266f50d3", + "rev": "f449eabb8f7e3feef0366856c20e28a6d2c97ee3", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "48d5698bc464786347c1b0d859b18f938420f060", + "rev": "86503d416c875fdcf3b6b6c54c22581e96c6bda7", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -45,17 +45,17 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "deb22fb93be72adcd7cacfc47e280193e2ab011e", + "rev": "82d457fb3bdd9efadbae06608ff337d689efdddf", "name": "proofwidgets", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "v0.0.97", "inherited": true, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/aesop", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2ac0e066410c02c7f755c865c2a4770855d47291", + "rev": "ad416ddf6cc9d5b1c00eaf04a48e703538132760", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -65,7 +65,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "0b2df33836dabcfbb05acaf73179ca8bb21c34cf", + "rev": "bee778191c7fbea31864ecfe1809b8837626aba0", "name": "Qq", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,20 +75,20 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bbce955199ecd027a4706410de098bdd2804f9a9", + "rev": "bf597c77bf9b8e66720d724928207f5911533113", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing", + "inputRev": "v4.30.0-rc1", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", "type": "git", "subDir": null, "scope": "leanprover", - "rev": "7802da01beb530bf051ab657443f9cd9bc3e1a29", + "rev": "f7d0ca7c926cdde0562af20394dd25d028b839a5", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.29.0", + "inputRev": "v4.30.0-rc1", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 5f3e8d8d2..b3cfac2e2 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-01" +rev = "nightly-testing-2026-04-06" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index db10ba331..845eced43 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-01 +leanprover/lean4:nightly-2026-04-06 From fd0b4bc7a89ecf82cef3f804aadba0aa5e6b8685 Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Tue, 7 Apr 2026 06:37:06 -0400 Subject: [PATCH 237/253] chore: additional module directives from mk_all --- Cslib.lean | 2 +- CslibTests.lean | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cslib.lean b/Cslib.lean index 3e5977af2..d3a171793 100644 --- a/Cslib.lean +++ b/Cslib.lean @@ -1,4 +1,4 @@ -module -- shake: keep-all +module -- shake: keep-all --deprecated_module: ignore public import Cslib.Algorithms.Lean.MergeSort.MergeSort public import Cslib.Algorithms.Lean.TimeM diff --git a/CslibTests.lean b/CslibTests.lean index 73292aef3..4402417f8 100644 --- a/CslibTests.lean +++ b/CslibTests.lean @@ -1,4 +1,4 @@ -module -- shake: keep-all +module -- shake: keep-all --deprecated_module: ignore public import CslibTests.Bisimulation public import CslibTests.CCS From ab632e34c5062ed462c06d2c7d8d92a7b69b7b38 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Tue, 7 Apr 2026 13:29:20 +0000 Subject: [PATCH 238/253] chore: bump to nightly-2026-04-07 with mathlib at nightly-testing-2026-04-07 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f68ae0ecd..a912834c1 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "5212dc478426d5caca02fc5aea6df6d211fbdd7e", + "rev": "939b2837a108267d255e41aece8c6aca29009a2a", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-06", + "inputRev": "nightly-testing-2026-04-07", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index b3cfac2e2..fb856adc8 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-06" +rev = "nightly-testing-2026-04-07" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 845eced43..54caac41b 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-06 +leanprover/lean4:nightly-2026-04-07 From 148401bb05ae7e65623ee3ee858d4b4b91949f14 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 10 Apr 2026 13:28:50 +0000 Subject: [PATCH 239/253] chore: bump to nightly-2026-04-10 with mathlib at nightly-testing-2026-04-10 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index a912834c1..fe34b83a0 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "939b2837a108267d255e41aece8c6aca29009a2a", + "rev": "ba9bf0f57e8bc6882141df12167ca3ce52be30c1", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-07", + "inputRev": "nightly-testing-2026-04-10", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f449eabb8f7e3feef0366856c20e28a6d2c97ee3", + "rev": "2541d6b9e923b0b2f867d7b037ac344551cc7feb", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -75,10 +75,10 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bf597c77bf9b8e66720d724928207f5911533113", + "rev": "896fee4b88a27faa234591ab515a6f9f70f9a096", "name": "batteries", "manifestFile": "lake-manifest.json", - "inputRev": "v4.30.0-rc1", + "inputRev": "nightly-testing", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover/lean4-cli", diff --git a/lakefile.toml b/lakefile.toml index fb856adc8..f1bdff2bc 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-07" +rev = "nightly-testing-2026-04-10" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 54caac41b..9187f2ebf 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-07 +leanprover/lean4:nightly-2026-04-10 From 03435841c576032a848ab44f112701804b9836f8 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 12 Apr 2026 10:12:01 +0000 Subject: [PATCH 240/253] chore: bump to nightly-2026-04-11 with mathlib at nightly-testing-2026-04-11 --- lake-manifest.json | 10 +++++----- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fe34b83a0..fdb01058c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,17 +5,17 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ba9bf0f57e8bc6882141df12167ca3ce52be30c1", + "rev": "bea414ce62a25184c00ea3391b7c704ca787aca9", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-10", + "inputRev": "nightly-testing-2026-04-11", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "2541d6b9e923b0b2f867d7b037ac344551cc7feb", + "rev": "a3b459a8312125758e51c354b93d54ba620efda6", "name": "plausible", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "86503d416c875fdcf3b6b6c54c22581e96c6bda7", + "rev": "4411c5f89c797401c609b3a946c8874569e69731", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "896fee4b88a27faa234591ab515a6f9f70f9a096", + "rev": "5a746178d12920eacc8a331c80317e7ffbbee780", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index f1bdff2bc..8806963a9 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-10" +rev = "nightly-testing-2026-04-11" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 9187f2ebf..bca52a66f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-10 +leanprover/lean4:nightly-2026-04-11 From fd66d0ab0bb2afbd16c183fff32964470d47d4aa Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Mon, 13 Apr 2026 13:29:51 +0000 Subject: [PATCH 241/253] chore: bump to nightly-2026-04-13 with mathlib at nightly-testing-2026-04-13 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index fdb01058c..c9113da90 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "bea414ce62a25184c00ea3391b7c704ca787aca9", + "rev": "0b824b59da6ab7e9b1d598416f3c07cb8137e3ef", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-11", + "inputRev": "nightly-testing-2026-04-13", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 8806963a9..1a3c29b81 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-11" +rev = "nightly-testing-2026-04-13" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index bca52a66f..eb7023afe 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-11 +leanprover/lean4:nightly-2026-04-13 From f54548594a36ca04690b9d1417e6373f4f8a6b82 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Thu, 16 Apr 2026 13:30:33 +0000 Subject: [PATCH 242/253] chore: bump to nightly-2026-04-16 with mathlib at nightly-testing-2026-04-16 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index c9113da90..801bd9b0d 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,20 +5,20 @@ "type": "git", "subDir": null, "scope": "", - "rev": "0b824b59da6ab7e9b1d598416f3c07cb8137e3ef", + "rev": "cecf37bdace26a422cf4eb0059fb7f0d410969b6", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-13", + "inputRev": "nightly-testing-2026-04-16", "inherited": false, "configFile": "lakefile.lean"}, - {"url": "https://github.com/leanprover-community/plausible", + {"url": "https://github.com/Kha/plausible", "type": "git", "subDir": null, - "scope": "leanprover-community", - "rev": "a3b459a8312125758e51c354b93d54ba620efda6", + "scope": "", + "rev": "1e454fed5528d2df0f45708f6b9e8e519c47fc5a", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "main", + "inputRev": "push-nuzuuroszpvz", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "5a746178d12920eacc8a331c80317e7ffbbee780", + "rev": "918975dee951eb4b2338607c5277a4e5835834f3", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 1a3c29b81..59af1d9ff 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-13" +rev = "nightly-testing-2026-04-16" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index eb7023afe..844e3659d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-13 +leanprover/lean4:nightly-2026-04-16 From 3ad033e70e9684e830bca20b3fa30bb074ab15fa Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 19 Apr 2026 13:25:13 +0000 Subject: [PATCH 243/253] chore: bump to nightly-2026-04-19 with mathlib at nightly-testing-2026-04-19 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 801bd9b0d..9966aee4c 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "cecf37bdace26a422cf4eb0059fb7f0d410969b6", + "rev": "4c45d0e081543d13f714a1c4c7511b5ec12cc1bb", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-16", + "inputRev": "nightly-testing-2026-04-19", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/Kha/plausible", @@ -35,7 +35,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4411c5f89c797401c609b3a946c8874569e69731", + "rev": "cdab3938ccabbdb044be6896e251b5814bec932e", "name": "importGraph", "manifestFile": "lake-manifest.json", "inputRev": "main", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "ad416ddf6cc9d5b1c00eaf04a48e703538132760", + "rev": "bf91f5d1e444cf2bd9795bd2499658b802759af7", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "918975dee951eb4b2338607c5277a4e5835834f3", + "rev": "4b591181697264394a76288a163fd1d47621c96e", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -85,10 +85,10 @@ "type": "git", "subDir": null, "scope": "leanprover", - "rev": "f7d0ca7c926cdde0562af20394dd25d028b839a5", + "rev": "13567aed1ac4f12aea9484178e07e51f8c9f7658", "name": "Cli", "manifestFile": "lake-manifest.json", - "inputRev": "v4.30.0-rc1", + "inputRev": "v4.30.0-rc2", "inherited": true, "configFile": "lakefile.toml"}], "name": "cslib", diff --git a/lakefile.toml b/lakefile.toml index 59af1d9ff..2e6b2f4d4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -16,7 +16,7 @@ weak.linter.allScriptsDocumented = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-16" +rev = "nightly-testing-2026-04-19" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 844e3659d..188347049 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-16 +leanprover/lean4:nightly-2026-04-19 From 557ce049ba8184d49442c1cad8dfc3bf7250d3dd Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Wed, 22 Apr 2026 13:30:21 +0000 Subject: [PATCH 244/253] chore: bump to nightly-2026-04-22 with mathlib at nightly-testing-2026-04-22 --- lake-manifest.json | 8 ++++---- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 9966aee4c..197014ec7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "4c45d0e081543d13f714a1c4c7511b5ec12cc1bb", + "rev": "eac921f2b623b0ad1f9aa248c9d5d6985b256ecf", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-19", + "inputRev": "nightly-testing-2026-04-22", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/Kha/plausible", @@ -55,7 +55,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "bf91f5d1e444cf2bd9795bd2499658b802759af7", + "rev": "94778bc57a7fced2cdb8cda599c6e2672193d708", "name": "aesop", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "4b591181697264394a76288a163fd1d47621c96e", + "rev": "667d80cc94e379283e9f0216673fff456692fa5c", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 2d1c637c0..923bb51ed 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-19" +rev = "nightly-testing-2026-04-22" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 188347049..2e20467ac 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-19 +leanprover/lean4:nightly-2026-04-22 From 8bedd145319f631feec28d5393588bb6767c4120 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Thu, 23 Apr 2026 13:30:16 +0000 Subject: [PATCH 245/253] chore: bump to nightly-2026-04-23 with mathlib at nightly-testing-2026-04-23 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 197014ec7..30d125709 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "eac921f2b623b0ad1f9aa248c9d5d6985b256ecf", + "rev": "2d5b4c4daf29dcb3226b2e2c567b5a8bb087d74e", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-22", + "inputRev": "nightly-testing-2026-04-23", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/Kha/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "667d80cc94e379283e9f0216673fff456692fa5c", + "rev": "f00fb31815ff41307bb3a432e3dab3ee4518b0b8", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 923bb51ed..a5f6813f6 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-22" +rev = "nightly-testing-2026-04-23" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 2e20467ac..cc7ac4d9d 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-22 +leanprover/lean4:nightly-2026-04-23 From 29959e5f64fb7ca345bc8189d63fe045ad5a1c65 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Fri, 24 Apr 2026 13:29:37 +0000 Subject: [PATCH 246/253] chore: bump to nightly-2026-04-24 with mathlib at nightly-testing-2026-04-24 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 30d125709..76adcd43d 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "2d5b4c4daf29dcb3226b2e2c567b5a8bb087d74e", + "rev": "ea11aab85ca409d7c8eab083b00cbec31a7cf17b", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-23", + "inputRev": "nightly-testing-2026-04-24", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/Kha/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "f00fb31815ff41307bb3a432e3dab3ee4518b0b8", + "rev": "e0306a8b97d88a3c97bbe4fa0bd4dae970f8b521", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index a5f6813f6..9f805ce98 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-23" +rev = "nightly-testing-2026-04-24" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index cc7ac4d9d..53aa4bd0f 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-23 +leanprover/lean4:nightly-2026-04-24 From 1ffd5970438229f36261a2bd438feff0bc1c6540 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 26 Apr 2026 10:14:16 +0000 Subject: [PATCH 247/253] chore: bump to nightly-2026-04-25 with mathlib at nightly-testing-2026-04-25 --- lake-manifest.json | 14 +++++++------- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 76adcd43d..14e3d0d69 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,20 +5,20 @@ "type": "git", "subDir": null, "scope": "", - "rev": "ea11aab85ca409d7c8eab083b00cbec31a7cf17b", + "rev": "c22b6cccb2987a043cefceaf6c3f5ea8ed5e9948", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-24", + "inputRev": "nightly-testing-2026-04-25", "inherited": false, "configFile": "lakefile.lean"}, - {"url": "https://github.com/Kha/plausible", + {"url": "https://github.com/leanprover-community/plausible", "type": "git", "subDir": null, - "scope": "", - "rev": "1e454fed5528d2df0f45708f6b9e8e519c47fc5a", + "scope": "leanprover-community", + "rev": "293af9b2a383eed4d04d66b898d608d0a44b750f", "name": "plausible", "manifestFile": "lake-manifest.json", - "inputRev": "push-nuzuuroszpvz", + "inputRev": "main", "inherited": true, "configFile": "lakefile.toml"}, {"url": "https://github.com/leanprover-community/LeanSearchClient", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "e0306a8b97d88a3c97bbe4fa0bd4dae970f8b521", + "rev": "61bbab8da0e633e855821f1205fbf99874940b0b", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 9f805ce98..20b618877 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-24" +rev = "nightly-testing-2026-04-25" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 53aa4bd0f..0b70422e5 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-24 +leanprover/lean4:nightly-2026-04-25 From 61f435a1b45a6fc6bfef2d934754ef4ccd174f57 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Mon, 27 Apr 2026 13:31:09 +0000 Subject: [PATCH 248/253] chore: bump to nightly-2026-04-27 with mathlib at nightly-testing-2026-04-27 --- lake-manifest.json | 4 ++-- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 14e3d0d69..257a5ad97 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "c22b6cccb2987a043cefceaf6c3f5ea8ed5e9948", + "rev": "9fc131cbe6d30f682c7fb8d9dfa953e0aef5aef9", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-25", + "inputRev": "nightly-testing-2026-04-27", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", diff --git a/lakefile.toml b/lakefile.toml index 20b618877..e8c1bbcb0 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-25" +rev = "nightly-testing-2026-04-27" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index 0b70422e5..fc7a4e413 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-25 +leanprover/lean4:nightly-2026-04-27 From f530fc0519a22340811485f580d25510acecce97 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Sun, 3 May 2026 13:28:13 +0000 Subject: [PATCH 249/253] chore: bump to nightly-2026-05-03 with mathlib at nightly-testing-2026-05-03 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index 257a5ad97..f0ce1ed02 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "9fc131cbe6d30f682c7fb8d9dfa953e0aef5aef9", + "rev": "09f28100a1eedd6f03d1ef4c36aafb9762ee9f1d", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-04-27", + "inputRev": "nightly-testing-2026-05-03", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "61bbab8da0e633e855821f1205fbf99874940b0b", + "rev": "953e9065fe10a846da3b85497f278311796738e2", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index 68f6b5d05..f3d3257b5 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-04-27" +rev = "nightly-testing-2026-05-03" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index fc7a4e413..f28bc4565 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-04-27 +leanprover/lean4:nightly-2026-05-03 From 26dee6fe62240945af1f586ca6f943ea631c6a01 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 3 May 2026 14:13:50 -0700 Subject: [PATCH 250/253] Fix failure in Cslib/Computability/Automata/NA/Concat.lean --- Cslib/Computability/Automata/NA/Concat.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Computability/Automata/NA/Concat.lean b/Cslib/Computability/Automata/NA/Concat.lean index 0b2c10d3e..7cc7c1c18 100644 --- a/Cslib/Computability/Automata/NA/Concat.lean +++ b/Cslib/Computability/Automata/NA/Concat.lean @@ -177,7 +177,7 @@ theorem finConcat_language_eq [Inhabited Symbol] : obtain ⟨ss, ⟨_, h_ωtr⟩, _⟩ := concat_run_exists h_xl1 h_run2 #adaptation_note /-- A grind regression found moving to nightly-2026-03-31 (changes from lean#13166) -/ - have h_mtr := LTS.OmegaExecution.extract_mTr h_ωtr (zero_le (xl1.length + xl2.length)) + have h_mtr := LTS.OmegaExecution.extract_mTr h_ωtr (zero_le (a := xl1.length + xl2.length)) simp [← append_append_ωSequence, extract_eq_drop_take, take_append_of_le_length, ← List.length_append] at h_mtr have : ss (xl1.length + xl2.length) = (ss.drop xl1.length) xl2.length := by grind From 130fb8442b1c768073dcde94b6a2fd4b46502244 Mon Sep 17 00:00:00 2001 From: Ching-Tsun Chou Date: Sun, 3 May 2026 14:14:39 -0700 Subject: [PATCH 251/253] Fix failure in Cslib/Computability/Languages/Congruences/BuchiCongruence.lean --- Cslib/Computability/Languages/Congruences/BuchiCongruence.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean index 48e60cb61..8d14c6523 100644 --- a/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean +++ b/Cslib/Computability/Languages/Congruences/BuchiCongruence.lean @@ -140,7 +140,7 @@ theorem buchiFamily_cover [Inhabited Symbol] [Finite State] : simp_all only [extract_drop, color] split_ifs with h · have : f k ≤ f (k + 1) := by lia - have : f 0 + (f k - f 0) = f k := by lia + have : f 0 + (f k - f 0) = f k := by grind have : f 0 + (f (k + 1) - f 0) = f (k + 1) := by lia simp_all rfl From 9de72b735e3dd54d1eca2953fe6b34ef77861d0a Mon Sep 17 00:00:00 2001 From: Chris Henson Date: Sun, 3 May 2026 17:57:43 -0400 Subject: [PATCH 252/253] Typing.progress --- .../LocallyNameless/Fsub/Safety.lean | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Safety.lean b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Safety.lean index c5e0116db..28e9e1e10 100644 --- a/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Safety.lean +++ b/Cslib/Languages/LambdaCalculus/LocallyNameless/Fsub/Safety.lean @@ -74,14 +74,14 @@ lemma Typing.preservation (der : Typing Γ t τ) (step : t ⭢βᵛ t') : Typing /-- Any typable term either has a reduction step or is a value. -/ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' := by generalize eq : [] = Γ at der - have der' : Typing Γ t τ := by assumption - induction der <;> subst eq <;> simp only [forall_const] at * + have der' : Typing Γ t τ := der + induction der <;> subst eq case var mem => grind case app t₁ _ _ t₂ l r ih_l ih_r => right - cases ih_l l with + cases ih_l rfl l with | inl val_l => - cases ih_r r with + cases ih_r rfl r with | inl val_r => have ⟨σ, t₁, eq⟩ := l.canonical_form_abs val_l exists t₁ ^ᵗᵗ t₂ @@ -96,7 +96,7 @@ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' grind case tapp σ' der _ ih => right - specialize ih der + specialize ih rfl der cases ih with | inl val => obtain ⟨_, t, _⟩ := der.canonical_form_tabs val @@ -106,9 +106,9 @@ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' obtain ⟨t', _⟩ := red exists .tapp t' σ' grind - case let' t₁ σ t₂ τ L der _ _ ih => + case let' t₁ σ t₂ τ L der _ ih _ => right - cases ih der with + cases ih rfl der with | inl _ => exists t₂ ^ᵗᵗ t₁ grind @@ -117,7 +117,7 @@ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' exists t₁'.let' t₂ grind case inl der _ ih => - cases (ih der) with + cases (ih rfl der) with | inl val => grind | inr red => right @@ -125,16 +125,16 @@ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' exists .inl t' grind case inr der _ ih => - cases (ih der) with + cases (ih rfl der) with | inl val => grind | inr red => right obtain ⟨t', _⟩ := red exists .inr t' grind - case case t₁ _ _ t₂ _ t₃ _ der _ _ _ _ ih => + case case t₁ _ _ t₂ _ t₃ _ der _ _ ih _ _ => right - cases ih der with + cases ih rfl der with | inl val => have ⟨t₁, lr⟩ := der.canonical_form_sum val cases lr <;> [exists t₂ ^ᵗᵗ t₁; exists t₃ ^ᵗᵗ t₁] <;> grind @@ -146,11 +146,11 @@ lemma Typing.progress (der : Typing [] t τ) : t.Value ∨ ∃ t', t ⭢βᵛ t' case abs σ _ τ L _ _=> left constructor - apply LC.abs L <;> grind [cases Env.Wf, cases Term.LC] + apply LC.abs L <;> grind [cases Term.LC] case tabs L _ _=> left constructor - apply LC.tabs L <;> grind [cases Env.Wf, cases Term.LC] + apply LC.tabs L <;> grind [cases Term.LC] end LambdaCalculus.LocallyNameless.Fsub From 87980017d4e2598a6f1f21fe401440aff1bad8e3 Mon Sep 17 00:00:00 2001 From: "mathlib-nightly-testing[bot]" Date: Mon, 4 May 2026 13:31:16 +0000 Subject: [PATCH 253/253] chore: bump to nightly-2026-05-04 with mathlib at nightly-testing-2026-05-04 --- lake-manifest.json | 6 +++--- lakefile.toml | 2 +- lean-toolchain | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lake-manifest.json b/lake-manifest.json index f0ce1ed02..c423658d7 100644 --- a/lake-manifest.json +++ b/lake-manifest.json @@ -5,10 +5,10 @@ "type": "git", "subDir": null, "scope": "", - "rev": "09f28100a1eedd6f03d1ef4c36aafb9762ee9f1d", + "rev": "516318b4c53a12c6db4c506b8aba14bed1239b1c", "name": "mathlib", "manifestFile": "lake-manifest.json", - "inputRev": "nightly-testing-2026-05-03", + "inputRev": "nightly-testing-2026-05-04", "inherited": false, "configFile": "lakefile.lean"}, {"url": "https://github.com/leanprover-community/plausible", @@ -75,7 +75,7 @@ "type": "git", "subDir": null, "scope": "leanprover-community", - "rev": "953e9065fe10a846da3b85497f278311796738e2", + "rev": "a5057d09bbda63aed64ee5b88d37b63da3e46a09", "name": "batteries", "manifestFile": "lake-manifest.json", "inputRev": "nightly-testing", diff --git a/lakefile.toml b/lakefile.toml index f3d3257b5..f869e55b4 100644 --- a/lakefile.toml +++ b/lakefile.toml @@ -18,7 +18,7 @@ weak.linter.unicodeLinter = false [[require]] name = "mathlib" git = "https://github.com/leanprover-community/mathlib4-nightly-testing" -rev = "nightly-testing-2026-05-03" +rev = "nightly-testing-2026-05-04" [[lean_lib]] name = "Cslib" diff --git a/lean-toolchain b/lean-toolchain index f28bc4565..1b641f303 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-05-03 +leanprover/lean4:nightly-2026-05-04