From 3782b34cb8facddc777f70ce37a452ed2369fda8 Mon Sep 17 00:00:00 2001 From: "downstream-lean4[bot]" Date: Thu, 30 Jul 2026 06:18:17 +0000 Subject: [PATCH 1/5] downstream: follow upstream PR --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index 6b5dc3893..601a21685 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2026-07-29 +leanprover/lean4-pr-releases:pr-release-14600-e0f97a9 From 0dd30c28c5f694629c8bfeaf46ade62995ae0495 Mon Sep 17 00:00:00 2001 From: "downstream-lean4[bot]" Date: Thu, 30 Jul 2026 10:58:48 +0000 Subject: [PATCH 2/5] downstream: follow upstream PR --- lean-toolchain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lean-toolchain b/lean-toolchain index 601a21685..eb682b4d4 100644 --- a/lean-toolchain +++ b/lean-toolchain @@ -1 +1 @@ -leanprover/lean4-pr-releases:pr-release-14600-e0f97a9 +leanprover/lean4-pr-releases:pr-release-14600-453dceb From d202d18767c3df4df35f8b142c938f14d0228d1d Mon Sep 17 00:00:00 2001 From: Julia Markus Himmel <2065352+TwoFX@users.noreply.github.com> Date: Thu, 30 Jul 2026 13:30:33 +0000 Subject: [PATCH 3/5] Adjust reference manual --- reference-manual/Manual/BasicTypes/Option.lean | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference-manual/Manual/BasicTypes/Option.lean b/reference-manual/Manual/BasicTypes/Option.lean index e8d7407b0..71b7f1cc0 100644 --- a/reference-manual/Manual/BasicTypes/Option.lean +++ b/reference-manual/Manual/BasicTypes/Option.lean @@ -128,7 +128,7 @@ If the line consists only of letters (after removing whitespace from the beginni ```lean def getAlpha : IO (Option String) := do - let line := (← (← IO.getStdin).getLine).trim + let line := (← (← IO.getStdin).getLine).trimAscii.copy if line.length > 0 && line.all Char.isAlpha then return line else From 5eea595316a2f83326f7a6fa6fbaf28e7b811ce3 Mon Sep 17 00:00:00 2001 From: Julia Markus Himmel <2065352+TwoFX@users.noreply.github.com> Date: Thu, 30 Jul 2026 13:34:33 +0000 Subject: [PATCH 4/5] Adjust Batteries --- batteries/Batteries/Data/Array/Lemmas.lean | 2 +- batteries/Batteries/Data/List/Basic.lean | 2 +- batteries/Batteries/Data/List/Lemmas.lean | 12 ++++++------ batteries/Batteries/Data/String/Matcher.lean | 2 +- batteries/Batteries/Logic.lean | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/batteries/Batteries/Data/Array/Lemmas.lean b/batteries/Batteries/Data/Array/Lemmas.lean index 9a5b86d9d..41ccdd45c 100644 --- a/batteries/Batteries/Data/Array/Lemmas.lean +++ b/batteries/Batteries/Data/Array/Lemmas.lean @@ -12,7 +12,7 @@ public import Batteries.Data.List.Lemmas namespace Array -@[deprecated forIn_toList (since := "2025-07-01")] +@[deprecated forIn_toList +typeChanged (since := "2025-07-01")] theorem forIn_eq_forIn_toList [Monad m] (as : Array α) (b : β) (f : α → β → m (ForInStep β)) : forIn as b f = forIn as.toList b f := by diff --git a/batteries/Batteries/Data/List/Basic.lean b/batteries/Batteries/Data/List/Basic.lean index e06270416..e4dbcac78 100644 --- a/batteries/Batteries/Data/List/Basic.lean +++ b/batteries/Batteries/Data/List/Basic.lean @@ -620,7 +620,7 @@ where ``` Chain R a [b, c, d] ↔ R a b ∧ R b c ∧ R c d ``` -/ -@[deprecated IsChain (since := "2025-09-19")] +@[deprecated IsChain +typeChanged (since := "2025-09-19")] def Chain : (α → α → Prop) → α → List α → Prop := (IsChain · <| · :: ·) set_option linter.deprecated false in diff --git a/batteries/Batteries/Data/List/Lemmas.lean b/batteries/Batteries/Data/List/Lemmas.lean index d86e6bf43..7f801f726 100644 --- a/batteries/Batteries/Data/List/Lemmas.lean +++ b/batteries/Batteries/Data/List/Lemmas.lean @@ -36,7 +36,7 @@ attribute [grind =] zipIdx_nil zipIdx_cons /-! ### toArray-/ -@[deprecated List.getElem_toArray (since := "2025-09-11")] +@[deprecated List.getElem_toArray +typeChanged (since := "2025-09-11")] theorem getElem_mk {xs : List α} {i : Nat} (h : i < xs.length) : (Array.mk xs)[i] = xs[i] := List.getElem_toArray h @@ -113,7 +113,7 @@ theorem erase_eq_self_iff_forall_bne [BEq α] (a : α) (xs : List α) : /-! ### findIdx? -/ -@[deprecated findIdx_eq_getD_findIdx? (since := "2025-11-06")] +@[deprecated findIdx_eq_getD_findIdx? +typeChanged (since := "2025-11-06")] theorem findIdx_eq_findIdx? (p : α → Bool) (l : List α) : l.findIdx p = (match l.findIdx? p with | some i => i | none => l.length) := by rw [findIdx_eq_getD_findIdx?] @@ -386,14 +386,14 @@ theorem isChain_of_isChain_cons (p : IsChain R (b :: l)) : IsChain R l := by gri alias IsChain.of_cons := isChain_of_isChain_cons -@[deprecated IsChain.of_cons (since := "2026-02-10")] +@[deprecated IsChain.of_cons +typeChanged (since := "2026-02-10")] theorem isChain_cons_of_isChain_cons_cons : IsChain R (a :: b :: l) → IsChain R (b :: l) := IsChain.of_cons @[deprecated (since := "2025-09-19")] alias chain_of_chain_cons := isChain_cons_of_isChain_cons_cons -@[deprecated IsChain.of_cons (since := "2026-02-10")] +@[deprecated IsChain.of_cons +typeChanged (since := "2026-02-10")] theorem isChain_of_isChain_cons_cons : IsChain R (a :: b :: l) → IsChain R l := IsChain.of_cons ∘ IsChain.of_cons @@ -445,7 +445,7 @@ theorem isChain_range' (s : Nat) : ∀ n step : Nat, | 1, _ => .singleton _ | n + 2, step => (isChain_range' (s + step) (n + 1) step).cons_cons rfl -@[deprecated isChain_range' (since := "2025-09-19")] +@[deprecated isChain_range' +typeChanged (since := "2025-09-19")] theorem chain_succ_range' (s n step : Nat) : IsChain (fun a b => b = a + step) (s :: range' (s + step) n step) := isChain_range' _ (n + 1) _ @@ -453,7 +453,7 @@ theorem isChain_lt_range' (s n : Nat) (h : 0 < step) : IsChain (· < ·) (range' s n step) := (isChain_range' s n step).imp fun | _, _, rfl => Nat.lt_add_of_pos_right h -@[deprecated isChain_lt_range' (since := "2025-09-19")] +@[deprecated isChain_lt_range' +typeChanged (since := "2025-09-19")] theorem chain_lt_range' (s n : Nat) (h : 0 < step) : IsChain (· < ·) (s :: range' (s + step) n step) := isChain_lt_range' _ (n + 1) h diff --git a/batteries/Batteries/Data/String/Matcher.lean b/batteries/Batteries/Data/String/Matcher.lean index e427d9e68..f9b7c3496 100644 --- a/batteries/Batteries/Data/String/Matcher.lean +++ b/batteries/Batteries/Data/String/Matcher.lean @@ -121,7 +121,7 @@ abbrev findAllSubstr (s : String) (pattern : Substring.Raw) : Array Substring.Ra abbrev findSubstr? (s : String) (pattern : Substring.Raw) : Option Substring.Raw := s.toRawSubstring.findSubstr? pattern -@[deprecated String.contains (since := "2026-02-25"), inherit_doc Substring.Raw.containsSubstr] +@[deprecated String.contains +typeChanged (since := "2026-02-25"), inherit_doc Substring.Raw.containsSubstr] abbrev containsSubstr (s : String) (pattern : Substring.Raw) : Bool := s.toRawSubstring.containsSubstr pattern diff --git a/batteries/Batteries/Logic.lean b/batteries/Batteries/Logic.lean index 9b19aa8cc..90d92b1b6 100644 --- a/batteries/Batteries/Logic.lean +++ b/batteries/Batteries/Logic.lean @@ -85,14 +85,14 @@ theorem eqRec_heq_self {α : Sort _} {a : α} {motive : (a' : α) → a = a' → (x : motive a rfl) {a' : α} (e : a = a') : @Eq.rec α a motive x a' e ≍ x := by subst e; rfl -@[deprecated eqRec_heq_iff (since := "12-07-2026")] +@[deprecated eqRec_heq_iff +typeChanged (since := "12-07-2026")] theorem eqRec_heq_iff_heq {α : Sort _} {a : α} {motive : (a' : α) → a = a' → Sort _} {x : motive a rfl} {a' : α} {e : a = a'} {β : Sort _} {y : β} : @Eq.rec α a motive x a' e ≍ y ↔ x ≍ y := by subst e; rfl -@[deprecated heq_eqRec_iff (since := "12-07-2026")] +@[deprecated heq_eqRec_iff +typeChanged (since := "12-07-2026")] theorem heq_eqRec_iff_heq {α : Sort _} {a : α} {motive : (a' : α) → a = a' → Sort _} {x : motive a rfl} {a' : α} {e : a = a'} {β : Sort _} {y : β} : y ≍ @Eq.rec α a motive x a' e ↔ y ≍ x := by From 0ab26a2065e428437efaae117fe74c8974b4f0c9 Mon Sep 17 00:00:00 2001 From: Julia Markus Himmel <2065352+TwoFX@users.noreply.github.com> Date: Thu, 30 Jul 2026 14:18:58 +0000 Subject: [PATCH 5/5] Adjust mathlib --- .../Algebra/Algebra/NonUnitalSubalgebra.lean | 4 +- .../Algebra/Algebra/Subalgebra/Lattice.lean | 4 +- .../Algebra/Category/AlgCat/Basic.lean | 2 +- .../Algebra/Category/CommAlgCat/Basic.lean | 2 +- .../Algebra/Category/CommBialgCat.lean | 2 +- .../Algebra/Category/ModuleCat/Basic.lean | 2 +- .../Algebra/Category/ModuleCat/Semi.lean | 2 +- .../ModuleCat/Sheaf/Quasicoherent.lean | 2 +- .../Mathlib/Algebra/FreeMonoid/Basic.lean | 4 +- mathlib4/Mathlib/Algebra/Group/Finsupp.lean | 4 +- .../Mathlib/Algebra/Group/Subgroup/Defs.lean | 10 ++- .../Algebra/GroupWithZero/Action/Defs.lean | 2 +- .../Algebra/GroupWithZero/Associated.lean | 2 +- mathlib4/Mathlib/Algebra/Module/Hom.lean | 2 +- .../Mathlib/Algebra/MonoidAlgebra/Defs.lean | 16 ++-- .../Mathlib/Algebra/MvPolynomial/Basic.lean | 5 +- .../Algebra/MvPolynomial/CommRing.lean | 2 +- .../Mathlib/Algebra/MvPolynomial/Equiv.lean | 30 ++++---- .../Algebra/Order/Archimedean/Real/Basic.lean | 2 +- .../Order/BigOperators/Ring/Finset.lean | 2 +- .../Order/GroupWithZero/Canonical.lean | 2 +- .../Algebra/Order/Ring/Unbundled/Basic.lean | 2 +- .../Algebra/Polynomial/Derivative.lean | 4 +- mathlib4/Mathlib/Algebra/Polynomial/Div.lean | 2 +- mathlib4/Mathlib/Algebra/Ring/Equiv.lean | 4 +- .../Mathlib/Algebra/Ring/Subring/Basic.lean | 2 +- .../Algebra/Ring/Subsemiring/Basic.lean | 2 +- .../Algebra/SkewMonoidAlgebra/Basic.lean | 2 +- .../Algebra/SkewMonoidAlgebra/Single.lean | 10 +-- .../Mathlib/Algebra/SkewPolynomial/Basic.lean | 10 +-- .../Algebra/Star/NonUnitalSubalgebra.lean | 4 +- mathlib4/Mathlib/Algebra/Star/Subalgebra.lean | 8 +- .../Sites/SmallAffineZariski.lean | 3 +- .../Quasicategory/InnerFibration.lean | 4 +- .../Analysis/Calculus/Deriv/Basic.lean | 2 +- .../Mathlib/Analysis/Calculus/Deriv/Comp.lean | 6 +- .../Analysis/Complex/UnitDisc/Basic.lean | 6 +- .../Analysis/InnerProductSpace/PiL2.lean | 30 ++++---- .../InnerProductSpace/Projection/Basic.lean | 2 +- .../Analysis/LocallyConvex/Barrelled.lean | 2 +- .../Mathlib/Analysis/Matrix/Hermitian.lean | 2 +- .../Mathlib/Analysis/Matrix/Spectrum.lean | 2 +- .../Normed/Affine/ContinuousAffineMap.lean | 6 +- mathlib4/Mathlib/Analysis/Normed/Lp/PiLp.lean | 10 +-- .../Analysis/Normed/Module/Complemented.lean | 4 +- .../Mathlib/Analysis/Normed/Module/Dual.lean | 6 +- .../Normed/Module/FiniteDimension.lean | 2 +- .../PiTensorProduct/ProjectiveSeminorm.lean | 2 +- mathlib4/Mathlib/Analysis/Real/Hyperreal.lean | 74 +++++++++---------- .../SpecialFunctions/Log/Monotone.lean | 2 +- .../CategoryTheory/Limits/Types/Colimits.lean | 6 +- .../CategoryTheory/Limits/Types/Limits.lean | 12 +-- .../ObjectProperty/Retract.lean | 2 +- .../Mathlib/CategoryTheory/Types/Basic.lean | 6 +- .../Combinatorics/SimpleGraph/Acyclic.lean | 6 +- .../Combinatorics/SimpleGraph/Clique.lean | 2 +- .../SimpleGraph/Coloring/Vertex.lean | 4 +- .../Connectivity/EdgeConnectivity.lean | 3 +- .../Combinatorics/SimpleGraph/Finite.lean | 2 +- .../Combinatorics/SimpleGraph/Paths.lean | 2 +- .../SimpleGraph/VertexCover.lean | 2 +- .../Combinatorics/SimpleGraph/Walk/Basic.lean | 6 +- .../SimpleGraph/Walk/Decomp.lean | 2 +- .../Combinatorics/SimpleGraph/Walk/Maps.lean | 2 +- .../SimpleGraph/Walk/Operations.lean | 2 +- mathlib4/Mathlib/Computability/Encoding.lean | 6 +- .../Mathlib/Computability/Primrec/Basic.lean | 2 +- mathlib4/Mathlib/Condensed/Basic.lean | 6 +- mathlib4/Mathlib/Condensed/Light/Basic.lean | 6 +- mathlib4/Mathlib/Data/DFinsupp/Order.lean | 2 +- mathlib4/Mathlib/Data/ENNReal/Basic.lean | 8 +- mathlib4/Mathlib/Data/ENat/Basic.lean | 10 +-- mathlib4/Mathlib/Data/Finsupp/Indicator.lean | 2 +- mathlib4/Mathlib/Data/Finsupp/Order.lean | 2 +- mathlib4/Mathlib/Data/Finsupp/Single.lean | 4 +- .../Mathlib/Data/Nat/Factorization/Basic.lean | 2 +- mathlib4/Mathlib/Data/Nat/MaxPowDiv.lean | 2 +- mathlib4/Mathlib/Data/Nat/SuccPred.lean | 2 +- mathlib4/Mathlib/Data/PNat/Basic.lean | 4 +- mathlib4/Mathlib/Data/Set/Basic.lean | 6 +- mathlib4/Mathlib/Data/Set/Image.lean | 6 +- mathlib4/Mathlib/Data/Sym/Sym2.lean | 2 +- mathlib4/Mathlib/FieldTheory/AbelRuffini.lean | 2 +- .../Mathlib/FieldTheory/Galois/Basic.lean | 2 +- .../Mathlib/Geometry/Convex/Cone/Basic.lean | 6 +- .../Mathlib/GroupTheory/Coxeter/Length.lean | 4 +- mathlib4/Mathlib/GroupTheory/Index.lean | 2 +- mathlib4/Mathlib/GroupTheory/PGroup.lean | 2 +- .../GroupTheory/SpecificGroups/Cyclic.lean | 2 +- .../GroupTheory/Subgroup/Centralizer.lean | 2 +- .../GroupTheory/Submonoid/Centralizer.lean | 2 +- .../GroupTheory/Subsemigroup/Centralizer.lean | 2 +- mathlib4/Mathlib/Lean/MessageData/Trace.lean | 4 +- .../AffineSpace/Combination.lean | 10 +-- mathlib4/Mathlib/LinearAlgebra/Dual/Defs.lean | 2 +- .../Mathlib/LinearAlgebra/Finsupp/Pi.lean | 6 +- mathlib4/Mathlib/LinearAlgebra/Lagrange.lean | 2 +- .../Mathlib/LinearAlgebra/Matrix/Reindex.lean | 6 +- .../Matrix/SpecialLinearGroup.lean | 4 +- .../Mathlib/LinearAlgebra/Span/Basic.lean | 2 +- mathlib4/Mathlib/Logic/Encodable/Basic.lean | 2 +- mathlib4/Mathlib/Logic/Equiv/Fin/Rotate.lean | 4 +- mathlib4/Mathlib/Logic/Relation.lean | 12 +-- .../Function/ConditionalExpectation/Real.lean | 4 +- .../Measure/Typeclasses/SFinite.lean | 2 +- mathlib4/Mathlib/NumberTheory/Modular.lean | 2 +- .../LevelOne/DimensionFormula.lean | 4 +- .../NumberTheory/ModularForms/QExpansion.lean | 2 +- .../ModularForms/SlashActions.lean | 2 +- .../Mathlib/NumberTheory/Zsqrtd/Basic.lean | 10 +-- .../Mathlib/Order/BooleanAlgebra/Basic.lean | 2 +- .../Mathlib/Order/BooleanAlgebra/Set.lean | 4 +- .../Order/CompactlyGenerated/Basic.lean | 2 +- mathlib4/Mathlib/Order/Comparable.lean | 54 +++++++------- mathlib4/Mathlib/Order/Defs/Unbundled.lean | 2 +- mathlib4/Mathlib/Order/Fin/Basic.lean | 2 +- mathlib4/Mathlib/Order/GameAdd.lean | 4 +- .../Order/Interval/Set/LinearOrder.lean | 16 ++-- mathlib4/Mathlib/Order/Notation.lean | 2 +- mathlib4/Mathlib/Order/Preorder/Chain.lean | 8 +- mathlib4/Mathlib/Order/RelClasses.lean | 28 +++---- .../Order/SuccPred/CompleteLinearOrder.lean | 15 ++-- mathlib4/Mathlib/Order/SuccPred/Limit.lean | 14 ++-- .../Order/SuccPred/LinearLocallyFinite.lean | 2 +- .../Probability/Distributions/Geometric.lean | 14 ++-- .../Distributions/Poisson/Basic.lean | 14 ++-- .../Poisson/PoissonLimitThm.lean | 2 +- .../ProbabilityMassFunction/Binomial.lean | 15 ++-- .../Constructions.lean | 10 ++- .../ProbabilityMassFunction/Integrals.lean | 2 +- .../Probability/Process/Predictable.lean | 2 +- .../DedekindDomain/AdicValuation.lean | 2 +- .../RingTheory/DividedPowerAlgebra/Init.lean | 4 +- .../Mathlib/RingTheory/HahnSeries/Basic.lean | 6 +- mathlib4/Mathlib/RingTheory/Ideal/Colon.lean | 2 +- .../Mathlib/RingTheory/Ideal/Operations.lean | 2 +- .../RingTheory/KrullDimension/Regular.lean | 5 +- .../RingTheory/Localization/Integral.lean | 10 +-- .../RingTheory/MvPowerSeries/Trunc.lean | 2 +- .../RingTheory/NonUnitalSubring/Basic.lean | 2 +- .../NonUnitalSubsemiring/Basic.lean | 2 +- .../RingTheory/PowerSeries/Derivative.lean | 2 +- .../RingTheory/Smooth/NoetherianDescent.lean | 2 +- .../Valuation/ValuativeRel/Basic.lean | 2 +- .../Mathlib/SetTheory/Cardinal/Aleph.lean | 22 +++--- .../Mathlib/SetTheory/Cardinal/Basic.lean | 10 +-- .../Cardinal/Cofinality/Ordinal.lean | 46 ++++++------ mathlib4/Mathlib/SetTheory/Cardinal/ENat.lean | 2 +- .../Mathlib/SetTheory/Cardinal/Finite.lean | 8 +- .../Mathlib/SetTheory/Cardinal/Order.lean | 10 +-- .../Mathlib/SetTheory/Cardinal/Regular.lean | 24 +++--- .../Mathlib/SetTheory/Ordinal/Arithmetic.lean | 18 ++--- mathlib4/Mathlib/SetTheory/Ordinal/Basic.lean | 48 ++++++------ .../SetTheory/Ordinal/Exponential.lean | 4 +- .../Mathlib/SetTheory/Ordinal/Family.lean | 38 +++++----- .../Ordinal/FundamentalSequence.lean | 26 +++---- .../Mathlib/SetTheory/Ordinal/Topology.lean | 42 +++++------ mathlib4/Mathlib/SetTheory/Ordinal/Univ.lean | 6 +- .../Mathlib/SetTheory/Ordinal/Veblen.lean | 4 +- mathlib4/Mathlib/SetTheory/ZFC/Ordinal.lean | 2 +- .../Mathlib/SetTheory/ZFC/VonNeumann.lean | 2 +- mathlib4/Mathlib/Tactic/Core.lean | 2 +- .../Module/ContinuousLinearMap/Restrict.lean | 4 +- .../Topology/Algebra/Valued/WithVal.lean | 2 +- mathlib4/Mathlib/Topology/Bases.lean | 2 +- .../OnePoint/ProjectiveLine.lean | 2 +- .../Mathlib/Topology/Connected/Clopen.lean | 3 +- mathlib4/Mathlib/Topology/DiscreteSubset.lean | 6 +- .../Mathlib/Topology/EMetricSpace/Basic.lean | 2 +- .../EMetricSpace/BoundedVariation.lean | 2 +- .../Topology/Instances/NNReal/Lemmas.lean | 6 +- .../Topology/MetricSpace/Pseudo/Basic.lean | 2 +- mathlib4/Mathlib/Topology/Order.lean | 8 +- 173 files changed, 590 insertions(+), 575 deletions(-) diff --git a/mathlib4/Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean b/mathlib4/Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean index 47b6fce6d..a8eaeb27b 100644 --- a/mathlib4/Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean +++ b/mathlib4/Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean @@ -1219,7 +1219,7 @@ variable (R) in semiring. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinNonUnitalCommSemiringOfComm {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : NonUnitalCommSemiring (adjoin R s) := have := isMulCommutative_adjoin R hcomm @@ -1234,7 +1234,7 @@ open scoped IsMulCommutative in ring. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinNonUnitalCommRingOfComm (R : Type*) {A : Type*} [CommRing R] [NonUnitalRing A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : NonUnitalCommRing (adjoin R s) := diff --git a/mathlib4/Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean b/mathlib4/Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean index 141383dfa..6dd5a2996 100644 --- a/mathlib4/Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean +++ b/mathlib4/Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean @@ -769,7 +769,7 @@ open scoped IsMulCommutative in semiring. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinCommSemiringOfComm {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : CommSemiring (adjoin R s) := have := isMulCommutative_adjoin R hcomm @@ -849,7 +849,7 @@ variable (R) open scoped IsMulCommutative in /-- If all elements of `s : Set A` commute pairwise, then `adjoin R s` is a commutative ring. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinCommRingOfComm {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : CommRing (adjoin R s) := have := isMulCommutative_adjoin R hcomm diff --git a/mathlib4/Mathlib/Algebra/Category/AlgCat/Basic.lean b/mathlib4/Mathlib/Algebra/Category/AlgCat/Basic.lean index c771d3345..c5a36b9fb 100644 --- a/mathlib4/Mathlib/Algebra/Category/AlgCat/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Category/AlgCat/Basic.lean @@ -149,7 +149,7 @@ instance : Inhabited (AlgCat R) := lemma forget_obj {A : AlgCat.{v} R} : (forget (AlgCat.{v} R)).obj A = A := rfl -@[deprecated ConcreteCategory.forget_map_eq_ofHom (since := "2026-03-03")] +@[deprecated ConcreteCategory.forget_map_eq_ofHom +typeChanged (since := "2026-03-03")] lemma forget_map {A B : AlgCat.{v} R} (f : A ⟶ B) : (forget (AlgCat.{v} R)).map f = (f : _ → _) := rfl diff --git a/mathlib4/Mathlib/Algebra/Category/CommAlgCat/Basic.lean b/mathlib4/Mathlib/Algebra/Category/CommAlgCat/Basic.lean index d284d9474..44bddc35c 100644 --- a/mathlib4/Mathlib/Algebra/Category/CommAlgCat/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Category/CommAlgCat/Basic.lean @@ -120,7 +120,7 @@ instance : Inhabited (CommAlgCat R) := ⟨of R R⟩ lemma forget_obj (A : CommAlgCat.{v} R) : (forget (CommAlgCat.{v} R)).obj A = A := rfl -@[deprecated ConcreteCategory.forget_map_eq_ofHom (since := "2026-03-06")] +@[deprecated ConcreteCategory.forget_map_eq_ofHom +typeChanged (since := "2026-03-06")] lemma forget_map (f : A ⟶ B) : (forget (CommAlgCat.{v} R)).map f = (f : _ → _) := rfl instance : CommRing ((forget (CommAlgCat R)).obj A) := inferInstanceAs <| CommRing A diff --git a/mathlib4/Mathlib/Algebra/Category/CommBialgCat.lean b/mathlib4/Mathlib/Algebra/Category/CommBialgCat.lean index 444d27bcf..904e73be8 100644 --- a/mathlib4/Mathlib/Algebra/Category/CommBialgCat.lean +++ b/mathlib4/Mathlib/Algebra/Category/CommBialgCat.lean @@ -121,7 +121,7 @@ instance : Inhabited (CommBialgCat R) := ⟨of R R⟩ lemma forget_obj (A : CommBialgCat.{v} R) : (forget (CommBialgCat.{v} R)).obj A = A := rfl -@[deprecated ConcreteCategory.forget_map_eq_ofHom (since := "2026-03-06")] +@[deprecated ConcreteCategory.forget_map_eq_ofHom +typeChanged (since := "2026-03-06")] lemma forget_map (f : A ⟶ B) : (forget (CommBialgCat.{v} R)).map f = (f : _ → _) := rfl instance : CommRing ((forget (CommBialgCat R)).obj A) := inferInstanceAs <| CommRing A diff --git a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Basic.lean b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Basic.lean index 9965a3a3f..943cd73b3 100644 --- a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Basic.lean @@ -218,7 +218,7 @@ end definitional equality issues. -/ lemma forget_obj {M : ModuleCat.{v} R} : (forget (ModuleCat.{v} R)).obj M = M := rfl -@[deprecated ConcreteCategory.forget_map_eq_ofHom (since := "2026-03-02")] +@[deprecated ConcreteCategory.forget_map_eq_ofHom +typeChanged (since := "2026-03-02")] lemma forget_map {M N : ModuleCat.{v} R} (f : M ⟶ N) : (forget (ModuleCat.{v} R)).map f = (f : _ → _) := rfl diff --git a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Semi.lean b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Semi.lean index 13ac4f283..d634de4c7 100644 --- a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Semi.lean +++ b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Semi.lean @@ -195,7 +195,7 @@ definitional equality issues. -/ lemma forget_obj {M : SemimoduleCat.{v} R} : ((forget (SemimoduleCat.{v} R)).obj M : Type _) = M := rfl -@[deprecated ConcreteCategory.forget_map_eq_ofHom (since := "2026-02-25")] +@[deprecated ConcreteCategory.forget_map_eq_ofHom +typeChanged (since := "2026-02-25")] lemma forget_map {M N : SemimoduleCat.{v} R} (f : M ⟶ N) : (forget (SemimoduleCat.{v} R)).map f = (f : _ → _) := rfl diff --git a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean index 3cd448913..2694b77d7 100644 --- a/mathlib4/Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean +++ b/mathlib4/Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean @@ -55,7 +55,7 @@ class Presentation.IsFinite {M : SheafOfModules.{u} R} (p : M.Presentation) : Pr attribute [instance] Presentation.IsFinite.isFiniteType_generators Presentation.IsFinite.isFiniteType_relations -@[deprecated Presentation.IsFinite.isFiniteType_relations (since := "2026-04-14")] +@[deprecated Presentation.IsFinite.isFiniteType_relations +typeChanged (since := "2026-04-14")] lemma Presentation.IsFinite.finite_relations {M : SheafOfModules.{u} R} (p : M.Presentation) [p.IsFinite] : Finite p.relations.I := GeneratingSections.IsFiniteType.finite diff --git a/mathlib4/Mathlib/Algebra/FreeMonoid/Basic.lean b/mathlib4/Mathlib/Algebra/FreeMonoid/Basic.lean index b5e85acc3..9d93aa7ad 100644 --- a/mathlib4/Mathlib/Algebra/FreeMonoid/Basic.lean +++ b/mathlib4/Mathlib/Algebra/FreeMonoid/Basic.lean @@ -114,13 +114,13 @@ theorem toList_one : toList (1 : FreeMonoid α) = [] := rfl @[to_additive (attr := simp)] theorem ofList_nil : ofList ([] : List α) = 1 := rfl -@[to_additive (attr := deprecated toList_one (since := "2026-03-26"))] +@[to_additive (attr := deprecated toList_one +typeChanged (since := "2026-03-26"))] theorem toList_nil : toList ([] : FreeMonoid α) = [] := rfl @[to_additive (attr := simp)] theorem toList_mul (xs ys : FreeMonoid α) : toList (xs * ys) = toList xs ++ toList ys := rfl -@[to_additive (attr := deprecated toList_mul (since := "2026-03-26"))] +@[to_additive (attr := deprecated toList_mul +typeChanged (since := "2026-03-26"))] theorem toList_cons (x : α) (xs : FreeMonoid α) : toList (x :: xs) = x :: toList xs := rfl @[to_additive (attr := simp)] diff --git a/mathlib4/Mathlib/Algebra/Group/Finsupp.lean b/mathlib4/Mathlib/Algebra/Group/Finsupp.lean index 3d4cdeca1..a1963e5e6 100644 --- a/mathlib4/Mathlib/Algebra/Group/Finsupp.lean +++ b/mathlib4/Mathlib/Algebra/Group/Finsupp.lean @@ -92,7 +92,7 @@ noncomputable def uniqueAddEquiv (i : ι) [Subsingleton ι] : (ι →₀ M) ≃+ /-- If `M` is the trivial monoid, then the monoid of finitely supported functions `ι →₀ M` is is isomorphic to `M`. -/ -@[simps!, deprecated uniqueAddEquiv (since := "2026-05-06")] +@[simps!, deprecated uniqueAddEquiv +typeChanged (since := "2026-05-06")] noncomputable def _root_.AddEquiv.finsuppUnique {ι : Type*} [Unique ι] : (ι →₀ M) ≃+ M where toEquiv := .finsuppUnique map_add' _ _ := rfl @@ -177,7 +177,7 @@ lemma support_single_add_single_subset [DecidableEq ι] {f₁ f₂ : ι} {g₁ g exact subset_trans Finsupp.support_single_subset (by simp) set_option backward.isDefEq.respectTransparency false in -@[deprecated uniqueAddEquiv_symm_apply (since := "2026-05-06")] +@[deprecated uniqueAddEquiv_symm_apply +typeChanged (since := "2026-05-06")] lemma _root_.AddEquiv.finsuppUnique_symm {M : Type*} [AddZeroClass M] (d : M) : AddEquiv.finsuppUnique.symm d = single () d := by ext; simp [AddEquiv.finsuppUnique] diff --git a/mathlib4/Mathlib/Algebra/Group/Subgroup/Defs.lean b/mathlib4/Mathlib/Algebra/Group/Subgroup/Defs.lean index 81e5bb70d..3eea4ee6a 100644 --- a/mathlib4/Mathlib/Algebra/Group/Subgroup/Defs.lean +++ b/mathlib4/Mathlib/Algebra/Group/Subgroup/Defs.lean @@ -399,8 +399,10 @@ theorem toSubmonoid_le {p q : Subgroup G} : p.toSubmonoid ≤ q.toSubmonoid ↔ @[to_additive] lemma coe_nonempty (s : Subgroup G) : (s : Set G).Nonempty := ⟨1, one_mem _⟩ -attribute [deprecated OneMemClass.coe_nonempty (since := "2026-04-20")] Subgroup.coe_nonempty -attribute [deprecated ZeroMemClass.coe_nonempty (since := "2026-04-20")] AddSubgroup.coe_nonempty +attribute [deprecated OneMemClass.coe_nonempty + +typeChanged (since := "2026-04-20")] Subgroup.coe_nonempty +attribute [deprecated ZeroMemClass.coe_nonempty + +typeChanged (since := "2026-04-20")] AddSubgroup.coe_nonempty end Subgroup @@ -714,11 +716,11 @@ theorem le_normalizer : H ≤ normalizer H := fun x xH n => by end Normalizer -@[to_additive (attr := deprecated inferInstance (since := "2026-04-09"))] +@[to_additive (attr := deprecated inferInstance +typeChanged (since := "2026-04-09"))] theorem commGroup_isMulCommutative {G : Type*} [CommGroup G] (H : Subgroup G) : IsMulCommutative H := inferInstance -@[to_additive (attr := deprecated setLike_mul_comm (since := "2026-03-09"))] +@[to_additive (attr := deprecated setLike_mul_comm +typeChanged (since := "2026-03-09"))] lemma mul_comm_of_mem_isMulCommutative [IsMulCommutative H] {a b : G} (ha : a ∈ H) (hb : b ∈ H) : a * b = b * a := setLike_mul_comm ha hb diff --git a/mathlib4/Mathlib/Algebra/GroupWithZero/Action/Defs.lean b/mathlib4/Mathlib/Algebra/GroupWithZero/Action/Defs.lean index 25971ff5f..275bc4b82 100644 --- a/mathlib4/Mathlib/Algebra/GroupWithZero/Action/Defs.lean +++ b/mathlib4/Mathlib/Algebra/GroupWithZero/Action/Defs.lean @@ -381,7 +381,7 @@ protected abbrev Function.Surjective.distribMulAction [AddMonoid B] [SMul M B] ( variable (A) /-- Each element of the monoid defines an additive monoid homomorphism. -/ -@[simps!, deprecated DistribSMul.toAddMonoidHom (since := "2026-01-07")] +@[simps!, deprecated DistribSMul.toAddMonoidHom +typeChanged (since := "2026-01-07")] def DistribMulAction.toAddMonoidHom (x : M) : A →+ A := DistribSMul.toAddMonoidHom A x diff --git a/mathlib4/Mathlib/Algebra/GroupWithZero/Associated.lean b/mathlib4/Mathlib/Algebra/GroupWithZero/Associated.lean index de3d8bd03..c687502b2 100644 --- a/mathlib4/Mathlib/Algebra/GroupWithZero/Associated.lean +++ b/mathlib4/Mathlib/Algebra/GroupWithZero/Associated.lean @@ -538,7 +538,7 @@ instance : IsBotOneClass (Associates M) where instance instOrderBot : OrderBot (Associates M) where bot_le _ := one_le -@[deprecated _root_.one_le (since := "2026-05-07")] +@[deprecated _root_.one_le +typeChanged (since := "2026-05-07")] protected theorem one_le {a : Associates M} : 1 ≤ a := one_le diff --git a/mathlib4/Mathlib/Algebra/Module/Hom.lean b/mathlib4/Mathlib/Algebra/Module/Hom.lean index 0482e7ef1..cabe9c4de 100644 --- a/mathlib4/Mathlib/Algebra/Module/Hom.lean +++ b/mathlib4/Mathlib/Algebra/Module/Hom.lean @@ -115,7 +115,7 @@ namespace AddMonoidHom /-- Scalar multiplication on the left as an additive monoid homomorphism. See also the linear map version of this `Module.End.smulLeft`. -/ -@[simps! -fullyApplied, deprecated DistribSMul.toAddMonoidHom (since := "2026-01-07")] +@[simps! -fullyApplied, deprecated DistribSMul.toAddMonoidHom +typeChanged (since := "2026-01-07")] protected def smulLeft [AddMonoid A] [DistribSMul M A] (c : M) : A →+ A := DistribSMul.toAddMonoidHom _ c diff --git a/mathlib4/Mathlib/Algebra/MonoidAlgebra/Defs.lean b/mathlib4/Mathlib/Algebra/MonoidAlgebra/Defs.lean index 17a0cca03..aaa02dfcd 100644 --- a/mathlib4/Mathlib/Algebra/MonoidAlgebra/Defs.lean +++ b/mathlib4/Mathlib/Algebra/MonoidAlgebra/Defs.lean @@ -356,7 +356,7 @@ lemma single_zero (m : M) : (single m 0 : R[M]) = 0 := by simp [single] lemma single_add (m : M) (r₁ r₂ : R) : single m (r₁ + r₂) = single m r₁ + single m r₂ := by ext; simp -@[to_additive (attr := deprecated coeff_add (since := "2026-06-18"))] +@[to_additive (attr := deprecated coeff_add +typeChanged (since := "2026-06-18"))] lemma coe_add (f g : R[M]) : ⇑(f + g).coeff = f.coeff + g.coeff := rfl @[to_additive (attr := simp)] @@ -410,7 +410,7 @@ lemma addHom_ext' {N : Type*} [AddZeroClass N] ⦃f g : R[M] →+ N⦄ (hfg : ∀ m, f.comp (singleAddHom m) = g.comp (singleAddHom m)) : f = g := addMonoidHom_ext <| by simpa [DFunLike.ext_iff] using hfg -@[to_additive (attr := deprecated Finsupp.sum_single_index (since := "2026-06-18"))] +@[to_additive (attr := deprecated Finsupp.sum_single_index +typeChanged (since := "2026-06-18"))] lemma sum_single_index [AddCommMonoid N] {m : M} {r : R} {h : M → R → N} (h_zero : h m 0 = 0) : (single m r).coeff.sum h = h m r := by simp [h_zero] @@ -421,7 +421,7 @@ lemma sum_coeff_single (f : R[M]) : f.coeff.sum single = f := by ext; simp @[to_additive (attr := deprecated sum_coeff_single (since := "2026-06-18"))] alias sum_single := sum_coeff_single -@[to_additive (attr := deprecated Finsupp.single_apply (since := "2026-06-18"))] +@[to_additive (attr := deprecated Finsupp.single_apply +typeChanged (since := "2026-06-18"))] theorem coeff_single_apply {a a' : M} {b : R} [Decidable (a = a')] : (single a b).coeff a' = if a = a' then b else 0 := Finsupp.single_apply @@ -596,14 +596,14 @@ lemma coeff_single_mul_of_forall_mul_ne (r : R) (x : R[M]) (h : ∀ d, m * d ≠ (single m r * x).coeff m' = 0 := by classical simp [coeff_mul, h] set_option backward.isDefEq.respectTransparency false in -@[to_additive (attr := deprecated coeff_mul_single_of_forall_mul_ne (since := "2026-06-18")) - (dont_translate := R)] +@[to_additive (attr := deprecated coeff_mul_single_of_forall_mul_ne + +typeChanged (since := "2026-06-18")) (dont_translate := R)] lemma mul_single_apply_of_not_exists_mul (r : R) {g g' : M} (x : R[M]) (h : ¬∃ d, g' = d * g) : (x * single g r).coeff g' = 0 := coeff_mul_single_of_forall_mul_ne _ _ <| by simpa [eq_comm] using h -@[to_additive (attr := deprecated coeff_single_mul_of_forall_mul_ne (since := "2026-06-18")) - (dont_translate := R)] +@[to_additive (attr := deprecated coeff_single_mul_of_forall_mul_ne + +typeChanged (since := "2026-06-18")) (dont_translate := R)] lemma single_mul_apply_of_not_exists_mul (r : R) {g g' : M} (x : R[M]) (h : ¬∃ d, g' = g * d) : (single g r * x).coeff g' = 0 := coeff_single_mul_of_forall_mul_ne _ _ <| by simpa [eq_comm] using h @@ -930,7 +930,7 @@ lemma intCast_def [MulOneClass M] (z : ℤ) : (z : R[M]) = single 1 (z : R) := r @[to_additive (dont_translate := R)] instance ring [Monoid M] : Ring R[M] where -@[deprecated coeff_neg (since := "2026-06-18")] +@[deprecated coeff_neg +typeChanged (since := "2026-06-18")] lemma neg_apply (m : M) (x : R[M]) : (-x).coeff m = -x.coeff m := rfl end Ring diff --git a/mathlib4/Mathlib/Algebra/MvPolynomial/Basic.lean b/mathlib4/Mathlib/Algebra/MvPolynomial/Basic.lean index 160529bdc..a5cd8a654 100644 --- a/mathlib4/Mathlib/Algebra/MvPolynomial/Basic.lean +++ b/mathlib4/Mathlib/Algebra/MvPolynomial/Basic.lean @@ -597,8 +597,9 @@ theorem eq_monomial_of_support_subset_singleton {φ : MvPolynomial σ R} {d₀ : classical ext d rcases eq_or_ne d d₀ with rfl | hd - · rw [coeff_monomial, if_pos rfl] - · rw [notMem_support_iff.mp fun hmem ↦ hd (h d hmem), coeff_monomial, if_neg fun e ↦ hd e.symm] + · rw [coeff_monomial, ite_eq_left rfl] + · rw [notMem_support_iff.mp fun hmem ↦ hd (h d hmem), coeff_monomial, + ite_eq_right fun e ↦ hd e.symm] @[simp] theorem coeff_C [DecidableEq σ] (m) (a) : diff --git a/mathlib4/Mathlib/Algebra/MvPolynomial/CommRing.lean b/mathlib4/Mathlib/Algebra/MvPolynomial/CommRing.lean index fcdaade15..0ab0ec110 100644 --- a/mathlib4/Mathlib/Algebra/MvPolynomial/CommRing.lean +++ b/mathlib4/Mathlib/Algebra/MvPolynomial/CommRing.lean @@ -87,7 +87,7 @@ theorem notMem_support_sub_monomial_sub_monomial (d d' : σ →₀ ℕ) (c : R) d ∉ (p - (monomial d c - monomial d' c)).support := by classical rw [notMem_support_iff, coeff_sub, coeff_sub, coeff_monomial, coeff_monomial, - if_pos rfl, if_neg hdd'.symm, sub_zero, hc, sub_self] + ite_eq_left rfl, ite_eq_right hdd'.symm, sub_zero, hc, sub_self] /-- Subtracting `monomial d c - monomial d' c` from `p`, where `c = coeff d p` and `d ≠ d'`, leaves the support inside `p.support.erase d ∪ {d'}`. -/ diff --git a/mathlib4/Mathlib/Algebra/MvPolynomial/Equiv.lean b/mathlib4/Mathlib/Algebra/MvPolynomial/Equiv.lean index 7d23b2bff..be513e714 100644 --- a/mathlib4/Mathlib/Algebra/MvPolynomial/Equiv.lean +++ b/mathlib4/Mathlib/Algebra/MvPolynomial/Equiv.lean @@ -120,16 +120,16 @@ theorem coeff_uniqueAlgEquiv_symm [Unique σ] (P : Polynomial R) (d : σ →₀ /-- The algebra isomorphism between multivariable polynomials in a single variable and polynomials over the ground ring. -/ -@[deprecated uniqueAlgEquiv (since := "2026-04-15")] +@[deprecated uniqueAlgEquiv +typeChanged (since := "2026-04-15")] abbrev pUnitAlgEquiv := uniqueAlgEquiv (R := R) PUnit -@[deprecated uniqueAlgEquiv_monomial (since := "2026-04-15")] +@[deprecated uniqueAlgEquiv_monomial +typeChanged (since := "2026-04-15")] theorem pUnitAlgEquiv_monomial {d : PUnit →₀ ℕ} {r : R} : MvPolynomial.pUnitAlgEquiv R (MvPolynomial.monomial d r) = Polynomial.monomial (d ()) r := uniqueAlgEquiv_monomial _ -@[deprecated uniqueAlgEquiv_symm_monomial (since := "2026-04-15")] +@[deprecated uniqueAlgEquiv_symm_monomial +typeChanged (since := "2026-04-15")] theorem pUnitAlgEquiv_symm_monomial {d : PUnit →₀ ℕ} {r : R} : (MvPolynomial.pUnitAlgEquiv R).symm (Polynomial.monomial (d ()) r) = MvPolynomial.monomial d r := @@ -228,24 +228,24 @@ theorem eval₂_const_uniqueAlgEquiv [Unique σ] {f : MvPolynomial σ R} f.eval₂ φ (fun _ ↦ a) := by rw [← eval₂_uniqueAlgEquiv] -@[deprecated eval₂_uniqueAlgEquiv_symm (since := "2026-04-15")] +@[deprecated eval₂_uniqueAlgEquiv_symm +typeChanged (since := "2026-04-15")] theorem eval₂_pUnitAlgEquiv_symm {f : Polynomial R} {φ : R →+* S} {a : Unit → S} : ((MvPolynomial.pUnitAlgEquiv R).symm f : MvPolynomial Unit R).eval₂ φ a = f.eval₂ φ (a ()) := eval₂_uniqueAlgEquiv_symm -@[deprecated eval₂_const_uniqueAlgEquiv_symm (since := "2026-04-15")] +@[deprecated eval₂_const_uniqueAlgEquiv_symm +typeChanged (since := "2026-04-15")] theorem eval₂_const_pUnitAlgEquiv_symm {f : Polynomial R} {φ : R →+* S} {a : S} : ((MvPolynomial.pUnitAlgEquiv R).symm f : MvPolynomial Unit R).eval₂ φ (fun _ ↦ a) = f.eval₂ φ a := eval₂_const_uniqueAlgEquiv_symm -@[deprecated eval₂_uniqueAlgEquiv (since := "2026-04-15")] +@[deprecated eval₂_uniqueAlgEquiv +typeChanged (since := "2026-04-15")] theorem eval₂_pUnitAlgEquiv {f : MvPolynomial PUnit R} {φ : R →+* S} {a : PUnit → S} : ((MvPolynomial.pUnitAlgEquiv R) f : Polynomial R).eval₂ φ (a default) = f.eval₂ φ a := eval₂_uniqueAlgEquiv -@[deprecated eval₂_const_uniqueAlgEquiv (since := "2026-04-15")] +@[deprecated eval₂_const_uniqueAlgEquiv +typeChanged (since := "2026-04-15")] theorem eval₂_const_pUnitAlgEquiv {f : MvPolynomial PUnit R} {φ : R →+* S} {a : S} : ((MvPolynomial.pUnitAlgEquiv R) f : Polynomial R).eval₂ φ a = f.eval₂ φ (fun _ ↦ a) := eval₂_const_uniqueAlgEquiv @@ -349,19 +349,19 @@ with coefficients in multivariable polynomials in the other type. See `sumRingEquiv` for the ring isomorphism. -/ -@[deprecated sumRingEquiv (since := "2026-06-18")] +@[deprecated sumRingEquiv +typeChanged (since := "2026-06-18")] def sumToIter : MvPolynomial (S₁ ⊕ S₂) R →+* MvPolynomial S₁ (MvPolynomial S₂ R) := eval₂Hom (C.comp C) fun bc => Sum.recOn bc X (C ∘ X) -@[deprecated sumRingEquiv_C (since := "2026-06-18")] +@[deprecated sumRingEquiv_C +typeChanged (since := "2026-06-18")] theorem sumToIter_C (a : R) : sumToIter R S₁ S₂ (C a) = C (C a) := eval₂_C _ _ a -@[deprecated sumRingEquiv_X_inl (since := "2026-06-18")] +@[deprecated sumRingEquiv_X_inl +typeChanged (since := "2026-06-18")] theorem sumToIter_Xl (b : S₁) : sumToIter R S₁ S₂ (X (Sum.inl b)) = X b := eval₂_X _ _ (Sum.inl b) -@[deprecated sumRingEquiv_X_inr (since := "2026-06-18")] +@[deprecated sumRingEquiv_X_inr +typeChanged (since := "2026-06-18")] theorem sumToIter_Xr (c : S₂) : sumToIter R S₁ S₂ (X (Sum.inr c)) = C (X c) := eval₂_X _ _ (Sum.inr c) @@ -371,19 +371,19 @@ to multivariable polynomials in the sum of the two types. See `sumRingEquiv` for the ring isomorphism. -/ -@[deprecated sumRingEquiv (since := "2026-06-18")] +@[deprecated sumRingEquiv +typeChanged (since := "2026-06-18")] def iterToSum : MvPolynomial S₁ (MvPolynomial S₂ R) →+* MvPolynomial (S₁ ⊕ S₂) R := eval₂Hom (eval₂Hom C (X ∘ Sum.inr)) (X ∘ Sum.inl) -@[deprecated sumRingEquiv_symm_C_C (since := "2026-06-18")] +@[deprecated sumRingEquiv_symm_C_C +typeChanged (since := "2026-06-18")] theorem iterToSum_C_C (a : R) : iterToSum R S₁ S₂ (C (C a)) = C a := Eq.trans (eval₂_C _ _ (C a)) (eval₂_C _ _ _) -@[deprecated sumRingEquiv_symm_X (since := "2026-06-18")] +@[deprecated sumRingEquiv_symm_X +typeChanged (since := "2026-06-18")] theorem iterToSum_X (b : S₁) : iterToSum R S₁ S₂ (X b) = X (Sum.inl b) := eval₂_X _ _ _ -@[deprecated sumRingEquiv_symm_C_X (since := "2026-06-18")] +@[deprecated sumRingEquiv_symm_C_X +typeChanged (since := "2026-06-18")] theorem iterToSum_C_X (c : S₂) : iterToSum R S₁ S₂ (C (X c)) = X (Sum.inr c) := Eq.trans (eval₂_C _ _ (X c)) (eval₂_X _ _ _) diff --git a/mathlib4/Mathlib/Algebra/Order/Archimedean/Real/Basic.lean b/mathlib4/Mathlib/Algebra/Order/Archimedean/Real/Basic.lean index d7e3cc183..7c8d4d2bb 100644 --- a/mathlib4/Mathlib/Algebra/Order/Archimedean/Real/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Order/Archimedean/Real/Basic.lean @@ -52,7 +52,7 @@ theorem of_near (f : ℕ → ℚ) (x : ℝ) (h : ∀ ε > 0, ∃ i, ∀ j ≥ i, (eq_of_le_of_forall_lt_imp_le_of_dense (abs_nonneg _)) fun _ε ε0 => mk_near_of_forall_near <| (h _ ε0).imp fun _i h j ij => le_of_lt (h j ij)⟩ -@[deprecated _root_.exists_floor (since := "2026-01-29")] +@[deprecated _root_.exists_floor +typeChanged (since := "2026-01-29")] theorem exists_floor (x : ℝ) : ∃ ub : ℤ, (ub : ℝ) ≤ x ∧ ∀ z : ℤ, (z : ℝ) ≤ x → z ≤ ub := ⟨⌊x⌋, Int.floor_le x, fun _ ↦ Int.le_floor.mpr⟩ diff --git a/mathlib4/Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean b/mathlib4/Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean index 0d96d6a01..7994f3635 100644 --- a/mathlib4/Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean +++ b/mathlib4/Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean @@ -148,7 +148,7 @@ lemma sum_sq_le_sum_mul_sum_of_sq_le_mul [CommSemiring R] [LinearOrder R] [IsStr repeat rw [mul_assoc] _ = _ := by simp_rw [sum_add_distrib, ← sum_mul]; ring -@[deprecated sum_sq_le_sum_mul_sum_of_sq_le_mul (since := "2026-05-12")] +@[deprecated sum_sq_le_sum_mul_sum_of_sq_le_mul +typeChanged (since := "2026-05-12")] lemma sum_sq_le_sum_mul_sum_of_sq_eq_mul [CommSemiring R] [LinearOrder R] [IsStrictOrderedRing R] [ExistsAddOfLE R] (s : Finset ι) {r f g : ι → R} (hf : ∀ i ∈ s, 0 ≤ f i) (hg : ∀ i ∈ s, 0 ≤ g i) diff --git a/mathlib4/Mathlib/Algebra/Order/GroupWithZero/Canonical.lean b/mathlib4/Mathlib/Algebra/Order/GroupWithZero/Canonical.lean index 72e1b6508..8160cdc43 100644 --- a/mathlib4/Mathlib/Algebra/Order/GroupWithZero/Canonical.lean +++ b/mathlib4/Mathlib/Algebra/Order/GroupWithZero/Canonical.lean @@ -234,7 +234,7 @@ instance instBoundedOrder [OrderTop α] : BoundedOrder (WithZero α) := instance : IsBotZeroClass (WithZero α) where isBot_zero _ := bot_le -@[deprecated _root_.zero_le (since := "2026-05-06")] +@[deprecated _root_.zero_le +typeChanged (since := "2026-05-06")] protected lemma zero_le (a : WithZero α) : 0 ≤ a := by simp /-- There is a general version `le_zero_iff`, but this lemma does not require a `PartialOrder`. -/ diff --git a/mathlib4/Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean b/mathlib4/Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean index 3fa36da6e..2133426be 100644 --- a/mathlib4/Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean @@ -707,7 +707,7 @@ lemma two_mul_le_add_of_sq_le_mul [ExistsAddOfLE R] [MulPosStrictMono R] [PosMul rw [mul_mul_mul_comm, ← pow_two r, two_mul, two_add_two_eq_four] grw [mul_le_mul_of_nonneg_left ht zero_le_four, ← mul_assoc, four_mul_le_sq_add a b, sq] -@[deprecated two_mul_le_add_of_sq_le_mul (since := "2026-04-20")] +@[deprecated two_mul_le_add_of_sq_le_mul +typeChanged (since := "2026-04-20")] lemma two_mul_le_add_of_sq_eq_mul [ExistsAddOfLE R] [MulPosStrictMono R] [PosMulStrictMono R] [AddLeftReflectLE R] [AddLeftMono R] {a b r : R} (ha : 0 ≤ a) (hb : 0 ≤ b) (ht : r ^ 2 = a * b) : 2 * r ≤ a + b := diff --git a/mathlib4/Mathlib/Algebra/Polynomial/Derivative.lean b/mathlib4/Mathlib/Algebra/Polynomial/Derivative.lean index 5e69cef23..8c3947cd7 100644 --- a/mathlib4/Mathlib/Algebra/Polynomial/Derivative.lean +++ b/mathlib4/Mathlib/Algebra/Polynomial/Derivative.lean @@ -450,13 +450,13 @@ lemma derivative_ne_zero : p.derivative ≠ 0 ↔ p.natDegree ≠ 0 := derivativ norm_cast congr <;> lia -@[deprecated (since := "2026-06-03")] +@[deprecated derivative_eq_zero +typeChanged (since := "2026-06-03")] alias ⟨natDegree_eq_zero_of_derivative_eq_zero, _⟩ := derivative_eq_zero lemma eq_C_of_derivative_eq_zero (h : derivative p = 0) : p = C (p.coeff 0) := eq_C_of_natDegree_eq_zero <| derivative_eq_zero.1 h -@[deprecated degree_derivative (since := "2026-06-03")] +@[deprecated degree_derivative +typeChanged (since := "2026-06-03")] lemma degree_derivative_eq (p : R[X]) (hp : 0 < natDegree p) : degree (derivative p) = (natDegree p - 1 : ℕ) := degree_derivative (by lia) diff --git a/mathlib4/Mathlib/Algebra/Polynomial/Div.lean b/mathlib4/Mathlib/Algebra/Polynomial/Div.lean index 9e8588144..b9ea4ed58 100644 --- a/mathlib4/Mathlib/Algebra/Polynomial/Div.lean +++ b/mathlib4/Mathlib/Algebra/Polynomial/Div.lean @@ -496,7 +496,7 @@ section multiplicity /-- An algorithm for deciding polynomial divisibility. Prefer `Classical.dec`, as the algorithm relies on `%ₘ` and so is `noncomputable`. -/ -@[deprecated Classical.dec (since := "2026-02-07")] +@[deprecated Classical.dec +typeChanged (since := "2026-02-07")] def decidableDvdMonic [DecidableEq R] (p : R[X]) (hq : Monic q) : Decidable (q ∣ p) := decidable_of_iff (p %ₘ q = 0) (modByMonic_eq_zero_iff_dvd hq) diff --git a/mathlib4/Mathlib/Algebra/Ring/Equiv.lean b/mathlib4/Mathlib/Algebra/Ring/Equiv.lean index 01f6881c0..0ca4ef8bf 100644 --- a/mathlib4/Mathlib/Algebra/Ring/Equiv.lean +++ b/mathlib4/Mathlib/Algebra/Ring/Equiv.lean @@ -717,12 +717,12 @@ theorem toNonUnitalRingHom_refl : (RingEquiv.refl R).toNonUnitalRingHom = NonUnitalRingHom.id R := rfl -@[deprecated apply_symm_apply (since := "2026-06-16")] +@[deprecated apply_symm_apply +typeChanged (since := "2026-06-16")] theorem toNonUnitalRingHom_apply_symm_toNonUnitalRingHom_apply (e : R ≃+* S) : ∀ y : S, e.toNonUnitalRingHom (e.symm.toNonUnitalRingHom y) = y := e.toEquiv.apply_symm_apply -@[deprecated symm_apply_apply (since := "2026-06-16")] +@[deprecated symm_apply_apply +typeChanged (since := "2026-06-16")] theorem symm_toNonUnitalRingHom_apply_toNonUnitalRingHom_apply (e : R ≃+* S) : ∀ x : R, e.symm.toNonUnitalRingHom (e.toNonUnitalRingHom x) = x := Equiv.symm_apply_apply e.toEquiv diff --git a/mathlib4/Mathlib/Algebra/Ring/Subring/Basic.lean b/mathlib4/Mathlib/Algebra/Ring/Subring/Basic.lean index a39e4dfbe..cbf1075e0 100644 --- a/mathlib4/Mathlib/Algebra/Ring/Subring/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Ring/Subring/Basic.lean @@ -592,7 +592,7 @@ theorem isMulCommutative_closure {R} [Ring R] {s : Set R} open scoped IsMulCommutative in /-- If all elements of `s : Set R` commute pairwise, then `closure s` is a commutative ring. -/ -@[deprecated isMulCommutative_closure (since := "2026-03-11")] +@[deprecated isMulCommutative_closure +typeChanged (since := "2026-03-11")] abbrev closureCommRingOfComm {R} [Ring R] {s : Set R} (hcomm : ∀ x ∈ s, ∀ y ∈ s, x * y = y * x) : CommRing (closure s) := have := isMulCommutative_closure hcomm diff --git a/mathlib4/Mathlib/Algebra/Ring/Subsemiring/Basic.lean b/mathlib4/Mathlib/Algebra/Ring/Subsemiring/Basic.lean index 0d670dff4..6bd590155 100644 --- a/mathlib4/Mathlib/Algebra/Ring/Subsemiring/Basic.lean +++ b/mathlib4/Mathlib/Algebra/Ring/Subsemiring/Basic.lean @@ -1028,7 +1028,7 @@ theorem isMulCommutative_closure {s : Set R'} (hcomm : ∀ x ∈ s, ∀ y ∈ s, open scoped IsMulCommutative in /-- If all the elements of a set `s` commute, then `closure s` is a commutative semiring. -/ -@[deprecated isMulCommutative_closure (since := "2026-03-11")] +@[deprecated isMulCommutative_closure +typeChanged (since := "2026-03-11")] abbrev closureCommSemiringOfComm {s : Set R'} (hcomm : ∀ x ∈ s, ∀ y ∈ s, x * y = y * x) : CommSemiring (closure s) := have := isMulCommutative_closure hcomm diff --git a/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean b/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean index 1defc05fd..e923beebc 100644 --- a/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean +++ b/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean @@ -340,7 +340,7 @@ theorem single_one_one : single (1 : G) (1 : k) = 1 := rfl theorem one_def : (1 : SkewMonoidAlgebra k G) = single 1 1 := rfl -@[deprecated coeff_one (since := "2026-07-04")] +@[deprecated coeff_one +typeChanged (since := "2026-07-04")] theorem coeff_one_one : coeff (1 : SkewMonoidAlgebra k G) 1 = 1 := by simp theorem natCast_def (n : ℕ) : (n : SkewMonoidAlgebra k G) = single (1 : G) (n : k) := by diff --git a/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Single.lean b/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Single.lean index c6b3d05e9..d35bfc27a 100644 --- a/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Single.lean +++ b/mathlib4/Mathlib/Algebra/SkewMonoidAlgebra/Single.lean @@ -40,12 +40,12 @@ If `a` is not in the support of `f` then `erase a f = f`. -/ theorem support_erase [DecidableEq α] : (f.erase a).support = f.support.erase a := by ext; simp [erase] -@[deprecated Finsupp.erase_same (since := "2026-07-04")] +@[deprecated Finsupp.erase_same +typeChanged (since := "2026-07-04")] theorem coeff_erase_same : (f.erase a).coeff a = 0 := by simp [erase] variable {a a'} in -@[deprecated Finsupp.erase_ne (since := "2026-07-04")] +@[deprecated Finsupp.erase_ne +typeChanged (since := "2026-07-04")] theorem coeff_erase_ne (h : a' ≠ a) : (f.erase a).coeff a' = f.coeff a' := by simp [erase, h] @@ -99,18 +99,18 @@ theorem support_update [DecidableEq α] [DecidableEq M] : support (f.update a b) = if b = 0 then f.support.erase a else insert a f.support := by aesop (add norm [update, Finsupp.support_update_ne_zero]) -@[deprecated Finsupp.update_apply (since := "2026-07-04")] +@[deprecated Finsupp.update_apply +typeChanged (since := "2026-07-04")] theorem coeff_update_apply [DecidableEq α] : (f.update a b).coeff a' = if a' = a then b else f.coeff a' := by simp [coeff_update, Function.update_apply] -@[deprecated Finsupp.update_apply (since := "2026-07-04")] +@[deprecated Finsupp.update_apply +typeChanged (since := "2026-07-04")] theorem coeff_update_same : (f.update a b).coeff a = b := by classical rw [f.coeff_update_apply, ite_eq_left rfl] variable {a a'} in -@[deprecated Finsupp.update_apply (since := "2026-07-04")] +@[deprecated Finsupp.update_apply +typeChanged (since := "2026-07-04")] theorem coeff_update_ne (h : a' ≠ a) : (f.update a b).coeff a' = f.coeff a' := by classical rw [f.coeff_update_apply, ite_eq_right h] diff --git a/mathlib4/Mathlib/Algebra/SkewPolynomial/Basic.lean b/mathlib4/Mathlib/Algebra/SkewPolynomial/Basic.lean index b7695f2d8..02452774d 100644 --- a/mathlib4/Mathlib/Algebra/SkewPolynomial/Basic.lean +++ b/mathlib4/Mathlib/Algebra/SkewPolynomial/Basic.lean @@ -674,11 +674,11 @@ lemma erase_zero (n : ℕ) : (0 : SkewPolynomial R).erase n = 0 := by lemma erase_monomial {n : ℕ} {a : R} : erase n (monomial n a) = 0 := by simp [erase, monomial_def, zero_def] -@[deprecated coeff_erase (since := "2026-07-06")] +@[deprecated coeff_erase +typeChanged (since := "2026-07-06")] lemma erase_same (p : SkewPolynomial R) (n : ℕ) : coeff (p.erase n) n = 0 := by simp [coeff_erase] -@[deprecated coeff_erase (since := "2026-07-06")] +@[deprecated coeff_erase +typeChanged (since := "2026-07-06")] lemma erase_ne (p : SkewPolynomial R) {n i : ℕ} (h : i ≠ n) : coeff (p.erase n) i = coeff p i := by simp [coeff_erase, h] @@ -703,16 +703,16 @@ lemma coeff_update (p : SkewPolynomial R) (n : ℕ) (a : R) : (p.update n a).coeff = Function.update p.coeff n a := by ext; simp [coeff, update]; rfl -@[deprecated coeff_update (since := "2026-07-06")] +@[deprecated coeff_update +typeChanged (since := "2026-07-06")] lemma coeff_update_apply (p : SkewPolynomial R) (n : ℕ) (a : R) (i : ℕ) : (p.update n a).coeff i = if i = n then a else p.coeff i := SkewMonoidAlgebra.coeff_update_apply _ _ _ _ -@[deprecated coeff_update (since := "2026-07-06")] +@[deprecated coeff_update +typeChanged (since := "2026-07-06")] lemma coeff_update_same (p : SkewPolynomial R) (n : ℕ) (a : R) : (p.update n a).coeff n = a := by rw [p.coeff_update_apply, ite_eq_left rfl] -@[deprecated coeff_update (since := "2026-07-06")] +@[deprecated coeff_update +typeChanged (since := "2026-07-06")] lemma coeff_update_ne (p : SkewPolynomial R) {n i : ℕ} (a : R) (h : i ≠ n) : (p.update n a).coeff i = p.coeff i := by rw [p.coeff_update_apply, ite_eq_right h] diff --git a/mathlib4/Mathlib/Algebra/Star/NonUnitalSubalgebra.lean b/mathlib4/Mathlib/Algebra/Star/NonUnitalSubalgebra.lean index 4f9e0b65f..620da4cab 100644 --- a/mathlib4/Mathlib/Algebra/Star/NonUnitalSubalgebra.lean +++ b/mathlib4/Mathlib/Algebra/Star/NonUnitalSubalgebra.lean @@ -1275,7 +1275,7 @@ variable (R) in is a non-unital commutative semiring. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinNonUnitalCommSemiringOfComm {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) (hcomm_star : ∀ a ∈ s, ∀ b ∈ s, a * star b = star b * a) : NonUnitalCommSemiring (adjoin R s) := @@ -1293,7 +1293,7 @@ open scoped IsMulCommutative in is a non-unital commutative ring. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinNonUnitalCommRingOfComm (R : Type*) {A : Type*} [CommRing R] [StarRing R] [NonUnitalRing A] [StarRing A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] [StarModule R A] {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) diff --git a/mathlib4/Mathlib/Algebra/Star/Subalgebra.lean b/mathlib4/Mathlib/Algebra/Star/Subalgebra.lean index c9039e2bb..19f271bac 100644 --- a/mathlib4/Mathlib/Algebra/Star/Subalgebra.lean +++ b/mathlib4/Mathlib/Algebra/Star/Subalgebra.lean @@ -602,7 +602,7 @@ theorem isMulCommutative_adjoin {s : Set A} (hcomm : ∀ x ∈ s, ∀ y ∈ s, x open scoped IsMulCommutative in /-- If all elements of `s : Set A` commute pairwise and also commute pairwise with elements of `star s`, then `StarSubalgebra.adjoin R s` is commutative. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinCommSemiringOfComm {s : Set A} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) (hcomm_star : ∀ a ∈ s, ∀ b ∈ s, a * star b = star b * a) : @@ -619,7 +619,7 @@ instance instIsMulCommutative_adjoin {S : Type*} [SetLike S A] [MulMemClass S A] open scoped IsMulCommutative in /-- If all elements of `s : Set A` commute pairwise and also commute pairwise with elements of `star s`, then `StarSubalgebra.adjoin R s` is commutative. See note [reducible non-instances]. -/ -@[deprecated isMulCommutative_adjoin (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin +typeChanged (since := "2026-03-11")] abbrev adjoinCommRingOfComm (R : Type u) {A : Type v} [CommRing R] [StarRing R] [Ring A] [Algebra R A] [StarRing A] [StarModule R A] {s : Set A} (hcomm : ∀ a : A, a ∈ s → ∀ b : A, b ∈ s → a * b = b * a) @@ -637,7 +637,7 @@ instance isMulCommutative_adjoin_singleton (x : A) [IsStarNormal x] : open scoped IsMulCommutative in /-- The star subalgebra `StarSubalgebra.adjoin R {x}` generated by a single `x : A` is commutative if `x` is normal. -/ -@[deprecated isMulCommutative_adjoin_singleton (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin_singleton +typeChanged (since := "2026-03-11")] instance adjoinCommSemiringOfIsStarNormal (x : A) [IsStarNormal x] : CommSemiring (adjoin R ({x} : Set A)) := have := isMulCommutative_adjoin_singleton R x @@ -646,7 +646,7 @@ instance adjoinCommSemiringOfIsStarNormal (x : A) [IsStarNormal x] : open scoped IsMulCommutative in /-- The star subalgebra `StarSubalgebra.adjoin R {x}` generated by a single `x : A` is commutative if `x` is normal. -/ -@[deprecated isMulCommutative_adjoin_singleton (since := "2026-03-11")] +@[deprecated isMulCommutative_adjoin_singleton +typeChanged (since := "2026-03-11")] instance adjoinCommRingOfIsStarNormal (R : Type u) {A : Type v} [CommRing R] [StarRing R] [Ring A] [Algebra R A] [StarRing A] [StarModule R A] (x : A) [IsStarNormal x] : CommRing (adjoin R ({x} : Set A)) := diff --git a/mathlib4/Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean b/mathlib4/Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean index 18e6d20b6..775160048 100644 --- a/mathlib4/Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean +++ b/mathlib4/Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean @@ -332,7 +332,8 @@ lemma opensRange_relativeGluingData_map (F : X.AffineZariskiSiteᵒᵖ ⥤ CommR alias PreservesLocalization.opensRange_map := opensRange_relativeGluingData_map set_option backward.isDefEq.respectTransparency.types false in -@[deprecated Cover.RelativeGluingData.toBase_preimage_eq_opensRange_ι (since := "2026-02-01")] +@[deprecated Cover.RelativeGluingData.toBase_preimage_eq_opensRange_ι + +typeChanged (since := "2026-02-01")] lemma PreservesLocalization.colimitDesc_preimage (F : X.AffineZariskiSiteᵒᵖ ⥤ CommRingCat) (α : (AffineZariskiSite.toOpensFunctor X).op ⋙ X.presheaf ⟶ F) (H : α.Coequifibered) (U : X.AffineZariskiSite) : diff --git a/mathlib4/Mathlib/AlgebraicTopology/Quasicategory/InnerFibration.lean b/mathlib4/Mathlib/AlgebraicTopology/Quasicategory/InnerFibration.lean index 0ccdfa7b6..a48d6b84a 100644 --- a/mathlib4/Mathlib/AlgebraicTopology/Quasicategory/InnerFibration.lean +++ b/mathlib4/Mathlib/AlgebraicTopology/Quasicategory/InnerFibration.lean @@ -99,12 +99,12 @@ lemma quasicategory_of_innerFibration instance {X : SSet} [Quasicategory X] : InnerFibration (terminal.from X) := by rwa [← quasicategory_iff_innerFibration] -@[deprecated quasicategory_iff_of_isTerminal (since := "2026-06-08")] +@[deprecated quasicategory_iff_of_isTerminal +typeChanged (since := "2026-06-08")] lemma quasicategory_of_from_innerFibrations (S : SSet) {X : SSet} (t : Limits.IsTerminal X) (h : innerFibrations (t.from S)) : Quasicategory S := quasicategory_of_hasLiftingProperty S t (fun h0 hn ↦ h _ (horn_ι_mem_innerHornInclusions h0 hn)) -@[deprecated quasicategory_iff_of_isTerminal (since := "2026-06-08")] +@[deprecated quasicategory_iff_of_isTerminal +typeChanged (since := "2026-06-08")] lemma Quasicategory.from_innerFibrations (S : SSet) [Quasicategory S] {X : SSet} (t : Limits.IsTerminal X) : innerFibrations (t.from S) := fun _ _ _ ⟨_, h0, hn⟩ ↦ hasLiftingProperty S t h0 hn diff --git a/mathlib4/Mathlib/Analysis/Calculus/Deriv/Basic.lean b/mathlib4/Mathlib/Analysis/Calculus/Deriv/Basic.lean index 99b298181..804591783 100644 --- a/mathlib4/Mathlib/Analysis/Calculus/Deriv/Basic.lean +++ b/mathlib4/Mathlib/Analysis/Calculus/Deriv/Basic.lean @@ -316,7 +316,7 @@ theorem HasDerivAtFilter.isTheta_sub (hf : HasDerivAtFilter f f' L) (hf' : f' (fun p ↦ f p.1 - f p.2) =Θ[L] (fun p ↦ p.1 - p.2) := HasFDerivAtFilter.isTheta_sub hf <| isInducing_toSpanSingleton hf' -@[deprecated HasDerivAtFilter.isTheta_sub (since := "2026-02-04")] +@[deprecated HasDerivAtFilter.isTheta_sub +typeChanged (since := "2026-02-04")] theorem HasDerivAtFilter.isBigO_sub_rev (hf : HasDerivAtFilter f f' L) (hf' : f' ≠ 0) : (fun p => p.1 - p.2) =O[L] fun p => f p.1 - f p.2 := hf.isTheta_sub hf' |>.isBigO_symm diff --git a/mathlib4/Mathlib/Analysis/Calculus/Deriv/Comp.lean b/mathlib4/Mathlib/Analysis/Calculus/Deriv/Comp.lean index 0b9db5a45..1848335f7 100644 --- a/mathlib4/Mathlib/Analysis/Calculus/Deriv/Comp.lean +++ b/mathlib4/Mathlib/Analysis/Calculus/Deriv/Comp.lean @@ -75,7 +75,7 @@ theorem HasDerivAtFilter.scomp (hg : HasDerivAtFilter g₁ g₁' L') HasDerivAtFilter (g₁ ∘ h) (h' • g₁') L := by simpa using ((hg.hasFDerivAtFilter.restrictScalars 𝕜).comp hh hL).hasDerivAtFilter -@[deprecated HasDerivAtFilter.scomp (since := "2026-02-17")] +@[deprecated HasDerivAtFilter.scomp +typeChanged (since := "2026-02-17")] theorem HasDerivAtFilter.scomp_of_eq {L : Filter 𝕜} {L' : Filter 𝕜'} (hg : HasDerivAtFilter g₁ g₁' (L' ×ˢ pure y)) (hh : HasDerivAtFilter h h' (L ×ˢ pure x)) (hy : y = h x) (hL : Tendsto h L L') : @@ -165,7 +165,7 @@ theorem HasDerivAtFilter.comp_hasFDerivAtFilter {f : E → 𝕜'} {f' : E →L[ ext x simp [mul_comm] -@[deprecated HasDerivAtFilter.comp_hasFDerivAtFilter (since := "2026-02-17")] +@[deprecated HasDerivAtFilter.comp_hasFDerivAtFilter +typeChanged (since := "2026-02-17")] theorem HasDerivAtFilter.comp_hasFDerivAtFilter_of_eq {f : E → 𝕜'} {f' : E →L[𝕜] 𝕜'} (x) {L' : Filter 𝕜'} {L'' : Filter E} (hh₂ : HasDerivAtFilter h₂ h₂' (L' ×ˢ pure y)) (hf : HasFDerivAtFilter f f' (L'' ×ˢ pure x)) @@ -233,7 +233,7 @@ theorem HasDerivAtFilter.comp (hh₂ : HasDerivAtFilter h₂ h₂' L') rw [mul_comm] exact hh₂.scomp hh hL -@[deprecated HasDerivAtFilter.comp (since := "2026-07-17")] +@[deprecated HasDerivAtFilter.comp +typeChanged (since := "2026-07-17")] theorem HasDerivAtFilter.comp_of_eq {L : Filter 𝕜} {L' : Filter 𝕜'} (hh₂ : HasDerivAtFilter h₂ h₂' (L' ×ˢ pure y)) (hh : HasDerivAtFilter h h' (L ×ˢ pure x)) (hL : Tendsto h L L') (hy : y = h x) : diff --git a/mathlib4/Mathlib/Analysis/Complex/UnitDisc/Basic.lean b/mathlib4/Mathlib/Analysis/Complex/UnitDisc/Basic.lean index e6ce3a7c5..0e0fe94b4 100644 --- a/mathlib4/Mathlib/Analysis/Complex/UnitDisc/Basic.lean +++ b/mathlib4/Mathlib/Analysis/Complex/UnitDisc/Basic.lean @@ -236,7 +236,7 @@ instance : Star 𝔻 where star z := mk (conj z) <| (norm_conj z).symm ▸ z.norm_lt_one /-- Conjugate point of the unit disc. Deprecated, use `star` instead. -/ -@[deprecated star (since := "2026-01-06")] +@[deprecated star +typeChanged (since := "2026-01-06")] protected def «conj» (z : 𝔻) := star z @[simp] theorem coe_star (z : 𝔻) : (↑(star z) : ℂ) = conj ↑z := rfl @@ -254,7 +254,7 @@ protected theorem star_zero : star (0 : 𝔻) = 0 := by simp instance : InvolutiveStar 𝔻 where star_involutive z := by ext; simp -@[deprecated star_star (since := "2026-01-06")] +@[deprecated star_star +typeChanged (since := "2026-01-06")] theorem conj_conj (z : 𝔻) : star (star z) = z := star_star z @[simp] protected theorem star_neg (z : 𝔻) : star (-z) = -(star z) := rfl @@ -274,7 +274,7 @@ alias re_conj := UnitDisc.re_star instance : StarMul 𝔻 where star_mul z w := coe_injective <| by simp [mul_comm] -@[deprecated star_mul' (since := "2026-01-06")] +@[deprecated star_mul' +typeChanged (since := "2026-01-06")] theorem conj_mul (z w : 𝔻) : star (z * w) = star z * star w := star_mul' z w diff --git a/mathlib4/Mathlib/Analysis/InnerProductSpace/PiL2.lean b/mathlib4/Mathlib/Analysis/InnerProductSpace/PiL2.lean index a938a909f..56992533c 100644 --- a/mathlib4/Mathlib/Analysis/InnerProductSpace/PiL2.lean +++ b/mathlib4/Mathlib/Analysis/InnerProductSpace/PiL2.lean @@ -298,20 +298,20 @@ variable [DecidableEq ι] all other coordinates. -/ abbrev EuclideanSpace.single (i : ι) (a : 𝕜) : EuclideanSpace 𝕜 ι := PiLp.single 2 i a -@[deprecated PiLp.ofLp_single (since := "2026-03-15")] +@[deprecated PiLp.ofLp_single +typeChanged (since := "2026-03-15")] lemma EuclideanSpace.ofLp_single (i : ι) (a : 𝕜) : ofLp (single i a) = Pi.single i a := by simp -@[deprecated PiLp.toLp_single (since := "2026-03-15")] +@[deprecated PiLp.toLp_single +typeChanged (since := "2026-03-15")] lemma EuclideanSpace.toLp_single (i : ι) (a : 𝕜) : toLp _ (Pi.single i a) = single i a := by simp -@[deprecated PiLp.single_apply (since := "2026-03-15")] +@[deprecated PiLp.single_apply +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.single_apply (i : ι) (a : 𝕜) (j : ι) : (EuclideanSpace.single i a) j = ite (j = i) a 0 := by simp -@[deprecated PiLp.single_eq_zero_iff (since := "2026-03-15")] +@[deprecated PiLp.single_eq_zero_iff +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.single_eq_zero_iff {i : ι} {a : 𝕜} : EuclideanSpace.single i a = 0 ↔ a = 0 := by simp @@ -324,25 +324,25 @@ theorem EuclideanSpace.inner_single_left (i : ι) (a : 𝕜) (v : EuclideanSpace theorem EuclideanSpace.inner_single_right (i : ι) (a : 𝕜) (v : EuclideanSpace 𝕜 ι) : ⟪v, EuclideanSpace.single i (a : 𝕜)⟫ = a * conj (v i) := by simp [PiLp.inner_apply] -@[deprecated PiLp.norm_single (since := "2026-03-15")] +@[deprecated PiLp.norm_single +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.norm_single (i : ι) (a : 𝕜) : ‖EuclideanSpace.single i (a : 𝕜)‖ = ‖a‖ := by simp -@[deprecated PiLp.nnnorm_single (since := "2026-03-15")] +@[deprecated PiLp.nnnorm_single +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.nnnorm_single (i : ι) (a : 𝕜) : ‖EuclideanSpace.single i (a : 𝕜)‖₊ = ‖a‖₊ := by simp -@[deprecated PiLp.dist_single_same (since := "2026-03-15")] +@[deprecated PiLp.dist_single_same +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.dist_single_same (i : ι) (a b : 𝕜) : dist (EuclideanSpace.single i (a : 𝕜)) (EuclideanSpace.single i (b : 𝕜)) = dist a b := by simp -@[deprecated PiLp.nndist_single_same (since := "2026-03-15")] +@[deprecated PiLp.nndist_single_same +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.nndist_single_same (i : ι) (a b : 𝕜) : nndist (EuclideanSpace.single i (a : 𝕜)) (EuclideanSpace.single i (b : 𝕜)) = nndist a b := by simp -@[deprecated PiLp.edist_single_same (since := "2026-03-15")] +@[deprecated PiLp.edist_single_same +typeChanged (since := "2026-03-15")] theorem EuclideanSpace.edist_single_same (i : ι) (a b : 𝕜) : edist (EuclideanSpace.single i (a : 𝕜)) (EuclideanSpace.single i (b : 𝕜)) = edist a b := by simp @@ -1243,31 +1243,31 @@ variable [Fintype n] [DecidableEq n] abbrev toEuclideanLin : Matrix m n 𝕜 ≃ₗ[𝕜] EuclideanSpace 𝕜 n →ₗ[𝕜] EuclideanSpace 𝕜 m := toLpLin 2 2 -@[deprecated toLpLin_toLp (since := "2026-01-22")] +@[deprecated toLpLin_toLp +typeChanged (since := "2026-01-22")] lemma toEuclideanLin_toLp (A : Matrix m n 𝕜) (x : n → 𝕜) : Matrix.toEuclideanLin A (toLp _ x) = toLp _ (Matrix.toLin' A x) := rfl -@[deprecated ofLp_toLpLin (since := "2026-01-22")] +@[deprecated ofLp_toLpLin +typeChanged (since := "2026-01-22")] theorem piLp_ofLp_toEuclideanLin (A : Matrix m n 𝕜) (x : EuclideanSpace 𝕜 n) : ofLp (Matrix.toEuclideanLin A x) = Matrix.toLin' A (ofLp x) := rfl -@[deprecated toLpLin_apply (since := "2026-01-22")] +@[deprecated toLpLin_apply +typeChanged (since := "2026-01-22")] theorem toEuclideanLin_apply (M : Matrix m n 𝕜) (v : EuclideanSpace 𝕜 n) : toEuclideanLin M v = toLp _ (M *ᵥ ofLp v) := rfl -@[deprecated ofLp_toLpLin (since := "2026-01-22")] +@[deprecated ofLp_toLpLin +typeChanged (since := "2026-01-22")] theorem ofLp_toEuclideanLin_apply (M : Matrix m n 𝕜) (v : EuclideanSpace 𝕜 n) : ofLp (toEuclideanLin M v) = M *ᵥ ofLp v := rfl -@[deprecated toLpLin_toLp (since := "2026-01-22")] +@[deprecated toLpLin_toLp +typeChanged (since := "2026-01-22")] theorem toEuclideanLin_apply_piLp_toLp (M : Matrix m n 𝕜) (v : n → 𝕜) : toEuclideanLin M (toLp _ v) = toLp _ (M *ᵥ v) := rfl -- `Matrix.toEuclideanLin` is the same as `Matrix.toLin` applied to `PiLp.basisFun`, -@[deprecated toLpLin_eq_toLin (since := "2026-01-22")] +@[deprecated toLpLin_eq_toLin +typeChanged (since := "2026-01-22")] theorem toEuclideanLin_eq_toLin [Finite m] : (toEuclideanLin : Matrix m n 𝕜 ≃ₗ[𝕜] _) = Matrix.toLin (PiLp.basisFun _ _ _) (PiLp.basisFun _ _ _) := diff --git a/mathlib4/Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean b/mathlib4/Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean index 8bf7fffdb..199eddb45 100644 --- a/mathlib4/Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean +++ b/mathlib4/Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean @@ -653,7 +653,7 @@ lemma re_inner_starProjection_eq_normSq [K.HasOrthogonalProjection] (v : E) : ← mul_sub_one, show (2 : ℝ) - 1 = 1 by norm_num, mul_one, sub_eq_iff_eq_add', norm_sub_rev] simpa [sq, add_comm] using K.norm_sq_eq_add_norm_sq_starProjection v -@[deprecated norm_sq_eq_add_norm_sq_starProjection (since := "2026-06-10")] +@[deprecated norm_sq_eq_add_norm_sq_starProjection +typeChanged (since := "2026-06-10")] theorem orthogonalProjectionFn_norm_sq [K.HasOrthogonalProjection] (v : E) : ‖v‖ * ‖v‖ = ‖v - K.orthogonalProjectionFn v‖ * ‖v - K.orthogonalProjectionFn v‖ + ‖K.orthogonalProjectionFn v‖ * ‖K.orthogonalProjectionFn v‖ := by diff --git a/mathlib4/Mathlib/Analysis/LocallyConvex/Barrelled.lean b/mathlib4/Mathlib/Analysis/LocallyConvex/Barrelled.lean index a9614fc00..b11d61b2f 100644 --- a/mathlib4/Mathlib/Analysis/LocallyConvex/Barrelled.lean +++ b/mathlib4/Mathlib/Analysis/LocallyConvex/Barrelled.lean @@ -239,7 +239,7 @@ is a *continuous* linear map as well. This actually works for any *countably generated* filter instead of `atTop : Filter ℕ`, but the proof ultimately goes back to sequences. -/ -@[deprecated continuousLinearMapOfTendsto (since := "2026-01-16")] +@[deprecated continuousLinearMapOfTendsto +typeChanged (since := "2026-01-16")] protected abbrev WithSeminorms.continuousLinearMapOfTendsto [T2Space F] {l : Filter α} [l.IsCountablyGenerated] [l.NeBot] (g : α → E →SL[σ₁₂] F) {f : E → F} (h : Tendsto (fun n x ↦ g n x) l (𝓝 f)) : diff --git a/mathlib4/Mathlib/Analysis/Matrix/Hermitian.lean b/mathlib4/Mathlib/Analysis/Matrix/Hermitian.lean index 1053555f8..9dbd85366 100644 --- a/mathlib4/Mathlib/Analysis/Matrix/Hermitian.lean +++ b/mathlib4/Mathlib/Analysis/Matrix/Hermitian.lean @@ -58,7 +58,7 @@ lemma isSymmetric_toEuclideanLin_iff [Fintype n] [DecidableEq n] : isSymmetric_toLin_iff (EuclideanSpace.basisFun n 𝕜) @[deprecated isSymmetric_toEuclideanLin_iff "use isSymmetric_toEuclideanLin_iff.symm" - (since := "2026-03-30")] + +typeChanged (since := "2026-03-30")] lemma isHermitian_iff_isSymmetric [Fintype n] [DecidableEq n] : IsHermitian A ↔ A.toEuclideanLin.IsSymmetric := isSymmetric_toEuclideanLin_iff.symm diff --git a/mathlib4/Mathlib/Analysis/Matrix/Spectrum.lean b/mathlib4/Mathlib/Analysis/Matrix/Spectrum.lean index 9d6631076..70fe1b9f2 100644 --- a/mathlib4/Mathlib/Analysis/Matrix/Spectrum.lean +++ b/mathlib4/Mathlib/Analysis/Matrix/Spectrum.lean @@ -42,7 +42,7 @@ theorem spectrum_toLpLin [DecidableEq n] (p : ENNReal) : AlgEquiv.spectrum_eq (Matrix.toLinAlgEquiv (PiLp.basisFun p 𝕜 n)) _ /-- The spectrum of a matrix `A` coincides with the spectrum of `toEuclideanLin A`. -/ -@[deprecated spectrum_toLpLin (since := "2026-01-21")] +@[deprecated spectrum_toLpLin +typeChanged (since := "2026-01-21")] theorem spectrum_toEuclideanLin [DecidableEq n] : spectrum 𝕜 (toEuclideanLin A) = spectrum 𝕜 A := spectrum_toLpLin 2 diff --git a/mathlib4/Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean b/mathlib4/Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean index 54550f49c..198f83e50 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean @@ -128,16 +128,16 @@ theorem decompLinearIsometryEquiv_symm_contLinear (p : W × (V →L[𝕜] W)) : rw [decompLinearIsometryEquiv, ← LinearIsometryEquiv.coe_symm_toLinearEquiv, decompLinearEquiv_symm_contLinear] -@[deprecated decompLinearIsometryEquiv (since := "2026-03-03"), +@[deprecated decompLinearIsometryEquiv +typeChanged (since := "2026-03-03"), inherit_doc decompLinearIsometryEquiv] abbrev toConstProdContinuousLinearMap := decompLinearIsometryEquiv 𝕜 𝕜 V W -@[deprecated fst_decompLinearIsometryEquiv (since := "2026-03-03")] +@[deprecated fst_decompLinearIsometryEquiv +typeChanged (since := "2026-03-03")] theorem toConstProdContinuousLinearMap_fst (f : V →ᴬ[𝕜] W) : (toConstProdContinuousLinearMap 𝕜 V W f).fst = f 0 := rfl -@[deprecated snd_decompLinearIsometryEquiv (since := "2026-03-03")] +@[deprecated snd_decompLinearIsometryEquiv +typeChanged (since := "2026-03-03")] theorem toConstProdContinuousLinearMap_snd (f : V →ᴬ[𝕜] W) : (toConstProdContinuousLinearMap 𝕜 V W f).snd = f.contLinear := rfl diff --git a/mathlib4/Mathlib/Analysis/Normed/Lp/PiLp.lean b/mathlib4/Mathlib/Analysis/Normed/Lp/PiLp.lean index cc1b078c8..35082cbfa 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Lp/PiLp.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Lp/PiLp.lean @@ -1035,7 +1035,7 @@ theorem nnnorm_single (i : ι) (b : β i) : ‖single p i b‖₊ = ‖b‖₊ : intro j hij rw [toLp_apply, single_eq_of_ne _ hij, nnnorm_zero, NNReal.zero_rpow hp0] -@[deprecated nnnorm_single (since := "2026-03-15")] +@[deprecated nnnorm_single +typeChanged (since := "2026-03-15")] theorem nnnorm_toLp_single (i : ι) (b : β i) : ‖toLp p (Pi.single i b)‖₊ = ‖b‖₊ := nnnorm_single p β i b @@ -1043,7 +1043,7 @@ theorem nnnorm_toLp_single (i : ι) (b : β i) : ‖toLp p (Pi.single i b)‖₊ lemma norm_single (i : ι) (b : β i) : ‖single p i b‖ = ‖b‖ := congr_arg ((↑) : ℝ≥0 → ℝ) <| nnnorm_single p β i b -@[deprecated norm_single (since := "2026-03-15")] +@[deprecated norm_single +typeChanged (since := "2026-03-15")] lemma norm_toLp_single (i : ι) (b : β i) : ‖toLp p (Pi.single i b)‖ = ‖b‖ := norm_single p β i b @@ -1052,7 +1052,7 @@ lemma nndist_single_same (i : ι) (b₁ b₂ : β i) : nndist (single p i b₁) (single p i b₂) = nndist b₁ b₂ := by rw [nndist_eq_nnnorm, nndist_eq_nnnorm, ← single_sub, nnnorm_single] -@[deprecated nndist_single_same (since := "2026-03-15")] +@[deprecated nndist_single_same +typeChanged (since := "2026-03-15")] lemma nndist_toLp_single_same (i : ι) (b₁ b₂ : β i) : nndist (toLp p (Pi.single i b₁)) (toLp p (Pi.single i b₂)) = nndist b₁ b₂ := nndist_single_same p β i b₁ b₂ @@ -1062,7 +1062,7 @@ lemma dist_single_same (i : ι) (b₁ b₂ : β i) : dist (single p i b₁) (single p i b₂) = dist b₁ b₂ := congr_arg ((↑) : ℝ≥0 → ℝ) <| nndist_single_same p β i b₁ b₂ -@[deprecated dist_single_same (since := "2026-03-15")] +@[deprecated dist_single_same +typeChanged (since := "2026-03-15")] lemma dist_toLp_single_same (i : ι) (b₁ b₂ : β i) : dist (toLp p (Pi.single i b₁)) (toLp p (Pi.single i b₂)) = dist b₁ b₂ := dist_single_same p β i b₁ b₂ @@ -1072,7 +1072,7 @@ lemma edist_single_same (i : ι) (b₁ b₂ : β i) : edist (single p i b₁) (single p i b₂) = edist b₁ b₂ := by simp only [edist_nndist, nndist_single_same p β i b₁ b₂] -@[deprecated edist_single_same (since := "2026-03-15")] +@[deprecated edist_single_same +typeChanged (since := "2026-03-15")] lemma edist_toLp_single_same (i : ι) (b₁ b₂ : β i) : edist (toLp p (Pi.single i b₁)) (toLp p (Pi.single i b₂)) = edist b₁ b₂ := edist_single_same p β i b₁ b₂ diff --git a/mathlib4/Mathlib/Analysis/Normed/Module/Complemented.lean b/mathlib4/Mathlib/Analysis/Normed/Module/Complemented.lean index 3483b2bb1..ca2d0bcf8 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Module/Complemented.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Module/Complemented.lean @@ -94,7 +94,7 @@ variable (p q) /-- If `q` is a closed complement of a closed subspace `p`, then `p × q` is continuously isomorphic to `E`. -/ -@[deprecated prodEquivOfIsTopCompl (since := "2026-06-07")] +@[deprecated prodEquivOfIsTopCompl +typeChanged (since := "2026-06-07")] def prodEquivOfClosedCompl (h : IsCompl p q) (hp : IsClosed (p : Set E)) (hq : IsClosed (q : Set E)) : (p × q) ≃L[𝕜] E := by haveI := hp.completeSpace_coe; haveI := hq.completeSpace_coe @@ -102,7 +102,7 @@ def prodEquivOfClosedCompl (h : IsCompl p q) (hp : IsClosed (p : Set E)) exact (p.subtypeL.coprod q.subtypeL).continuous /-- Projection to a closed submodule along a closed complement. -/ -@[deprecated projectionOntoL (since := "2026-06-07")] +@[deprecated projectionOntoL +typeChanged (since := "2026-06-07")] def linearProjOfClosedCompl (h : IsCompl p q) (hp : IsClosed (p : Set E)) (hq : IsClosed (q : Set E)) : E →L[𝕜] p := ContinuousLinearMap.fst 𝕜 p q ∘L ↑(prodEquivOfClosedCompl p q h hp hq).symm diff --git a/mathlib4/Mathlib/Analysis/Normed/Module/Dual.lean b/mathlib4/Mathlib/Analysis/Normed/Module/Dual.lean index c879c3436..7b8b1ff21 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Module/Dual.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Module/Dual.lean @@ -166,17 +166,17 @@ section Deprecated variable (𝕜 : Type*) [RCLike 𝕜] {E : Type*} [NormedAddCommGroup E] [NormedSpace 𝕜 E] -@[deprecated SeparatingDual.eq_zero_of_forall_dual_eq_zero (since := "2026-03-18")] +@[deprecated SeparatingDual.eq_zero_of_forall_dual_eq_zero +typeChanged (since := "2026-03-18")] theorem NormedSpace.eq_zero_of_forall_dual_eq_zero {x : E} (h : ∀ f : StrongDual 𝕜 E, f x = 0) : x = 0 := SeparatingDual.eq_zero_of_forall_dual_eq_zero h -@[deprecated SeparatingDual.eq_zero_iff_forall_dual_eq_zero (since := "2026-03-18")] +@[deprecated SeparatingDual.eq_zero_iff_forall_dual_eq_zero +typeChanged (since := "2026-03-18")] theorem NormedSpace.eq_zero_iff_forall_dual_eq_zero (x : E) : x = 0 ↔ ∀ g : StrongDual 𝕜 E, g x = 0 := SeparatingDual.eq_zero_iff_forall_dual_eq_zero x -@[deprecated SeparatingDual.eq_iff_forall_dual_eq (since := "2026-03-18")] +@[deprecated SeparatingDual.eq_iff_forall_dual_eq +typeChanged (since := "2026-03-18")] theorem NormedSpace.eq_iff_forall_dual_eq {x y : E} : x = y ↔ ∀ g : StrongDual 𝕜 E, g x = g y := SeparatingDual.eq_iff_forall_dual_eq diff --git a/mathlib4/Mathlib/Analysis/Normed/Module/FiniteDimension.lean b/mathlib4/Mathlib/Analysis/Normed/Module/FiniteDimension.lean index ac6832a0b..95f2f0d95 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Module/FiniteDimension.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Module/FiniteDimension.lean @@ -166,7 +166,7 @@ theorem AffineEquiv.coe_toHomeomorphOfFiniteDimensional_symm (f : PE ≃ᵃ[𝕜 ⇑f.toHomeomorphOfFiniteDimensional.symm = f.symm := rfl -attribute [deprecated AffineEquiv.toContinuousAffineEquiv (since := "2026-05-11")] +attribute [deprecated AffineEquiv.toContinuousAffineEquiv +typeChanged (since := "2026-05-11")] AffineEquiv.toHomeomorphOfFiniteDimensional /-- An affine map from a finite-dimensional space is automatically Lipschitz. -/ diff --git a/mathlib4/Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean b/mathlib4/Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean index 4e81a007e..0ded95c0d 100644 --- a/mathlib4/Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean +++ b/mathlib4/Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean @@ -127,7 +127,7 @@ noncomputable instance : SeminormedAddCommGroup (⨂[𝕜] i, E i) := noncomputable instance : NormedSpace 𝕜 (⨂[𝕜] i, E i) := ⟨projectiveSeminorm_smul_le⟩ -@[deprecated norm_def (since := "2026-06-10")] +@[deprecated norm_def +typeChanged (since := "2026-06-10")] theorem projectiveSeminorm_apply (x : ⨂[𝕜] i, E i) : projectiveSeminorm x = iInf (fun (p : lifts x) ↦ projectiveSeminormAux p.1) := rfl diff --git a/mathlib4/Mathlib/Analysis/Real/Hyperreal.lean b/mathlib4/Mathlib/Analysis/Real/Hyperreal.lean index db619366e..a7313c8dd 100644 --- a/mathlib4/Mathlib/Analysis/Real/Hyperreal.lean +++ b/mathlib4/Mathlib/Analysis/Real/Hyperreal.lean @@ -312,18 +312,18 @@ theorem epsilon_lt_of_neg {r : ℝ} : r < 0 → r < ε := @[deprecated (since := "2026-01-05")] alias epsilon_lt_pos := epsilon_lt_of_pos -@[deprecated archimedeanClassMk_pos_of_tendsto (since := "2026-01-05")] +@[deprecated archimedeanClassMk_pos_of_tendsto +typeChanged (since := "2026-01-05")] theorem lt_of_tendsto_zero_of_pos {f : ℕ → ℝ} (hf : Tendsto f atTop (𝓝 0)) : ∀ {r : ℝ}, 0 < r → ofSeq f < (r : ℝ*) := fun hr ↦ ofSeq_lt_ofSeq.2 <| (hf.eventually <| gt_mem_nhds hr).filter_mono Nat.hyperfilter_le_atTop -@[deprecated archimedeanClassMk_pos_of_tendsto (since := "2026-01-05")] +@[deprecated archimedeanClassMk_pos_of_tendsto +typeChanged (since := "2026-01-05")] theorem neg_lt_of_tendsto_zero_of_pos {f : ℕ → ℝ} (hf : Tendsto f atTop (𝓝 0)) : ∀ {r : ℝ}, 0 < r → (-r : ℝ*) < ofSeq f := fun hr => have hg := hf.neg neg_lt_of_neg_lt (by rw [neg_zero] at hg; exact lt_of_tendsto_zero_of_pos hg hr) -@[deprecated archimedeanClassMk_pos_of_tendsto (since := "2026-01-05")] +@[deprecated archimedeanClassMk_pos_of_tendsto +typeChanged (since := "2026-01-05")] theorem gt_of_tendsto_zero_of_neg {f : ℕ → ℝ} (hf : Tendsto f atTop (𝓝 0)) : ∀ {r : ℝ}, r < 0 → (r : ℝ*) < ofSeq f := fun {r} hr => by rw [← neg_neg r, coe_neg]; exact neg_lt_of_tendsto_zero_of_pos hf (neg_pos.mpr hr) @@ -367,7 +367,7 @@ theorem tendsto_atBot_iff {x : ℝ*} : x.Tendsto atBot ↔ x < 0 ∧ mk x < 0 wh /-- Standard part predicate. **Do not use.** This is equivalent to the conjunction of `0 ≤ ArchimedeanClass.mk x` and `ArchimedeanClass.stdPart x = r`. -/ -@[deprecated stdPart (since := "2026-01-05")] +@[deprecated stdPart +typeChanged (since := "2026-01-05")] def IsSt (x : ℝ*) (r : ℝ) := ∀ δ : ℝ, 0 < δ → (r - δ : ℝ*) < x ∧ x < r + δ @@ -387,7 +387,7 @@ theorem isSt_iff {x r} : IsSt x r ↔ 0 ≤ mk x ∧ stdPart x = r where open scoped Classical in /-- Standard part function: like a "round" to ℝ instead of ℤ -/ -@[deprecated stdPart (since := "2026-01-05")] +@[deprecated stdPart +typeChanged (since := "2026-01-05")] noncomputable def st : ℝ* → ℝ := fun x => if h : ∃ r, IsSt x r then Classical.choose h else 0 @[deprecated "`st` is deprecated" (since := "2026-01-05")] @@ -404,7 +404,7 @@ theorem st_eq (x : ℝ*) : st x = stdPart x := by /-- A hyperreal number is infinitesimal if its standard part is 0. **Do not use.** Write `0 < ArchimedeanClass.mk x` instead. -/ -@[deprecated ArchimedeanClass.mk (since := "2026-01-05")] +@[deprecated ArchimedeanClass.mk +typeChanged (since := "2026-01-05")] def Infinitesimal (x : ℝ*) := IsSt x 0 @@ -414,7 +414,7 @@ theorem infinitesimal_iff {x : ℝ*} : Infinitesimal x ↔ 0 < mk x := by /-- A hyperreal number is positive infinite if it is larger than all real numbers. **Do not use.** Write `0 < x ∧ ArchimedeanClass.mk x < 0` instead. -/ -@[deprecated ArchimedeanClass.mk (since := "2026-01-05")] +@[deprecated ArchimedeanClass.mk +typeChanged (since := "2026-01-05")] def InfinitePos (x : ℝ*) := ∀ r : ℝ, ↑r < x @@ -428,7 +428,7 @@ theorem infinitePos_iff {x : ℝ*} : InfinitePos x ↔ 0 < x ∧ mk x < 0 := by /-- A hyperreal number is negative infinite if it is smaller than all real numbers. **Do not use.** Write `x < 0 ∧ ArchimedeanClass.mk x < 0` instead. -/ -@[deprecated ArchimedeanClass.mk (since := "2026-01-05")] +@[deprecated ArchimedeanClass.mk +typeChanged (since := "2026-01-05")] def InfiniteNeg (x : ℝ*) := ∀ r : ℝ, x < r @@ -442,7 +442,7 @@ theorem infiniteNeg_iff {x : ℝ*} : InfiniteNeg x ↔ x < 0 ∧ mk x < 0 := by /-- A hyperreal number is infinite if it is infinite positive or infinite negative. **Do not use.** Write `ArchimedeanClass.mk x < 0` instead. -/ -@[deprecated ArchimedeanClass.mk (since := "2026-01-05")] +@[deprecated ArchimedeanClass.mk +typeChanged (since := "2026-01-05")] def Infinite (x : ℝ*) := InfinitePos x ∨ InfiniteNeg x @@ -451,18 +451,18 @@ theorem infinite_iff {x : ℝ*} : Infinite x ↔ mk x < 0 := by rw [Infinite, infinitePos_iff, infiniteNeg_iff] aesop -@[deprecated tendsto_iff_forall (since := "2026-01-05")] +@[deprecated tendsto_iff_forall +typeChanged (since := "2026-01-05")] theorem isSt_ofSeq_iff_tendsto {f : ℕ → ℝ} {r : ℝ} : IsSt (ofSeq f) r ↔ Tendsto f (hyperfilter ℕ) (𝓝 r) := Iff.trans (forall₂_congr fun _ _ ↦ (ofSeq_lt_ofSeq.and ofSeq_lt_ofSeq).trans eventually_and.symm) (nhds_basis_Ioo_pos _).tendsto_right_iff.symm -@[deprecated tendsto_iff_forall (since := "2026-01-05")] +@[deprecated tendsto_iff_forall +typeChanged (since := "2026-01-05")] theorem isSt_iff_tendsto {x : ℝ*} {r : ℝ} : IsSt x r ↔ x.Tendsto (𝓝 r) := by rcases ofSeq_surjective x with ⟨f, rfl⟩ exact isSt_ofSeq_iff_tendsto -@[deprecated stdPart_of_tendsto (since := "2026-01-05")] +@[deprecated stdPart_of_tendsto +typeChanged (since := "2026-01-05")] theorem isSt_of_tendsto {f : ℕ → ℝ} {r : ℝ} (hf : Tendsto f atTop (𝓝 r)) : IsSt (ofSeq f) r := isSt_ofSeq_iff_tendsto.2 <| hf.mono_left Nat.hyperfilter_le_atTop @@ -495,21 +495,21 @@ theorem IsSt.not_infinite {x : ℝ*} {r : ℝ} (h : IsSt x r) : ¬Infinite x := theorem not_infinite_of_exists_st {x : ℝ*} : (∃ r : ℝ, IsSt x r) → ¬Infinite x := fun ⟨_r, hr⟩ => hr.not_infinite -@[deprecated stdPart_eq_zero (since := "2026-01-05")] +@[deprecated stdPart_eq_zero +typeChanged (since := "2026-01-05")] theorem Infinite.st_eq {x : ℝ*} (hi : Infinite x) : st x = 0 := dite_eq_right fun ⟨_r, hr⟩ ↦ hr.not_infinite hi -@[deprecated stdPart_eq_sSup (since := "2026-01-05")] +@[deprecated stdPart_eq_sSup +typeChanged (since := "2026-01-05")] theorem isSt_sSup {x : ℝ*} (hni : ¬Infinite x) : IsSt x (sSup { y : ℝ | (y : ℝ*) < x }) := by rw [infinite_iff, not_lt] at hni rw [isSt_iff] exact ⟨hni, stdPart_eq_sSup coeRingHom x⟩ -@[deprecated stdPart_eq_sSup (since := "2026-01-05")] +@[deprecated stdPart_eq_sSup +typeChanged (since := "2026-01-05")] theorem exists_st_of_not_infinite {x : ℝ*} (hni : ¬Infinite x) : ∃ r : ℝ, IsSt x r := ⟨sSup { y : ℝ | (y : ℝ*) < x }, isSt_sSup hni⟩ -@[deprecated stdPart_eq_sSup (since := "2026-01-05")] +@[deprecated stdPart_eq_sSup +typeChanged (since := "2026-01-05")] theorem st_eq_sSup {x : ℝ*} : st x = sSup { y : ℝ | (y : ℝ*) < x } := by rw [st_eq] exact stdPart_eq_sSup coeRingHom x @@ -541,7 +541,7 @@ theorem isSt_st {x : ℝ*} (hx : st x ≠ 0) : IsSt x (st x) := @[deprecated "`IsSt` is deprecated" (since := "2026-01-05")] theorem isSt_refl_real (r : ℝ) : IsSt r r := isSt_ofSeq_iff_tendsto.2 tendsto_const_nhds -@[deprecated stdPart_coe (since := "2026-01-05")] +@[deprecated stdPart_coe +typeChanged (since := "2026-01-05")] theorem st_id_real (r : ℝ) : st r = r := (isSt_refl_real r).st_eq @[deprecated "`IsSt` is deprecated" (since := "2026-01-05")] @@ -568,13 +568,13 @@ theorem isSt_inj_real {r₁ r₂ s : ℝ} (h1 : IsSt r₁ s) (h2 : IsSt r₂ s) theorem isSt_iff_abs_sub_lt_delta {x : ℝ*} {r : ℝ} : IsSt x r ↔ ∀ δ : ℝ, 0 < δ → |x - ↑r| < δ := by simp only [abs_sub_lt_iff, sub_lt_iff_lt_add, IsSt, and_comm, add_comm] -@[deprecated stdPart_map (since := "2026-01-05")] +@[deprecated stdPart_map +typeChanged (since := "2026-01-05")] theorem IsSt.map {x : ℝ*} {r : ℝ} (hxr : IsSt x r) {f : ℝ → ℝ} (hf : ContinuousAt f r) : IsSt (x.map f) (f r) := by rcases ofSeq_surjective x with ⟨g, rfl⟩ exact isSt_ofSeq_iff_tendsto.2 <| hf.tendsto.comp (isSt_ofSeq_iff_tendsto.1 hxr) -@[deprecated stdPart_map₂ (since := "2026-01-05")] +@[deprecated stdPart_map₂ +typeChanged (since := "2026-01-05")] theorem IsSt.map₂ {x y : ℝ*} {r s : ℝ} (hxr : IsSt x r) (hys : IsSt y s) {f : ℝ → ℝ → ℝ} (hf : ContinuousAt (Function.uncurry f) (r, s)) : IsSt (x.map₂ f y) (f r s) := by rcases ofSeq_surjective x with ⟨x, rfl⟩ @@ -582,27 +582,27 @@ theorem IsSt.map₂ {x y : ℝ*} {r s : ℝ} (hxr : IsSt x r) (hys : IsSt y s) { rw [isSt_ofSeq_iff_tendsto] at hxr hys exact isSt_ofSeq_iff_tendsto.2 <| hf.tendsto.comp (hxr.prodMk_nhds hys) -@[deprecated stdPart_add (since := "2026-01-05")] +@[deprecated stdPart_add +typeChanged (since := "2026-01-05")] theorem IsSt.add {x y : ℝ*} {r s : ℝ} (hxr : IsSt x r) (hys : IsSt y s) : IsSt (x + y) (r + s) := hxr.map₂ hys continuous_add.continuousAt -@[deprecated stdPart_neg (since := "2026-01-05")] +@[deprecated stdPart_neg +typeChanged (since := "2026-01-05")] theorem IsSt.neg {x : ℝ*} {r : ℝ} (hxr : IsSt x r) : IsSt (-x) (-r) := hxr.map continuous_neg.continuousAt -@[deprecated stdPart_sub (since := "2026-01-05")] +@[deprecated stdPart_sub +typeChanged (since := "2026-01-05")] theorem IsSt.sub {x y : ℝ*} {r s : ℝ} (hxr : IsSt x r) (hys : IsSt y s) : IsSt (x - y) (r - s) := hxr.map₂ hys continuous_sub.continuousAt -@[deprecated stdPart_monotoneOn (since := "2026-01-05")] +@[deprecated stdPart_monotoneOn +typeChanged (since := "2026-01-05")] theorem IsSt.le {x y : ℝ*} {r s : ℝ} (hrx : IsSt x r) (hsy : IsSt y s) (hxy : x ≤ y) : r ≤ s := not_lt.1 fun h ↦ hxy.not_gt <| hsy.lt hrx h -@[deprecated stdPart_monotoneOn (since := "2026-01-05")] +@[deprecated stdPart_monotoneOn +typeChanged (since := "2026-01-05")] theorem st_le_of_le {x y : ℝ*} (hix : ¬Infinite x) (hiy : ¬Infinite y) : x ≤ y → st x ≤ st y := (isSt_st' hix).le (isSt_st' hiy) -@[deprecated stdPart_monotoneOn (since := "2026-01-05")] +@[deprecated stdPart_monotoneOn +typeChanged (since := "2026-01-05")] theorem lt_of_st_lt {x y : ℝ*} (hix : ¬Infinite x) (hiy : ¬Infinite y) : st x < st y → x < y := (isSt_st' hix).lt (isSt_st' hiy) @@ -793,27 +793,27 @@ theorem Infinite.ne_real {x : ℝ*} : Infinite x → ∀ r : ℝ, x ≠ r := fun ### Facts about `st` that require some infinite machinery -/ -@[deprecated stdPart_mul (since := "2026-01-05")] +@[deprecated stdPart_mul +typeChanged (since := "2026-01-05")] theorem IsSt.mul {x y : ℝ*} {r s : ℝ} (hxr : IsSt x r) (hys : IsSt y s) : IsSt (x * y) (r * s) := hxr.map₂ hys continuous_mul.continuousAt -@[deprecated mk_mul (since := "2026-01-05")] +@[deprecated mk_mul +typeChanged (since := "2026-01-05")] theorem not_infinite_mul {x y : ℝ*} (hx : ¬Infinite x) (hy : ¬Infinite y) : ¬Infinite (x * y) := have ⟨_r, hr⟩ := exists_st_of_not_infinite hx have ⟨_s, hs⟩ := exists_st_of_not_infinite hy (hr.mul hs).not_infinite -@[deprecated stdPart_add (since := "2026-01-05")] +@[deprecated stdPart_add +typeChanged (since := "2026-01-05")] theorem st_add {x y : ℝ*} (hx : ¬Infinite x) (hy : ¬Infinite y) : st (x + y) = st x + st y := (isSt_st' (not_infinite_add hx hy)).unique ((isSt_st' hx).add (isSt_st' hy)) -@[deprecated stdPart_neg (since := "2026-01-05")] +@[deprecated stdPart_neg +typeChanged (since := "2026-01-05")] theorem st_neg (x : ℝ*) : st (-x) = -st x := by by_cases h : Infinite x · rw [h.st_eq, (infinite_neg.2 h).st_eq, neg_zero] · exact (isSt_st' (not_infinite_neg h)).unique (isSt_st' h).neg -@[deprecated stdPart_mul (since := "2026-01-05")] +@[deprecated stdPart_mul +typeChanged (since := "2026-01-05")] theorem st_mul {x y : ℝ*} (hx : ¬Infinite x) (hy : ¬Infinite y) : st (x * y) = st x * st y := have hx' := isSt_st' hx have hy' := isSt_st' hy @@ -828,15 +828,15 @@ theorem st_mul {x y : ℝ*} (hx : ¬Infinite x) (hy : ¬Infinite y) : st (x * y) theorem infinitesimal_def {x : ℝ*} : Infinitesimal x ↔ ∀ r : ℝ, 0 < r → -(r : ℝ*) < x ∧ x < r := by simp [Infinitesimal, IsSt] -@[deprecated lt_of_pos_of_archimedean (since := "2026-01-05")] +@[deprecated lt_of_pos_of_archimedean +typeChanged (since := "2026-01-05")] theorem lt_of_pos_of_infinitesimal {x : ℝ*} : Infinitesimal x → ∀ r : ℝ, 0 < r → x < r := fun hi r hr => ((infinitesimal_def.mp hi) r hr).2 -@[deprecated lt_of_neg_of_archimedean (since := "2026-01-05")] +@[deprecated lt_of_neg_of_archimedean +typeChanged (since := "2026-01-05")] theorem lt_neg_of_pos_of_infinitesimal {x : ℝ*} : Infinitesimal x → ∀ r : ℝ, 0 < r → -↑r < x := fun hi r hr => ((infinitesimal_def.mp hi) r hr).1 -@[deprecated lt_of_neg_of_archimedean (since := "2026-01-05")] +@[deprecated lt_of_neg_of_archimedean +typeChanged (since := "2026-01-05")] theorem gt_of_neg_of_infinitesimal {x : ℝ*} (hi : Infinitesimal x) (r : ℝ) (hr : r < 0) : ↑r < x := neg_neg r ▸ (infinitesimal_def.1 hi (-r) (neg_pos.2 hr)).1 @@ -934,19 +934,19 @@ theorem infinitesimal_neg_iff_infiniteNeg_inv {x : ℝ*} : theorem infinitesimal_iff_infinite_inv {x : ℝ*} (h : x ≠ 0) : Infinitesimal x ↔ Infinite x⁻¹ := Iff.trans (by rw [inv_inv]) (infinite_iff_infinitesimal_inv (inv_ne_zero h)).symm -@[deprecated stdPart_inv (since := "2026-01-05")] +@[deprecated stdPart_inv +typeChanged (since := "2026-01-05")] theorem IsSt.inv {x : ℝ*} {r : ℝ} (hi : ¬Infinitesimal x) (hr : IsSt x r) : IsSt x⁻¹ r⁻¹ := hr.map <| continuousAt_inv₀ <| by rintro rfl; exact hi hr -@[deprecated stdPart_inv (since := "2026-01-05")] +@[deprecated stdPart_inv +typeChanged (since := "2026-01-05")] theorem st_inv (x : ℝ*) : st x⁻¹ = (st x)⁻¹ := by simp [st_eq] -@[deprecated archimedeanClassMk_omega_neg (since := "2026-01-05")] +@[deprecated archimedeanClassMk_omega_neg +typeChanged (since := "2026-01-05")] theorem infinitePos_omega : InfinitePos ω := infinitePos_iff_infinitesimal_inv_pos.mpr ⟨infinitesimal_epsilon, epsilon_pos⟩ -@[deprecated archimedeanClassMk_omega_neg (since := "2026-01-05")] +@[deprecated archimedeanClassMk_omega_neg +typeChanged (since := "2026-01-05")] theorem infinite_omega : Infinite ω := (infinite_iff_infinitesimal_inv omega_ne_zero).mpr infinitesimal_epsilon diff --git a/mathlib4/Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean b/mathlib4/Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean index daaa4ea85..e932bb0cf 100644 --- a/mathlib4/Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean +++ b/mathlib4/Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean @@ -36,7 +36,7 @@ theorem mul_log_strictMonoOn : StrictMonoOn (fun x ↦ x * log x) <| .Ici <| exp have hpos : 0 < x := by grind [Real.exp_pos] grind [deriv_mul_log, Real.lt_log_iff_exp_lt hpos |>.mpr hlt] -@[deprecated Real.mul_log_strictMonoOn (since := "2026-04-07")] +@[deprecated Real.mul_log_strictMonoOn +typeChanged (since := "2026-04-07")] theorem log_mul_self_monotoneOn : MonotoneOn (fun x : ℝ => log x * x) { x | 1 ≤ x } := by grind [mul_log_strictMonoOn.monotoneOn, MonotoneOn.mono, show exp (-1) < 1 by norm_num] diff --git a/mathlib4/Mathlib/CategoryTheory/Limits/Types/Colimits.lean b/mathlib4/Mathlib/CategoryTheory/Limits/Types/Colimits.lean index bd32d232c..c99fe5aad 100644 --- a/mathlib4/Mathlib/CategoryTheory/Limits/Types/Colimits.lean +++ b/mathlib4/Mathlib/CategoryTheory/Limits/Types/Colimits.lean @@ -183,18 +183,18 @@ attribute [elementwise] colimit.ι_map attribute [simp] colimit.ι_map_apply variable {F} in -@[deprecated colimit.w_apply (since := "2026-03-06")] +@[deprecated colimit.w_apply +typeChanged (since := "2026-03-06")] theorem Colimit.w_apply {j j' : J} {x : F.obj j} (f : j ⟶ j') : colimit.ι F j' (F.map f x) = colimit.ι F j x := by rw [← comp_apply] exact congr_hom (colimit.w F f) x -@[deprecated colimit.ι_desc_apply (since := "2026-03-06")] +@[deprecated colimit.ι_desc_apply +typeChanged (since := "2026-03-06")] theorem Colimit.ι_desc_apply (s : Cocone F) (j : J) (x : F.obj j) : colimit.desc F s (colimit.ι F j x) = s.ι.app j x := congr_hom (colimit.ι_desc s j) x -@[deprecated colimit.ι_map_apply (since := "2026-03-06")] +@[deprecated colimit.ι_map_apply +typeChanged (since := "2026-03-06")] theorem Colimit.ι_map_apply {F G : J ⥤ Type u} [HasColimitsOfShape J (Type u)] (α : F ⟶ G) (j : J) (x : F.obj j) : colim.map α (colimit.ι F j x) = colimit.ι G j (α.app j x) := diff --git a/mathlib4/Mathlib/CategoryTheory/Limits/Types/Limits.lean b/mathlib4/Mathlib/CategoryTheory/Limits/Types/Limits.lean index e1fa0e1bf..0a87e7a4b 100644 --- a/mathlib4/Mathlib/CategoryTheory/Limits/Types/Limits.lean +++ b/mathlib4/Mathlib/CategoryTheory/Limits/Types/Limits.lean @@ -249,32 +249,32 @@ attribute [elementwise] limMap_π attribute [simp] limMap_π_apply variable {F} in -@[deprecated limit.w_apply (since := "2026-02-17")] +@[deprecated limit.w_apply +typeChanged (since := "2026-02-17")] theorem Limit.w_apply {j j' : J} {x : (limit F : Type u)} (f : j ⟶ j') : F.map f (limit.π F j x) = limit.π F j' x := limit.w_apply _ _ _ -@[deprecated limit.lift_π_apply (since := "2026-02-17")] +@[deprecated limit.lift_π_apply +typeChanged (since := "2026-02-17")] theorem Limit.lift_π_apply (s : Cone F) (j : J) (x : s.pt) : limit.π F j (limit.lift F s x) = s.π.app j x := limit.lift_π_apply _ _ _ -@[deprecated limMap_π_apply (since := "2026-02-17")] +@[deprecated limMap_π_apply +typeChanged (since := "2026-02-17")] theorem Limit.map_π_apply {F G : J ⥤ Type u} [HasLimit F] [HasLimit G] (α : F ⟶ G) (j : J) (x : limit F) : limit.π G j (limMap α x) = α.app j (limit.π F j x) := limMap_π_apply _ _ _ -@[deprecated limit.w_apply (since := "2026-02-17")] +@[deprecated limit.w_apply +typeChanged (since := "2026-02-17")] theorem Limit.w_apply' {F' : J ⥤ Type v} {j j' : J} {x : (limit F' : Type v)} (f : j ⟶ j') : F'.map f (limit.π F' j x) = limit.π F' j' x := limit.w_apply _ _ _ -@[deprecated limit.lift_π_apply (since := "2026-02-17")] +@[deprecated limit.lift_π_apply +typeChanged (since := "2026-02-17")] theorem Limit.lift_π_apply' (F' : J ⥤ Type v) (s : Cone F') (j : J) (x : s.pt) : limit.π F' j (limit.lift F' s x) = s.π.app j x := limit.lift_π_apply _ _ _ -@[deprecated limMap_π_apply (since := "2026-02-17")] +@[deprecated limMap_π_apply +typeChanged (since := "2026-02-17")] theorem Limit.map_π_apply' {F' G' : J ⥤ Type v} (α : F' ⟶ G') (j : J) (x : (limit F' : Type v)) : limit.π G' j (limMap α x) = α.app j (limit.π F' j x) := limMap_π_apply _ _ _ diff --git a/mathlib4/Mathlib/CategoryTheory/ObjectProperty/Retract.lean b/mathlib4/Mathlib/CategoryTheory/ObjectProperty/Retract.lean index ec841a4c9..64c411ad0 100644 --- a/mathlib4/Mathlib/CategoryTheory/ObjectProperty/Retract.lean +++ b/mathlib4/Mathlib/CategoryTheory/ObjectProperty/Retract.lean @@ -55,7 +55,7 @@ instance : P.IsClosedUnderIsomorphisms where instance (priority := 100) [HasZeroObject C] [P.Nonempty] : P.ContainsZero where exists_zero := ⟨0, isZero_zero _, of_retract ((isZero_zero _).retract _) P.prop_arbitrary⟩ -@[deprecated instContainsZeroOfHasZeroObjectOfNonempty (since := "2026-04-03")] +@[deprecated instContainsZeroOfHasZeroObjectOfNonempty +typeChanged (since := "2026-04-03")] lemma containsZero [HasZeroObject C] {X : C} (h : P X) : P.ContainsZero where exists_zero := ⟨0, isZero_zero _, of_retract ((isZero_zero _).retract X) h⟩ diff --git a/mathlib4/Mathlib/CategoryTheory/Types/Basic.lean b/mathlib4/Mathlib/CategoryTheory/Types/Basic.lean index 9846c88ea..d5335f04d 100644 --- a/mathlib4/Mathlib/CategoryTheory/Types/Basic.lean +++ b/mathlib4/Mathlib/CategoryTheory/Types/Basic.lean @@ -256,18 +256,18 @@ variable (σ : F ⟶ G) (τ : G ⟶ H) attribute [elementwise nosimp] Functor.map_comp Functor.map_id NatTrans.comp_app -@[deprecated Functor.map_comp_apply (since := "2026-03-09")] +@[deprecated Functor.map_comp_apply +typeChanged (since := "2026-03-09")] theorem map_comp_apply (f : X ⟶ Y) (g : Y ⟶ Z) (a : F.obj X) : (F.map (f ≫ g)) a = (F.map g) ((F.map f) a) := F.map_comp_apply f g a -@[deprecated Functor.map_id_apply (since := "2026-03-09")] +@[deprecated Functor.map_id_apply +typeChanged (since := "2026-03-09")] theorem map_id_apply (a : F.obj X) : (F.map (𝟙 X)) a = a := F.map_id_apply X a @[deprecated (since := "2026-02-09")] alias naturality := NatTrans.naturality_apply -@[deprecated NatTrans.comp_app_apply (since := "2026-03-09")] +@[deprecated NatTrans.comp_app_apply +typeChanged (since := "2026-03-09")] theorem comp (x : F.obj X) : (σ ≫ τ).app X x = τ.app X (σ.app X x) := σ.comp_app_apply τ X x diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Acyclic.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Acyclic.lean index 47fd0de04..83fca74d9 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Acyclic.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Acyclic.lean @@ -195,16 +195,16 @@ theorem isAcyclic_iff_subsingleton_path : G.IsAcyclic ↔ ∀ u v, Subsingleton alias ⟨IsAcyclic.subsingleton_path, _⟩ := isAcyclic_iff_subsingleton_path -@[deprecated IsAcyclic.subsingleton_path (since := "2026-06-30")] +@[deprecated IsAcyclic.subsingleton_path +typeChanged (since := "2026-06-30")] theorem IsAcyclic.path_unique {G : SimpleGraph V} (h : G.IsAcyclic) {v w : V} (p q : G.Path v w) : p = q := h.subsingleton_path v w |>.elim p q -@[deprecated isAcyclic_iff_subsingleton_path (since := "2026-06-30")] +@[deprecated isAcyclic_iff_subsingleton_path +typeChanged (since := "2026-06-30")] theorem isAcyclic_of_path_unique (h : ∀ (v w : V) (p q : G.Path v w), p = q) : G.IsAcyclic := isAcyclic_iff_subsingleton_path.mpr (⟨h · ·⟩) -@[deprecated isAcyclic_iff_subsingleton_path (since := "2026-06-30")] +@[deprecated isAcyclic_iff_subsingleton_path +typeChanged (since := "2026-06-30")] theorem isAcyclic_iff_path_unique : G.IsAcyclic ↔ ∀ ⦃v w : V⦄ (p q : G.Path v w), p = q := isAcyclic_iff_subsingleton_path.trans <| forall₂_congr fun _ _ ↦ subsingleton_iff diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Clique.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Clique.lean index 1d5fb2174..b710f7bda 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Clique.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Clique.lean @@ -63,7 +63,7 @@ theorem induce_eq_top : G.induce s = ⊤ ↔ G.IsClique s := by simpa using ⟨Adj.ne, h hv hw⟩ /-- A clique is a set of vertices whose induced graph is complete. -/ -@[deprecated induce_eq_top (since := "2026-04-23")] +@[deprecated induce_eq_top +typeChanged (since := "2026-04-23")] theorem isClique_iff_induce_eq : G.IsClique s ↔ G.induce s = ⊤ := induce_eq_top.symm diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean index 8116036b0..d7f0ddee1 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean @@ -123,7 +123,7 @@ theorem Coloring.not_adj_of_mem_colorClass {c : α} {v w : V} (hv : v ∈ C.colo theorem Coloring.isIndepSet_colorClass (c : α) : G.IsIndepSet <| C.colorClass c := fun _ hv _ hw _ ↦ C.not_adj_of_mem_colorClass hv hw -@[deprecated isIndepSet_colorClass (since := "2026-02-07")] +@[deprecated isIndepSet_colorClass +typeChanged (since := "2026-02-07")] theorem Coloring.color_classes_independent (c : α) : IsAntichain G.Adj (C.colorClass c) := C.isIndepSet_colorClass c @@ -507,7 +507,7 @@ theorem chromaticNumber_eq_zero_iff : G.chromaticNumber = 0 ↔ IsEmpty V := theorem chromaticNumber_eq_zero_of_isEmpty [IsEmpty V] : G.chromaticNumber = 0 := by simpa -@[deprecated (since := "2026-04-24")] +@[deprecated chromaticNumber_eq_zero_iff +typeChanged (since := "2026-04-24")] alias ⟨isEmpty_of_chromaticNumber_eq_zero, _⟩ := chromaticNumber_eq_zero_iff theorem chromaticNumber_eq_one_iff : G.chromaticNumber = 1 ↔ G = ⊥ ∧ Nonempty V := by diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean index f0570db48..395a757ff 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean @@ -197,7 +197,8 @@ lemma IsTrail.isEdgeReachable_two_of_isEdgeReachable_two (hw : w.IsTrail) /-- A trail doesn't go through a vertex that is not 2-edge-reachable from its 2-edge-reachable endpoints. -/ -@[deprecated IsTrail.isEdgeReachable_two_of_isEdgeReachable_two (since := "2026-04-01")] +@[deprecated IsTrail.isEdgeReachable_two_of_isEdgeReachable_two + +typeChanged (since := "2026-04-01")] lemma IsTrail.not_mem_edges_of_not_isEdgeReachable_two (hw : w.IsTrail) (huv : G.IsEdgeReachable 2 u v) (huy : ¬ G.IsEdgeReachable 2 u x) : x ∉ w.support := mt (hw.isEdgeReachable_two_of_isEdgeReachable_two_aux huv) huy diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Finite.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Finite.lean index 3c7e0f856..06ddc8d50 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Finite.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Finite.lean @@ -387,7 +387,7 @@ section Finite variable [Fintype V] /-- `Fintype` for `neighborSet` -/ -@[deprecated inferInstance (since := "2026-04-29")] +@[deprecated inferInstance +typeChanged (since := "2026-04-29")] abbrev neighborSetFintype [DecidableRel G.Adj] (v : V) : Fintype (G.neighborSet v) := inferInstance diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Paths.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Paths.lean index 3e6c2fba4..a0bc1e768 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Paths.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Paths.lean @@ -202,7 +202,7 @@ protected lemma IsPath.cons {p : Walk G v w} (hp : p.IsPath) (hu : u ∉ p.suppo theorem isPath_iff_nil {u : V} {p : G.Walk u u} : p.IsPath ↔ p.Nil := by cases p <;> simp [IsPath.nil] -@[deprecated isPath_iff_nil (since := "2026-06-01")] +@[deprecated isPath_iff_nil +typeChanged (since := "2026-06-01")] theorem isPath_iff_eq_nil {u : V} {p : G.Walk u u} : p.IsPath ↔ p = nil := by simp diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/VertexCover.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/VertexCover.lean index 89fd57f3f..0e7d58b5f 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/VertexCover.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/VertexCover.lean @@ -190,7 +190,7 @@ theorem IsContained.vertexCoverNum_le_vertexCoverNum (h : G ⊑ H) : grw [this.vertexCoverNum_le, ← hs₁] exact Function.Embedding.encard_le <| Function.Embedding.mk f hf |>.subtypeMap (by simp) -@[deprecated IsContained.vertexCoverNum_le_vertexCoverNum (since := "2026-01-07")] +@[deprecated IsContained.vertexCoverNum_le_vertexCoverNum +typeChanged (since := "2026-01-07")] theorem vertexCoverNum_le_vertexCoverNum_of_injective (f : G →g H) (hf : Function.Injective f) : vertexCoverNum G ≤ vertexCoverNum H := IsContained.vertexCoverNum_le_vertexCoverNum ⟨f, hf⟩ diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean index 60a1eac38..2d5c061cd 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean @@ -157,7 +157,7 @@ theorem getLast_support {G : SimpleGraph V} {a b : V} (p : G.Walk a b) : lemma cons_tail_support (p : G.Walk u v) : u :: p.support.tail = p.support := by cases p <;> simp -@[deprecated cons_tail_support (since := "2026-03-16")] +@[deprecated cons_tail_support +typeChanged (since := "2026-03-16")] theorem support_eq_cons {u v : V} (p : G.Walk u v) : p.support = u :: p.support.tail := by cases p <;> simp @@ -400,7 +400,7 @@ theorem length_eq_zero_iff {p : G.Walk u v} : p.length = 0 ↔ p.Nil := by alias ⟨_, Nil.length_eq_zero⟩ := length_eq_zero_iff -@[deprecated length_eq_zero_iff (since := "2026-05-11")] +@[deprecated length_eq_zero_iff +typeChanged (since := "2026-05-11")] lemma nil_iff_length_eq {p : G.Walk v w} : p.Nil ↔ p.length = 0 := length_eq_zero_iff.symm @@ -418,7 +418,7 @@ theorem eq_nil_iff_nil {p : G.Walk v v} : p = nil ↔ p.Nil := by alias ⟨_, Nil.eq_nil⟩ := eq_nil_iff_nil -@[deprecated eq_nil_iff_nil (since := "2026-05-11")] +@[deprecated eq_nil_iff_nil +typeChanged (since := "2026-05-11")] lemma nil_iff_eq_nil : ∀ {p : G.Walk v v}, p.Nil ↔ p = nil := eq_nil_iff_nil.symm diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean index 818eeb1e0..8dd7ed391 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean @@ -360,7 +360,7 @@ theorem rotate_edges (c : G.Walk v v) (u : V) (h) : (c.rotate u h).edges ~r c.ed theorem nil_rotate {c : G.Walk v v} (h) : (c.rotate u h).Nil ↔ c.Nil := by simp [← length_eq_zero_iff] -@[deprecated nil_rotate (since := "2026-05-11")] +@[deprecated nil_rotate +typeChanged (since := "2026-05-11")] lemma rotate_eq_nil {c : G.Walk v v} (h) : c.rotate u h = nil ↔ c = nil := by simp end WalkDecomp diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean index bfb974927..96f28b4e1 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean @@ -80,7 +80,7 @@ variable {p} in theorem nil_map_iff : (p.map f).Nil ↔ p.Nil := by cases p <;> simp -@[deprecated nil_map_iff (since := "2026-05-12")] +@[deprecated nil_map_iff +typeChanged (since := "2026-05-12")] theorem map_eq_nil_iff {p : G.Walk u u} : p.map f = nil ↔ p = nil := by cases p <;> simp @[simp] diff --git a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean index aea91e0f6..1ea902380 100644 --- a/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean +++ b/mathlib4/Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean @@ -353,7 +353,7 @@ theorem dropLast_support_concat (p : G.Walk u v) : p.support.dropLast ++ [v] = p have ⟨_, _, _, hp⟩ := p.exists_cons_eq_concat h simp [hp] -@[deprecated dropLast_support_concat (since := "2026-03-16")] +@[deprecated dropLast_support_concat +typeChanged (since := "2026-03-16")] theorem support_eq_concat (p : G.Walk u v) : p.support = p.support.dropLast.concat v := by simp diff --git a/mathlib4/Mathlib/Computability/Encoding.lean b/mathlib4/Mathlib/Computability/Encoding.lean index 02b6f9f3d..7a5d35c00 100644 --- a/mathlib4/Mathlib/Computability/Encoding.lean +++ b/mathlib4/Mathlib/Computability/Encoding.lean @@ -249,18 +249,18 @@ abbrev finEncodingBoolBool := encodingBoolBool /-- Deprecated alias for `encodingList`. -/ @[reducible, nolint unusedArguments, - deprecated encodingList (since := "2026-05-07")] + deprecated encodingList +typeChanged (since := "2026-05-07")] def finEncodingList (α : Type) [Fintype α] := encodingList α /-- Deprecated alias for `encodingProd`. -/ @[reducible, nolint unusedArguments, - deprecated encodingProd (since := "2026-05-07")] + deprecated encodingProd +typeChanged (since := "2026-05-07")] def finEncodingPair {α β Γ₁ Γ₂ : Type*} [Fintype Γ₁] [Fintype Γ₂] (ea : Encoding α Γ₁) (eb : Encoding β Γ₂) := encodingProd ea eb /-- Deprecated alias for `Encoding.card_le_aleph0`. -/ -@[deprecated Encoding.card_le_aleph0 (since := "2026-05-07")] +@[deprecated Encoding.card_le_aleph0 +typeChanged (since := "2026-05-07")] theorem FinEncoding.card_le_aleph0 {α Γ} [Countable Γ] (e : Encoding α Γ) : #α ≤ ℵ₀ := e.card_le_aleph0 diff --git a/mathlib4/Mathlib/Computability/Primrec/Basic.lean b/mathlib4/Mathlib/Computability/Primrec/Basic.lean index 70faf1d6e..3135a6202 100644 --- a/mathlib4/Mathlib/Computability/Primrec/Basic.lean +++ b/mathlib4/Mathlib/Computability/Primrec/Basic.lean @@ -573,7 +573,7 @@ theorem option_getD : Primrec₂ (@Option.getD α) := theorem option_getD_default [Inhabited α] : Primrec (fun o : Option α => o.getD default) := option_getD.comp .id (const default) -@[deprecated option_getD_default (since := "2026-01-05")] +@[deprecated option_getD_default +typeChanged (since := "2026-01-05")] theorem option_iget [Inhabited α] : Primrec (@Option.iget α _) := option_getD_default diff --git a/mathlib4/Mathlib/Condensed/Basic.lean b/mathlib4/Mathlib/Condensed/Basic.lean index 926e02ac2..0f6b9ca0a 100644 --- a/mathlib4/Mathlib/Condensed/Basic.lean +++ b/mathlib4/Mathlib/Condensed/Basic.lean @@ -55,10 +55,10 @@ namespace Condensed variable {C : Type w} [Category.{v} C] -@[deprecated ObjectProperty.FullSubcategory.id_hom (since := "2026-04-08")] +@[deprecated ObjectProperty.FullSubcategory.id_hom +typeChanged (since := "2026-04-08")] lemma id_hom (X : Condensed.{u} C) : (𝟙 X : X ⟶ X).hom = 𝟙 _ := rfl -@[deprecated ObjectProperty.FullSubcategory.comp_hom (since := "2026-04-08")] +@[deprecated ObjectProperty.FullSubcategory.comp_hom +typeChanged (since := "2026-04-08")] lemma comp_hom {X Y Z : Condensed.{u} C} (f : X ⟶ Y) (g : Y ⟶ Z) : (f ≫ g).hom = f.hom ≫ g.hom := rfl @@ -75,7 +75,7 @@ end Condensed namespace CondensedSet -@[deprecated NatTrans.naturality_apply (since := "2026-03-19")] +@[deprecated NatTrans.naturality_apply +typeChanged (since := "2026-03-19")] lemma hom_naturality_apply {X Y : CondensedSet.{u}} (f : X ⟶ Y) {S T : CompHausᵒᵖ} (g : S ⟶ T) (x : X.obj.obj S) : f.hom.app T (X.obj.map g x) = Y.obj.map g (f.hom.app S x) := by simp diff --git a/mathlib4/Mathlib/Condensed/Light/Basic.lean b/mathlib4/Mathlib/Condensed/Light/Basic.lean index 7434e0d09..5bc2e9f6f 100644 --- a/mathlib4/Mathlib/Condensed/Light/Basic.lean +++ b/mathlib4/Mathlib/Condensed/Light/Basic.lean @@ -39,10 +39,10 @@ namespace LightCondensed variable {C : Type w} [Category.{v} C] -@[deprecated ObjectProperty.FullSubcategory.id_hom (since := "2026-04-08")] +@[deprecated ObjectProperty.FullSubcategory.id_hom +typeChanged (since := "2026-04-08")] lemma id_hom (X : LightCondensed.{u} C) : (𝟙 X : X ⟶ X).hom = 𝟙 _ := rfl -@[deprecated ObjectProperty.FullSubcategory.comp_hom (since := "2026-04-08")] +@[deprecated ObjectProperty.FullSubcategory.comp_hom +typeChanged (since := "2026-04-08")] lemma comp_hom {X Y Z : LightCondensed.{u} C} (f : X ⟶ Y) (g : Y ⟶ Z) : (f ≫ g).hom = f.hom ≫ g.hom := rfl @@ -61,7 +61,7 @@ end LightCondensed namespace LightCondSet -@[deprecated NatTrans.naturality_apply (since := "2026-03-19")] +@[deprecated NatTrans.naturality_apply +typeChanged (since := "2026-03-19")] lemma hom_naturality_apply {X Y : LightCondSet.{u}} (f : X ⟶ Y) {S T : LightProfiniteᵒᵖ} (g : S ⟶ T) (x : X.obj.obj S) : f.hom.app T (X.obj.map g x) = Y.obj.map g (f.hom.app S x) := by simp diff --git a/mathlib4/Mathlib/Data/DFinsupp/Order.lean b/mathlib4/Mathlib/Data/DFinsupp/Order.lean index 796d35a2c..9f13372f5 100644 --- a/mathlib4/Mathlib/Data/DFinsupp/Order.lean +++ b/mathlib4/Mathlib/Data/DFinsupp/Order.lean @@ -200,7 +200,7 @@ instance [∀ i, IsBotZeroClass (α i)] : IsBotZeroClass (Π₀ i, α i) where variable {α} -@[deprecated _root_.bot_eq_zero (since := "2026-05-07")] +@[deprecated _root_.bot_eq_zero +typeChanged (since := "2026-05-07")] protected theorem bot_eq_zero [∀ i, IsBotZeroClass (α i)] : (⊥ : Π₀ i, α i) = 0 := rfl diff --git a/mathlib4/Mathlib/Data/ENNReal/Basic.lean b/mathlib4/Mathlib/Data/ENNReal/Basic.lean index 218392836..7a1f9519c 100644 --- a/mathlib4/Mathlib/Data/ENNReal/Basic.lean +++ b/mathlib4/Mathlib/Data/ENNReal/Basic.lean @@ -566,17 +566,17 @@ theorem toReal_le_coe_of_le_coe {a : ℝ≥0∞} {b : ℝ≥0} (h : a ≤ b) : a lift a to ℝ≥0 using ne_top_of_le_ne_top coe_ne_top h simpa using h -@[deprecated max_eq_zero (since := "2026-05-07")] +@[deprecated max_eq_zero +typeChanged (since := "2026-05-07")] theorem max_eq_zero_iff : max a b = 0 ↔ a = 0 ∧ b = 0 := max_eq_bot -@[deprecated min_eq_zero (since := "2026-05-07")] +@[deprecated min_eq_zero +typeChanged (since := "2026-05-07")] theorem min_eq_zero_iff : min a b = 0 ↔ a = 0 ∨ b = 0 := min_eq_bot -@[deprecated zero_max (since := "2026-05-07")] +@[deprecated zero_max +typeChanged (since := "2026-05-07")] theorem max_zero_left : max 0 a = a := max_eq_right zero_le -@[deprecated max_zero (since := "2026-05-07")] +@[deprecated max_zero +typeChanged (since := "2026-05-07")] theorem max_zero_right : max a 0 = a := max_eq_left zero_le diff --git a/mathlib4/Mathlib/Data/ENat/Basic.lean b/mathlib4/Mathlib/Data/ENat/Basic.lean index d7ead4094..3ae858ccd 100644 --- a/mathlib4/Mathlib/Data/ENat/Basic.lean +++ b/mathlib4/Mathlib/Data/ENat/Basic.lean @@ -315,7 +315,7 @@ lemma toNat_le_of_le_natCast {m : ℕ∞} {n : ℕ} (h : m ≤ n) : toNat m ≤ lemma toNat_le_toNat {m n : ℕ∞} (h : m ≤ n) (hn : n ≠ ⊤) : toNat m ≤ toNat n := toNat_le_of_le_natCast <| h.trans_eq (natCast_toNat hn).symm -@[deprecated Order.succ_eq_add_one (since := "2026-05-25")] +@[deprecated Order.succ_eq_add_one +typeChanged (since := "2026-05-25")] theorem succ_def (m : ℕ∞) : Order.succ m = m + 1 := Order.succ_eq_add_one m @@ -335,15 +335,15 @@ theorem add_one_le_natCast_iff {m : ℕ∞} {n : ℕ} : m + 1 ≤ n ↔ m < n := @[deprecated (since := "2026-07-17")] alias add_one_le_coe_iff := add_one_le_natCast_iff -@[deprecated Order.one_le_iff_ne_zero (since := "2026-05-25")] +@[deprecated Order.one_le_iff_ne_zero +typeChanged (since := "2026-05-25")] protected theorem one_le_iff_ne_zero : 1 ≤ n ↔ n ≠ 0 := Order.one_le_iff_ne_zero -@[deprecated Order.lt_one_iff (since := "2026-05-25")] +@[deprecated Order.lt_one_iff +typeChanged (since := "2026-05-25")] lemma lt_one_iff_eq_zero : n < 1 ↔ n = 0 := Order.lt_one_iff -@[deprecated Order.le_one_iff (since := "2026-05-25")] +@[deprecated Order.le_one_iff +typeChanged (since := "2026-05-25")] lemma le_one_iff_eq_zero_or_eq_one : n ≤ 1 ↔ n = 0 ∨ n = 1 := Order.le_one_iff @@ -403,7 +403,7 @@ theorem nat_induction {motive : ℕ∞ → Prop} (a : ℕ∞) (zero : motive 0) · exact top A · exact A _ -@[deprecated add_pos_of_right (since := "2026-05-25")] +@[deprecated add_pos_of_right +typeChanged (since := "2026-05-25")] lemma add_one_pos : 0 < n + 1 := add_pos_of_right zero_lt_one n diff --git a/mathlib4/Mathlib/Data/Finsupp/Indicator.lean b/mathlib4/Mathlib/Data/Finsupp/Indicator.lean index e573c8734..3acbdb092 100644 --- a/mathlib4/Mathlib/Data/Finsupp/Indicator.lean +++ b/mathlib4/Mathlib/Data/Finsupp/Indicator.lean @@ -73,7 +73,7 @@ lemma indicator_singleton (a : ι) (f : ∀ j ∈ ({a} : Finset ι), α) : simp only [single_apply, indicator_apply, mem_singleton, @eq_comm _ a j] split_ifs with h <;> simp [h] -@[deprecated indicator_singleton (since := "2026-04-27")] +@[deprecated indicator_singleton +typeChanged (since := "2026-04-27")] lemma single_eq_indicator (b : α) : single i b = indicator {i} (fun _ _ => b) := (indicator_singleton i (fun _ _ => b)).symm diff --git a/mathlib4/Mathlib/Data/Finsupp/Order.lean b/mathlib4/Mathlib/Data/Finsupp/Order.lean index a8e477592..b46798598 100644 --- a/mathlib4/Mathlib/Data/Finsupp/Order.lean +++ b/mathlib4/Mathlib/Data/Finsupp/Order.lean @@ -217,7 +217,7 @@ instance orderBot [IsBotZeroClass α] : OrderBot (ι →₀ α) where instance [IsBotZeroClass α] : IsBotZeroClass (ι →₀ α) where isBot_zero := isBot_bot -@[deprecated _root_.bot_eq_zero (since := "2026-05-07")] +@[deprecated _root_.bot_eq_zero +typeChanged (since := "2026-05-07")] protected theorem bot_eq_zero [IsBotZeroClass α] : (⊥ : ι →₀ α) = 0 := rfl diff --git a/mathlib4/Mathlib/Data/Finsupp/Single.lean b/mathlib4/Mathlib/Data/Finsupp/Single.lean index a03ff3917..e9d45ffcf 100644 --- a/mathlib4/Mathlib/Data/Finsupp/Single.lean +++ b/mathlib4/Mathlib/Data/Finsupp/Single.lean @@ -68,7 +68,7 @@ theorem set_indicator_singleton (a : α) (f : α → M) : Set.indicator {a} f = ⇑(single a (f a)) := by classical rw [Set.indicator_singleton, single_eq_pi_single] -@[deprecated set_indicator_singleton (since := "2026-04-27")] +@[deprecated set_indicator_singleton +typeChanged (since := "2026-04-27")] theorem single_eq_set_indicator : ⇑(single a b) = Set.indicator {a} fun _ => b := (set_indicator_singleton a (fun _ => b)).symm @@ -256,7 +256,7 @@ noncomputable def uniqueEquiv (a : α) [Subsingleton α] : (α →₀ M) ≃ M w /-- If `α` has a unique term, the type of finitely supported functions `α →₀ β` is equivalent to `β`. -/ -@[simps!, deprecated uniqueEquiv (since := "2026-05-06")] +@[simps!, deprecated uniqueEquiv +typeChanged (since := "2026-05-06")] noncomputable def _root_.Equiv.finsuppUnique {ι : Type*} [Unique ι] : (ι →₀ M) ≃ M := Finsupp.equivFunOnFinite.trans (Equiv.funUnique ι M) diff --git a/mathlib4/Mathlib/Data/Nat/Factorization/Basic.lean b/mathlib4/Mathlib/Data/Nat/Factorization/Basic.lean index 754d9c279..574d93e3e 100644 --- a/mathlib4/Mathlib/Data/Nat/Factorization/Basic.lean +++ b/mathlib4/Mathlib/Data/Nat/Factorization/Basic.lean @@ -83,7 +83,7 @@ theorem Prime.eq_of_factorization_pos {p q : ℕ} (hp : Prime p) (h : p.factoriz /-! ### Equivalence between `ℕ+` and `ℕ →₀ ℕ` with support in the primes. -/ -@[deprecated factorizationEquiv_symm_apply_coe (since := "2026-03-18")] +@[deprecated factorizationEquiv_symm_apply_coe +typeChanged (since := "2026-03-18")] theorem factorizationEquiv_inv_apply {f : ℕ →₀ ℕ} (hf : ∀ p ∈ f.support, Prime p) : (factorizationEquiv.symm ⟨f, hf⟩).1 = f.prod (· ^ ·) := factorizationEquiv_symm_apply_coe ⟨f, hf⟩ diff --git a/mathlib4/Mathlib/Data/Nat/MaxPowDiv.lean b/mathlib4/Mathlib/Data/Nat/MaxPowDiv.lean index caa09ce3d..7b6c650b2 100644 --- a/mathlib4/Mathlib/Data/Nat/MaxPowDiv.lean +++ b/mathlib4/Mathlib/Data/Nat/MaxPowDiv.lean @@ -265,7 +265,7 @@ alias maxPowDiv.base_mul_eq_succ := padicValNat_base_mul @[deprecated (since := "2026-03-15")] alias maxPowDiv.base_pow_mul := padicValNat_base_pow_mul -@[deprecated (since := "2026-03-15")] +@[deprecated pow_dvd_iff_le_padicValNat +typeChanged (since := "2026-03-15")] alias ⟨_, maxPowDiv.le_of_dvd⟩ := pow_dvd_iff_le_padicValNat @[deprecated (since := "2026-03-15")] diff --git a/mathlib4/Mathlib/Data/Nat/SuccPred.lean b/mathlib4/Mathlib/Data/Nat/SuccPred.lean index 9627a37cc..4dee705f2 100644 --- a/mathlib4/Mathlib/Data/Nat/SuccPred.lean +++ b/mathlib4/Mathlib/Data/Nat/SuccPred.lean @@ -85,7 +85,7 @@ end Nat @[simp] theorem Fin.covBy_iff {n : ℕ} {a b : Fin n} : a ⋖ b ↔ (a : ℕ) ⋖ b := and_congr_right' ⟨fun h c ha hb ↦ @h ⟨c, hb.trans b.prop⟩ ha hb, fun h _c hc ↦ h hc⟩ -@[deprecated Fin.covBy_iff "use Fin.covBy_iff.symm instead" (since := "2026-02-13")] +@[deprecated Fin.covBy_iff "use Fin.covBy_iff.symm instead" +typeChanged (since := "2026-02-13")] theorem Fin.coe_covBy_iff {n : ℕ} {a b : Fin n} : (a : ℕ) ⋖ b ↔ a ⋖ b := Fin.covBy_iff.symm alias ⟨CovBy.coe_fin, _⟩ := Fin.covBy_iff diff --git a/mathlib4/Mathlib/Data/PNat/Basic.lean b/mathlib4/Mathlib/Data/PNat/Basic.lean index 1e58070cd..6aa48045d 100644 --- a/mathlib4/Mathlib/Data/PNat/Basic.lean +++ b/mathlib4/Mathlib/Data/PNat/Basic.lean @@ -207,7 +207,7 @@ def coeMonoidHom : ℕ+ →* ℕ where theorem coe_coeMonoidHom : (coeMonoidHom : ℕ+ → ℕ) = (↑) := rfl -@[deprecated le_one_iff_eq_one (since := "2026-05-07")] +@[deprecated le_one_iff_eq_one +typeChanged (since := "2026-05-07")] theorem le_one_iff {n : ℕ+} : n ≤ 1 ↔ n = 1 := by simp @@ -221,7 +221,7 @@ theorem lt_add_right (n m : ℕ+) : n < n + m := theorem pow_coe (m : ℕ+) (n : ℕ) : ↑(m ^ n) = (m : ℕ) ^ n := rfl -@[deprecated one_lt_of_gt (since := "2026-05-07")] +@[deprecated one_lt_of_gt +typeChanged (since := "2026-05-07")] theorem one_lt_of_lt {a b : ℕ+} (hab : a < b) : 1 < b := hab.one_lt theorem add_one (a : ℕ+) : a + 1 = succPNat a := rfl diff --git a/mathlib4/Mathlib/Data/Set/Basic.lean b/mathlib4/Mathlib/Data/Set/Basic.lean index 958e231c1..fb023ba90 100644 --- a/mathlib4/Mathlib/Data/Set/Basic.lean +++ b/mathlib4/Mathlib/Data/Set/Basic.lean @@ -118,10 +118,10 @@ theorem le_iff_subset : s ≤ t ↔ s ⊆ t := theorem lt_iff_ssubset : s < t ↔ s ⊂ t := Iff.rfl -@[deprecated "this is now a syntactic identity" (since := "2026-05-24")] +@[deprecated "this is now a syntactic identity" +typeChanged (since := "2026-05-24")] alias ⟨_root_.LE.le.subset, _root_.HasSubset.Subset.le⟩ := le_iff_subset -@[deprecated "this is now a syntactic identity" (since := "2026-05-24")] +@[deprecated "this is now a syntactic identity" +typeChanged (since := "2026-05-24")] alias ⟨_root_.LT.lt.ssubset, _root_.HasSSubset.SSubset.lt⟩ := lt_iff_ssubset instance PiSetCoe.canLift (ι : Type u) (α : ι → Type v) [∀ i, Nonempty (α i)] (s : Set ι) : @@ -287,7 +287,7 @@ theorem not_subset : ¬s ⊆ t ↔ ∃ a ∈ s, a ∉ t := by theorem not_univ_subset : ¬univ ⊆ s ↔ ∃ a, a ∉ s := by simp [not_subset] -@[deprecated not_univ_subset (since := "2026-03-12")] +@[deprecated not_univ_subset +typeChanged (since := "2026-03-12")] theorem not_top_subset : ¬⊤ ⊆ s ↔ ∃ a, a ∉ s := not_univ_subset diff --git a/mathlib4/Mathlib/Data/Set/Image.lean b/mathlib4/Mathlib/Data/Set/Image.lean index cf5b1e49e..ad3ded64c 100644 --- a/mathlib4/Mathlib/Data/Set/Image.lean +++ b/mathlib4/Mathlib/Data/Set/Image.lean @@ -378,8 +378,10 @@ theorem image_sdiff {f : α → β} (hf : Injective f) (s t : Set α) : f '' (s (Subset.trans (image_sdiff_subset f s t) <| inter_subset_inter_right _ <| image_compl_subset hf) (subset_image_sdiff f s t) -@[deprecated image_sdiff (since := "2026-06-03")] alias subset_image_diff := subset_image_sdiff -@[deprecated (since := "2026-06-03")] alias image_diff := image_sdiff +@[deprecated image_sdiff +typeChanged (since := "2026-06-03")] +alias subset_image_diff := subset_image_sdiff +@[deprecated (since := "2026-06-03")] +alias image_diff := image_sdiff open scoped symmDiff in theorem image_symmDiff (hf : Injective f) (s t : Set α) : f '' s ∆ t = (f '' s) ∆ (f '' t) := by diff --git a/mathlib4/Mathlib/Data/Sym/Sym2.lean b/mathlib4/Mathlib/Data/Sym/Sym2.lean index 5f887edb1..c4bf082e1 100644 --- a/mathlib4/Mathlib/Data/Sym/Sym2.lean +++ b/mathlib4/Mathlib/Data/Sym/Sym2.lean @@ -758,7 +758,7 @@ def fromRelOrderIso : { r : α → α → Prop // Std.Symm r } ≃o Set (Sym2 α map_rel_iff' {r₁ r₂} := by simpa using! fromRel_mono_iff .. /-- `fromRel` induces an order embedding from symmetric relations to `Sym2` sets. -/ -@[deprecated fromRelOrderIso (since := "2026-03-11")] +@[deprecated fromRelOrderIso +typeChanged (since := "2026-03-11")] def fromRelOrderEmbedding : { r : α → α → Prop // Std.Symm r } ↪o Set (Sym2 α) := fromRelOrderIso α |>.toOrderEmbedding diff --git a/mathlib4/Mathlib/FieldTheory/AbelRuffini.lean b/mathlib4/Mathlib/FieldTheory/AbelRuffini.lean index 4ccaa3a7a..834178a67 100644 --- a/mathlib4/Mathlib/FieldTheory/AbelRuffini.lean +++ b/mathlib4/Mathlib/FieldTheory/AbelRuffini.lean @@ -197,7 +197,7 @@ def solvableByRad : IntermediateField F E := variable (F) in /-- Inductive definition of solvable by radicals -/ -@[deprecated solvableByRad (since := "2026-02-28")] +@[deprecated solvableByRad +typeChanged (since := "2026-02-28")] inductive IsSolvableByRad : E → Prop | base (α : F) : IsSolvableByRad (algebraMap F E α) | add (α β : E) : IsSolvableByRad α → IsSolvableByRad β → IsSolvableByRad (α + β) diff --git a/mathlib4/Mathlib/FieldTheory/Galois/Basic.lean b/mathlib4/Mathlib/FieldTheory/Galois/Basic.lean index ca7c4c787..57fdf16ba 100644 --- a/mathlib4/Mathlib/FieldTheory/Galois/Basic.lean +++ b/mathlib4/Mathlib/FieldTheory/Galois/Basic.lean @@ -723,7 +723,7 @@ instance IsQuadraticExtension.isCyclic : IsCyclic Gal(K/F) := by · exact @isCyclic_of_subsingleton _ _ (Finite.card_le_one_iff_subsingleton.mp h.le) · exact isCyclic_of_prime_card h -@[deprecated inferInstance (since := "2026-04-09")] +@[deprecated inferInstance +typeChanged (since := "2026-04-09")] theorem IsQuadraticExtension.isMulCommutative_galoisGroup : IsMulCommutative Gal(K/F) := inferInstance diff --git a/mathlib4/Mathlib/Geometry/Convex/Cone/Basic.lean b/mathlib4/Mathlib/Geometry/Convex/Cone/Basic.lean index 8bbf9ddc8..dbe9bc7b7 100644 --- a/mathlib4/Mathlib/Geometry/Convex/Cone/Basic.lean +++ b/mathlib4/Mathlib/Geometry/Convex/Cone/Basic.lean @@ -697,11 +697,11 @@ def toCone (s : Set M) (hs : Convex 𝕜 s) : ConvexCone 𝕜 M := by variable {s : Set M} (hs : Convex 𝕜 s) {x : M} -@[deprecated ConvexCone.mem_hull_of_convex (since := "2026-03-30")] +@[deprecated ConvexCone.mem_hull_of_convex +typeChanged (since := "2026-03-30")] theorem mem_toCone : x ∈ hs.toCone s ↔ ∃ c : 𝕜, 0 < c ∧ ∃ y ∈ s, c • y = x := by simp only [toCone, ConvexCone.mem_mk, mem_iUnion, mem_smul_set, eq_comm, exists_prop] -@[deprecated ConvexCone.mem_hull_of_convex (since := "2026-03-30")] +@[deprecated ConvexCone.mem_hull_of_convex +typeChanged (since := "2026-03-30")] theorem mem_toCone' : x ∈ hs.toCone s ↔ ∃ c : 𝕜, 0 < c ∧ c • x ∈ s := by refine hs.mem_toCone.trans ⟨?_, ?_⟩ · rintro ⟨c, hc, y, hy, rfl⟩ @@ -709,7 +709,7 @@ theorem mem_toCone' : x ∈ hs.toCone s ↔ ∃ c : 𝕜, 0 < c ∧ c • x ∈ · rintro ⟨c, hc, hcx⟩ exact ⟨c⁻¹, inv_pos.2 hc, _, hcx, by rw [smul_smul, inv_mul_cancel₀ hc.ne', one_smul]⟩ -@[deprecated ConvexCone.subset_hull (since := "2026-03-30")] +@[deprecated ConvexCone.subset_hull +typeChanged (since := "2026-03-30")] theorem subset_toCone : s ⊆ hs.toCone s := fun x hx => hs.mem_toCone'.2 ⟨1, zero_lt_one, by rwa [one_smul]⟩ diff --git a/mathlib4/Mathlib/GroupTheory/Coxeter/Length.lean b/mathlib4/Mathlib/GroupTheory/Coxeter/Length.lean index 2ddaecacc..a4944c296 100644 --- a/mathlib4/Mathlib/GroupTheory/Coxeter/Length.lean +++ b/mathlib4/Mathlib/GroupTheory/Coxeter/Length.lean @@ -128,11 +128,11 @@ theorem length_le_length_mul_add_left (w₁ w₂ : W) : ℓ w₂ ≤ ℓ (w₁ * theorem length_le_length_mul_add_right (w₁ w₂ : W) : ℓ w₁ ≤ ℓ (w₁ * w₂) + ℓ w₂ := by simpa using cs.length_mul_le (w₁ * w₂) w₂⁻¹ -@[deprecated length_le_length_mul_add_right (since := "2026-03-25")] +@[deprecated length_le_length_mul_add_right +typeChanged (since := "2026-03-25")] theorem length_mul_ge_length_sub_length (w₁ w₂ : W) : ℓ w₁ - ℓ w₂ ≤ ℓ (w₁ * w₂) := by rw [Nat.sub_le_iff_le_add]; exact length_le_length_mul_add_right .. -@[deprecated length_le_length_mul_add_left (since := "2026-03-25")] +@[deprecated length_le_length_mul_add_left +typeChanged (since := "2026-03-25")] theorem length_mul_ge_length_sub_length' (w₁ w₂ : W) : ℓ w₂ - ℓ w₁ ≤ ℓ (w₁ * w₂) := by rw [Nat.sub_le_iff_le_add]; exact length_le_length_mul_add_left .. diff --git a/mathlib4/Mathlib/GroupTheory/Index.lean b/mathlib4/Mathlib/GroupTheory/Index.lean index 579a2624f..554570295 100644 --- a/mathlib4/Mathlib/GroupTheory/Index.lean +++ b/mathlib4/Mathlib/GroupTheory/Index.lean @@ -520,7 +520,7 @@ lemma disjoint_of_coprime_natCard (h : Nat.card H |>.Coprime <| Nat.card K) : Di disjoint_iff.mpr <| card_eq_one.mp <| Nat.eq_one_of_dvd_coprimes h (card_dvd_of_le inf_le_left) (card_dvd_of_le inf_le_right) -@[to_additive (attr := deprecated disjoint_of_coprime_natCard (since := "2026-05-28"))] +@[to_additive (attr := deprecated disjoint_of_coprime_natCard +typeChanged (since := "2026-05-28"))] lemma inf_eq_bot_of_coprime (h : Nat.Coprime (Nat.card H) (Nat.card K)) : H ⊓ K = ⊥ := disjoint_iff.mp <| disjoint_of_coprime_natCard h diff --git a/mathlib4/Mathlib/GroupTheory/PGroup.lean b/mathlib4/Mathlib/GroupTheory/PGroup.lean index 3bb2a3cba..523fab093 100644 --- a/mathlib4/Mathlib/GroupTheory/PGroup.lean +++ b/mathlib4/Mathlib/GroupTheory/PGroup.lean @@ -471,7 +471,7 @@ def commGroupOfCardEqPrimeSq (hG : Nat.card G = p ^ 2) : CommGroup G := let := cyclic_center_quotient_of_card_eq_prime_sq hG commGroupOfCyclicCenterQuotient _ (QuotientGroup.ker_mk' <| center G).le -@[deprecated isMulCommutative_of_card_eq_prime_sq (since := "2026-05-26")] +@[deprecated isMulCommutative_of_card_eq_prime_sq +typeChanged (since := "2026-05-26")] theorem commutative_of_card_eq_prime_sq (hG : Nat.card G = p ^ 2) : ∀ a b : G, a * b = b * a := isMulCommutative_of_card_eq_prime_sq hG |>.is_comm.comm diff --git a/mathlib4/Mathlib/GroupTheory/SpecificGroups/Cyclic.lean b/mathlib4/Mathlib/GroupTheory/SpecificGroups/Cyclic.lean index 866caf783..f511c0c16 100644 --- a/mathlib4/Mathlib/GroupTheory/SpecificGroups/Cyclic.lean +++ b/mathlib4/Mathlib/GroupTheory/SpecificGroups/Cyclic.lean @@ -198,7 +198,7 @@ theorem MonoidHom.isMulCommutative_of_isCyclic_of_ker_le_center [IsCyclic G'] (f _ = b * a := by group @[to_additive (attr := deprecated MonoidHom.isMulCommutative_of_isCyclic_of_ker_le_center - (since := "2026-05-26"))] + +typeChanged (since := "2026-05-26"))] theorem commutative_of_cyclic_center_quotient [IsCyclic G'] (f : G →* G') (hf : f.ker ≤ center G) (a b : G) : a * b = b * a := f.isMulCommutative_of_isCyclic_of_ker_le_center hf |>.is_comm.comm a b diff --git a/mathlib4/Mathlib/GroupTheory/Subgroup/Centralizer.lean b/mathlib4/Mathlib/GroupTheory/Subgroup/Centralizer.lean index 110e78452..6d3fec96a 100644 --- a/mathlib4/Mathlib/GroupTheory/Subgroup/Centralizer.lean +++ b/mathlib4/Mathlib/GroupTheory/Subgroup/Centralizer.lean @@ -145,7 +145,7 @@ theorem isMulCommutative_closure {k : Set G} (hcomm : ∀ x ∈ k, ∀ y ∈ k, open scoped IsMulCommutative in /-- If all the elements of a set `s` commute, then `closure s` is a commutative group. -/ -@[to_additive (attr := deprecated isMulCommutative_closure (since := "2026-03-10")) +@[to_additive (attr := deprecated isMulCommutative_closure +typeChanged (since := "2026-03-10")) /-- If all the elements of a set `s` commute, then `closure s` is an additive commutative group. -/] abbrev closureCommGroupOfComm {k : Set G} (hcomm : ∀ x ∈ k, ∀ y ∈ k, x * y = y * x) : CommGroup (closure k) := diff --git a/mathlib4/Mathlib/GroupTheory/Submonoid/Centralizer.lean b/mathlib4/Mathlib/GroupTheory/Submonoid/Centralizer.lean index 3a0457db7..2d01ae91c 100644 --- a/mathlib4/Mathlib/GroupTheory/Submonoid/Centralizer.lean +++ b/mathlib4/Mathlib/GroupTheory/Submonoid/Centralizer.lean @@ -104,7 +104,7 @@ theorem isMulCommutative_closure {s : Set M} (hcomm : ∀ a ∈ s, ∀ b ∈ s, open scoped IsMulCommutative /-- If all the elements of a set `s` commute, then `closure s` is a commutative monoid. -/ -@[to_additive (attr := deprecated isMulCommutative_closure (since := "2026-03-09")) +@[to_additive (attr := deprecated isMulCommutative_closure +typeChanged (since := "2026-03-09")) /-- If all the elements of a set `s` commute, then `closure s` forms an additive commutative monoid. -/] abbrev closureCommMonoidOfComm {s : Set M} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : diff --git a/mathlib4/Mathlib/GroupTheory/Subsemigroup/Centralizer.lean b/mathlib4/Mathlib/GroupTheory/Subsemigroup/Centralizer.lean index e193fc019..eaadd8a09 100644 --- a/mathlib4/Mathlib/GroupTheory/Subsemigroup/Centralizer.lean +++ b/mathlib4/Mathlib/GroupTheory/Subsemigroup/Centralizer.lean @@ -88,7 +88,7 @@ theorem isMulCommutative_closure {s : Set M} (hcomm : ∀ a ∈ s, ∀ b ∈ s, open scoped IsMulCommutative in /-- If all the elements of a set `s` commute, then `closure s` is a commutative semigroup. -/ -@[to_additive (attr := deprecated isMulCommutative_closure (since := "2026-03-09")) +@[to_additive (attr := deprecated isMulCommutative_closure +typeChanged (since := "2026-03-09")) /-- If all the elements of a set `s` commute, then `closure s` forms an additive commutative semigroup. -/] abbrev closureCommSemigroupOfComm {s : Set M} (hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a) : diff --git a/mathlib4/Mathlib/Lean/MessageData/Trace.lean b/mathlib4/Mathlib/Lean/MessageData/Trace.lean index 50cf68fca..95d9c5f4a 100644 --- a/mathlib4/Mathlib/Lean/MessageData/Trace.lean +++ b/mathlib4/Mathlib/Lean/MessageData/Trace.lean @@ -33,7 +33,7 @@ namespace Lean.MessageData The `TraceResult` will be recorded in trace messages directly in [lean4#12698](https://github.com/leanprover/lean4/pull/12698). Once that PR is available, callers should prefer `td.result?` over calling this function. -/ -@[deprecated Lean.TraceData.result? (since := "2026-03-23")] +@[deprecated Lean.TraceData.result? +typeChanged (since := "2026-03-23")] def traceResultOf (headerStr : String) : Option TraceResult := if headerStr.startsWith "✅️" then some .success else if headerStr.startsWith "❌️" then some .failure @@ -46,7 +46,7 @@ leaving just the semantic content for comparison across trace runs. Trace headers from `withTraceNode` have the form `"{emoji}[{VS16}] {content}"`. This strips everything through the first space. Returns the string unchanged if no recognized status prefix is present. -/ -@[deprecated Lean.TraceData (since := "2026-03-23")] +@[deprecated Lean.TraceData +typeChanged (since := "2026-03-23")] def stripTraceResultPrefix (s : String) : String := if (traceResultOf s).isNone then s else s.toSlice.dropPrefix (!·.isWhitespace) |>.dropPrefix ' ' |>.copy diff --git a/mathlib4/Mathlib/LinearAlgebra/AffineSpace/Combination.lean b/mathlib4/Mathlib/LinearAlgebra/AffineSpace/Combination.lean index c35688997..be44fcd05 100644 --- a/mathlib4/Mathlib/LinearAlgebra/AffineSpace/Combination.lean +++ b/mathlib4/Mathlib/LinearAlgebra/AffineSpace/Combination.lean @@ -606,19 +606,19 @@ theorem lineMap_affineCombination (w₁ : ι → k) (w₂ : ι → k) (r : k) (p variable (k) /-- Weights for expressing a single point as an affine combination. -/ -@[deprecated Pi.single (since := "2026-04-16")] +@[deprecated Pi.single +typeChanged (since := "2026-04-16")] def affineCombinationSingleWeights [DecidableEq ι] (i : ι) : ι → k := Pi.single i 1 -@[deprecated Pi.single_eq_same (since := "2026-04-16")] +@[deprecated Pi.single_eq_same +typeChanged (since := "2026-04-16")] theorem affineCombinationSingleWeights_apply_self [DecidableEq ι] (i : ι) : affineCombinationSingleWeights k i i = 1 := Pi.single_eq_same _ _ -@[deprecated Pi.single_eq_of_ne (since := "2026-04-16")] +@[deprecated Pi.single_eq_of_ne +typeChanged (since := "2026-04-16")] theorem affineCombinationSingleWeights_apply_of_ne [DecidableEq ι] {i j : ι} (h : j ≠ i) : affineCombinationSingleWeights k i j = 0 := Pi.single_eq_of_ne h _ -@[deprecated Finset.sum_pi_single' (since := "2026-04-16")] +@[deprecated Finset.sum_pi_single' +typeChanged (since := "2026-04-16")] theorem sum_affineCombinationSingleWeights [DecidableEq ι] {i : ι} (h : i ∈ s) : ∑ j ∈ s, affineCombinationSingleWeights k i j = 1 := by rw [affineCombinationSingleWeights, s.sum_pi_single', ite_eq_left h] @@ -692,7 +692,7 @@ theorem affineCombination_piSingle [DecidableEq ι] (p : ι → P) {i : ι} simp [hj] /-- An affine combination with `affineCombinationSingleWeights` gives the specified point. -/ -@[deprecated affineCombination_piSingle (since := "2026-04-16")] +@[deprecated affineCombination_piSingle +typeChanged (since := "2026-04-16")] theorem affineCombination_affineCombinationSingleWeights [DecidableEq ι] (p : ι → P) {i : ι} (hi : i ∈ s) : s.affineCombination k p (affineCombinationSingleWeights k i) = p i := affineCombination_piSingle _ _ _ hi diff --git a/mathlib4/Mathlib/LinearAlgebra/Dual/Defs.lean b/mathlib4/Mathlib/LinearAlgebra/Dual/Defs.lean index 8ce80686f..04bb36c65 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Dual/Defs.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Dual/Defs.lean @@ -63,7 +63,7 @@ abbrev Dual (R M : Type*) [Semiring R] [AddCommMonoid M] [Module R M] := M →ₗ[R] R /-- The canonical pairing of a vector space and its algebraic dual. -/ -@[deprecated LinearMap.id (since := "2026-04-02")] +@[deprecated LinearMap.id +typeChanged (since := "2026-04-02")] def dualPairing (R M) [CommSemiring R] [AddCommMonoid M] [Module R M] : Module.Dual R M →ₗ[R] M →ₗ[R] R := LinearMap.id diff --git a/mathlib4/Mathlib/LinearAlgebra/Finsupp/Pi.lean b/mathlib4/Mathlib/LinearAlgebra/Finsupp/Pi.lean index e7b6192a1..7455db654 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Finsupp/Pi.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Finsupp/Pi.lean @@ -49,7 +49,7 @@ noncomputable def uniqueLinearEquiv [Subsingleton α] (a : α) : (α →₀ M) /-- If `α` has a unique term, then the type of finitely supported functions `α →₀ M` is `R`-linearly equivalent to `M`. -/ -@[deprecated uniqueLinearEquiv (since := "2026-05-06")] +@[deprecated uniqueLinearEquiv +typeChanged (since := "2026-05-06")] noncomputable def LinearEquiv.finsuppUnique (α : Type*) [Unique α] : (α →₀ M) ≃ₗ[R] M := { Finsupp.equivFunOnFinite.trans (Equiv.funUnique α M) with map_add' := fun _ _ => rfl @@ -57,13 +57,13 @@ noncomputable def LinearEquiv.finsuppUnique (α : Type*) [Unique α] : (α → variable {R M} -@[deprecated uniqueLinearEquiv_apply (since := "2026-05-06")] +@[deprecated uniqueLinearEquiv_apply +typeChanged (since := "2026-05-06")] theorem LinearEquiv.finsuppUnique_apply (α : Type*) [Unique α] (f : α →₀ M) : LinearEquiv.finsuppUnique R M α f = f default := rfl set_option backward.isDefEq.respectTransparency.types false in -@[deprecated uniqueLinearEquiv_symm_apply (since := "2026-05-06")] +@[deprecated uniqueLinearEquiv_symm_apply +typeChanged (since := "2026-05-06")] theorem LinearEquiv.finsuppUnique_symm_apply (α : Type*) [Unique α] (m : M) : (LinearEquiv.finsuppUnique R M α).symm m = Finsupp.single default m := by ext; simp [LinearEquiv.finsuppUnique, Equiv.funUnique, single, Pi.single, diff --git a/mathlib4/Mathlib/LinearAlgebra/Lagrange.lean b/mathlib4/Mathlib/LinearAlgebra/Lagrange.lean index eafc263d1..9e53c1fbb 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Lagrange.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Lagrange.lean @@ -487,7 +487,7 @@ theorem eval_iterate_derivative_eq_sum (hvs : Set.InjOn v s) {P : Polynomial F} nth_rewrite 1 [eq_interpolate hvs hP, iterate_derivative_interpolate _ hvs hk] simp [eval_finsetSum, eval_prod] -@[deprecated eq_interpolate (since := "2026-01-14")] +@[deprecated eq_interpolate +typeChanged (since := "2026-01-14")] theorem interpolate_poly_eq_self (hvs : Set.InjOn v s) {P : Polynomial F} (hP : P.degree < s.card) : interpolate s v (fun i => P.eval (v i)) = P := (eq_interpolate hvs hP).symm diff --git a/mathlib4/Mathlib/LinearAlgebra/Matrix/Reindex.lean b/mathlib4/Mathlib/LinearAlgebra/Matrix/Reindex.lean index 4a4a01fbf..1569a5ff4 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Matrix/Reindex.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Matrix/Reindex.lean @@ -137,7 +137,7 @@ theorem toAddEquiv_reindexLinearEquiv (eₘ : m ≃ m') (eₙ : n ≃ n') : reindexLinearEquiv R A eₘ eₙ = reindexAddEquiv A eₘ eₙ := rfl -@[deprecated coe_reindexLinearEquiv (since := "2026-06-06")] +@[deprecated coe_reindexLinearEquiv +typeChanged (since := "2026-06-06")] theorem reindexLinearEquiv_apply (eₘ : m ≃ m') (eₙ : n ≃ n') (M : Matrix m n A) : reindexLinearEquiv R A eₘ eₙ M = reindex eₘ eₙ M := by simp @@ -234,7 +234,7 @@ theorem toLinearEquiv_reindexAlgEquiv (e : m ≃ n) : reindexAlgEquiv R A e = reindexLinearEquiv R A e e := rfl -@[deprecated coe_reindexAlgEquiv (since := "2026-06-06")] +@[deprecated coe_reindexAlgEquiv +typeChanged (since := "2026-06-06")] theorem reindexAlgEquiv_apply (e : m ≃ n) (M : Matrix m m A) : reindexAlgEquiv R A e M = reindex e e M := by simp @@ -255,7 +255,7 @@ theorem reindexAlgEquiv_trans_reindexAlgEquiv (e : m ≃ n) (e' : n ≃ o) : .trans (reindexAlgEquiv R A e) (reindexAlgEquiv R A e') = reindexAlgEquiv R A (.trans e e') := rfl -@[deprecated map_mul (since := "2026-06-06")] +@[deprecated map_mul +typeChanged (since := "2026-06-06")] theorem reindexAlgEquiv_mul (e : m ≃ n) (M : Matrix m m A) (N : Matrix m m A) : reindexAlgEquiv R A e (M * N) = reindexAlgEquiv R A e M * reindexAlgEquiv R A e N := map_mul .. diff --git a/mathlib4/Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean b/mathlib4/Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean index f4925ef8a..d49c2a7d6 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean @@ -512,7 +512,7 @@ lemma transvection_smul_single_fst {i j : ι} (hij : i ≠ j) (b : F) : simp [SpecialLinearGroup.smul_def, -mulVec_single, transvection_coe, add_mulVec, single_mulVec_eq, hij] -@[deprecated transvection_smul_single_fst (since := "2026-06-22")] +@[deprecated transvection_smul_single_fst +typeChanged (since := "2026-06-22")] lemma transvection_mulVec_single_self {i j : ι} (hij : i ≠ j) (b : F) : (transvection hij b).1 *ᵥ (Pi.single i (1 : F)) = Pi.single i 1 := by rw [transvection_coe] @@ -524,7 +524,7 @@ lemma transvection_smul_single_snd {i j : ι} (hij : i ≠ j) (b : F) : simp [SpecialLinearGroup.smul_def, transvection_coe, -mulVec_single, add_mulVec, single_mulVec_eq] -@[deprecated transvection_smul_single_snd (since := "2026-06-22")] +@[deprecated transvection_smul_single_snd +typeChanged (since := "2026-06-22")] lemma transvection_mulVec_single_other {i j : ι} (hij : i ≠ j) (b : F) : (transvection hij b).1 *ᵥ (Pi.single j (1 : F)) = Pi.single j 1 + b • Pi.single i 1 := by rw [transvection_coe] diff --git a/mathlib4/Mathlib/LinearAlgebra/Span/Basic.lean b/mathlib4/Mathlib/LinearAlgebra/Span/Basic.lean index 1d7829afd..9dd66c4df 100644 --- a/mathlib4/Mathlib/LinearAlgebra/Span/Basic.lean +++ b/mathlib4/Mathlib/LinearAlgebra/Span/Basic.lean @@ -604,7 +604,7 @@ lemma comap_covBy_of_surjective {f : M →ₛₗ[τ₁₂] M₂} (hf : Surjectiv rwa [← comap_lt_comap_iff_of_surjective hf, comap_map_eq, sup_eq_left.mpr] refine (LinearMap.ker_le_comap (f : M →ₛₗ[τ₁₂] M₂)).trans h₁.le -@[deprecated map_eq_range_iff (since := "2026-07-01")] +@[deprecated map_eq_range_iff +typeChanged (since := "2026-07-01")] lemma _root_.LinearMap.range_domRestrict_eq_range_iff {f : M →ₛₗ[τ₁₂] M₂} {S : Submodule R M} : LinearMap.range (f.domRestrict S) = LinearMap.range f ↔ Codisjoint S f.ker := by simp [map_eq_range_iff] diff --git a/mathlib4/Mathlib/Logic/Encodable/Basic.lean b/mathlib4/Mathlib/Logic/Encodable/Basic.lean index 1d367e6a4..d818de7de 100644 --- a/mathlib4/Mathlib/Logic/Encodable/Basic.lean +++ b/mathlib4/Mathlib/Logic/Encodable/Basic.lean @@ -81,7 +81,7 @@ theorem surjective_decode_getD (α : Type*) [Encodable α] (d : α) : Surjective fun n => (Encodable.decode n).getD d := fun x => ⟨Encodable.encode x, by simp_rw [Encodable.encodek]; rfl⟩ -@[deprecated surjective_decode_getD (since := "2026-01-05")] +@[deprecated surjective_decode_getD +typeChanged (since := "2026-01-05")] theorem surjective_decode_iget (α : Type*) [Encodable α] [Inhabited α] : Surjective fun n => ((Encodable.decode n).getD default : α) := surjective_decode_getD α default diff --git a/mathlib4/Mathlib/Logic/Equiv/Fin/Rotate.lean b/mathlib4/Mathlib/Logic/Equiv/Fin/Rotate.lean index 4677a3c73..83e7cd116 100644 --- a/mathlib4/Mathlib/Logic/Equiv/Fin/Rotate.lean +++ b/mathlib4/Mathlib/Logic/Equiv/Fin/Rotate.lean @@ -76,7 +76,7 @@ theorem finRotate_apply (i : Fin n) : haveI := i.neZero; finRotate n i = i + 1 : simp only [Fin.lt_def, Fin.val_last] at h simp [finRotate_of_lt h, Fin.add_def, Nat.mod_eq_of_lt (Nat.succ_lt_succ h)] -@[deprecated finRotate_apply (since := "2026-03-29")] +@[deprecated finRotate_apply +typeChanged (since := "2026-03-29")] theorem finRotate_succ_apply (i : Fin (n + 1)) : finRotate (n + 1) i = i + 1 := by simp @@ -108,7 +108,7 @@ lemma finRotate_symm_apply (i : Fin n) : haveI := i.neZero; (finRotate _).symm i apply (finRotate n.succ).symm_apply_eq.mpr rw [finRotate_apply, sub_add_cancel] -@[deprecated finRotate_symm_apply (since := "2026-03-29")] +@[deprecated finRotate_symm_apply +typeChanged (since := "2026-03-29")] lemma finRotate_succ_symm_apply [NeZero n] (i : Fin n) : (finRotate _).symm i = i - 1 := by simp diff --git a/mathlib4/Mathlib/Logic/Relation.lean b/mathlib4/Mathlib/Logic/Relation.lean index 4b990aaa2..3f7623c00 100644 --- a/mathlib4/Mathlib/Logic/Relation.lean +++ b/mathlib4/Mathlib/Logic/Relation.lean @@ -602,7 +602,7 @@ lemma reflGen_eq_self [Std.Refl r] : ReflGen r = r := by ext x y simpa only [reflGen_iff, or_iff_right_iff_imp] using fun h ↦ h ▸ refl y -@[deprecated inferInstance (since := "2026-03-27")] +@[deprecated inferInstance +typeChanged (since := "2026-03-27")] lemma reflexive_reflGen : Std.Refl (ReflGen r) := inferInstance lemma reflGen_minimal {r' : α → α → Prop} [Std.Refl r'] (h : r ≤ r') : ReflGen r ≤ r' := by @@ -649,10 +649,10 @@ theorem transGen_eq_self [IsTrans α r] : TransGen r = r := | single hc => exact hc | tail _ hcd hac => exact IsTrans.trans _ _ _ hac hcd, TransGen.single⟩ -@[deprecated inferInstance (since := "2026-02-21")] +@[deprecated inferInstance +typeChanged (since := "2026-02-21")] theorem transitive_transGen : IsTrans α (TransGen r) := inferInstance -@[deprecated transGen_eq_self (since := "2026-03-27"), grind =] +@[deprecated transGen_eq_self +typeChanged (since := "2026-03-27"), grind =] theorem transGen_idem : TransGen (TransGen r) = TransGen r := transGen_eq_self @@ -735,13 +735,13 @@ instance : IsPreorder α (ReflTransGen r) where refl := @ReflTransGen.refl α r trans := @ReflTransGen.trans α r -@[deprecated inferInstance (since := "2026-03-27")] +@[deprecated inferInstance +typeChanged (since := "2026-03-27")] theorem reflexive_reflTransGen : Std.Refl (ReflTransGen r) := inferInstance -@[deprecated inferInstance (since := "2026-02-21")] +@[deprecated inferInstance +typeChanged (since := "2026-02-21")] theorem transitive_reflTransGen : IsTrans α (ReflTransGen r) := inferInstance -@[deprecated reflTransGen_eq_self (since := "2026-03-27"), grind =] +@[deprecated reflTransGen_eq_self +typeChanged (since := "2026-03-27"), grind =] theorem reflTransGen_idem : ReflTransGen (ReflTransGen r) = ReflTransGen r := reflTransGen_eq_self diff --git a/mathlib4/Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean b/mathlib4/Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean index 58c792403..9236f53db 100644 --- a/mathlib4/Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean +++ b/mathlib4/Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean @@ -154,7 +154,7 @@ theorem ae_bdd_abs_condExp_of_ae_bdd_abs {R : E} {f : α → E} (hbdd : ∀ᵐ x /-- If the real-valued function `f` is bounded almost everywhere by `R`, then so is its conditional expectation. -/ -@[deprecated ae_bdd_abs_condExp_of_ae_bdd_abs (since := "2026-05-05")] +@[deprecated ae_bdd_abs_condExp_of_ae_bdd_abs +typeChanged (since := "2026-05-05")] theorem ae_bdd_condExp_of_ae_bdd {R : ℝ≥0} {f : α → ℝ} (hbdd : ∀ᵐ x ∂μ, |f x| ≤ R) : ∀ᵐ x ∂μ, |(μ[f | m]) x| ≤ R := by by_cases hnm : m ≤ m0 @@ -295,7 +295,7 @@ theorem eLpNorm_condExp_le_eLpNorm (f : α → E) {p : ℝ≥0∞} (hp : 1 ≤ p · simp [hf ha] · simp [condExp_of_not_integrable (fun h => ha h.aestronglyMeasurable)] -@[deprecated eLpNorm_condExp_le_eLpNorm (since := "2026-07-01")] +@[deprecated eLpNorm_condExp_le_eLpNorm +typeChanged (since := "2026-07-01")] theorem eLpNorm_one_condExp_le_eLpNorm (f : α → E) : eLpNorm (μ[f | m]) 1 μ ≤ eLpNorm f 1 μ := eLpNorm_condExp_le_eLpNorm f (refl 1) diff --git a/mathlib4/Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean b/mathlib4/Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean index e1cc8af8c..18cb0abe3 100644 --- a/mathlib4/Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean +++ b/mathlib4/Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean @@ -201,7 +201,7 @@ namespace Measure /-- A set in a σ-finite space has zero measure if and only if its intersection with all members of the countable family of finite measure spanning sets has zero measure. -/ -@[deprecated forall_measure_inter_isCountablySpanning_eq_zero (since := "2026-03-13")] +@[deprecated forall_measure_inter_isCountablySpanning_eq_zero +typeChanged (since := "2026-03-13")] theorem forall_measure_inter_spanningSets_eq_zero [MeasurableSpace α] {μ : Measure α} [SigmaFinite μ] (s : Set α) : (∀ n, μ (s ∩ spanningSets μ n) = 0) ↔ μ s = 0 := by nth_rw 2 [show s = ⋃ n, s ∩ spanningSets μ n by diff --git a/mathlib4/Mathlib/NumberTheory/Modular.lean b/mathlib4/Mathlib/NumberTheory/Modular.lean index caf3b202d..cc473d04b 100644 --- a/mathlib4/Mathlib/NumberTheory/Modular.lean +++ b/mathlib4/Mathlib/NumberTheory/Modular.lean @@ -793,7 +793,7 @@ theorem eq_one_or_neg_one_of_mem_fdo_mem_fdo (hz : z ∈ 𝒟ᵒ) (hg : g • z /-- This was previously an auxiliary result en route to `ModularGroup.eq_smul_self_of_mem_fdo_mem_fdo`. It is now deprecated, since the proof has been refactored so this step is no longer needed. -/ -@[deprecated eq_one_or_neg_one_of_mem_fdo_mem_fdo (since := "2026-03-19")] +@[deprecated eq_one_or_neg_one_of_mem_fdo_mem_fdo +typeChanged (since := "2026-03-19")] theorem c_eq_zero (hz : z ∈ 𝒟ᵒ) (hg : g • z ∈ 𝒟ᵒ) : g 1 0 = 0 := by rcases eq_one_or_neg_one_of_mem_fdo_mem_fdo hz hg with rfl | rfl <;> rfl diff --git a/mathlib4/Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean b/mathlib4/Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean index 9e0d76ea0..c2a678fe5 100644 --- a/mathlib4/Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean +++ b/mathlib4/Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean @@ -91,10 +91,10 @@ lemma discriminantEquiv_apply (f : CuspForm 𝒮ℒ k) (z : ℍ) : (discriminantEquiv f) z = f z / Δ z := rfl /-- Divide a cusp form by the discriminant to get a modular form of weight `k - 12`. -/ -@[deprecated discriminantEquiv (since := "2026-05-18")] +@[deprecated discriminantEquiv +typeChanged (since := "2026-05-18")] def divDiscriminant (f : CuspForm 𝒮ℒ k) : ModularForm 𝒮ℒ (k - 12) := discriminantEquiv f -@[deprecated discriminantEquiv_apply (since := "2026-05-18")] +@[deprecated discriminantEquiv_apply +typeChanged (since := "2026-05-18")] lemma divDiscriminant_apply (f : CuspForm 𝒮ℒ k) (z : ℍ) : (divDiscriminant f) z = f z / Δ z := rfl diff --git a/mathlib4/Mathlib/NumberTheory/ModularForms/QExpansion.lean b/mathlib4/Mathlib/NumberTheory/ModularForms/QExpansion.lean index d0c96069a..b3125c104 100644 --- a/mathlib4/Mathlib/NumberTheory/ModularForms/QExpansion.lean +++ b/mathlib4/Mathlib/NumberTheory/ModularForms/QExpansion.lean @@ -140,7 +140,7 @@ open SlashInvariantFormClass namespace ModularFormClass -@[deprecated ModularFormClass.bdd_at_infty (since := "2026-04-19")] +@[deprecated ModularFormClass.bdd_at_infty +typeChanged (since := "2026-04-19")] theorem bounded_at_infty_comp_ofComplex [ModularFormClass F Γ k] (hi : IsCusp OnePoint.infty Γ) : BoundedAtFilter I∞ (f ∘ ofComplex) := (OnePoint.isBoundedAt_infty_iff.mp (bdd_at_cusps f hi)).comp_tendsto tendsto_comap_im_ofComplex diff --git a/mathlib4/Mathlib/NumberTheory/ModularForms/SlashActions.lean b/mathlib4/Mathlib/NumberTheory/ModularForms/SlashActions.lean index dc666c4da..9f9d4822a 100644 --- a/mathlib4/Mathlib/NumberTheory/ModularForms/SlashActions.lean +++ b/mathlib4/Mathlib/NumberTheory/ModularForms/SlashActions.lean @@ -250,7 +250,7 @@ lemma prod_slash {ι : Type*} {k : ℤ} {g : GL (Fin 2) ℝ} {f : ι → ℍ → rw [this] exact prod_slash_sum_weights -@[deprecated prod_slash (since := "2026-01-22")] +@[deprecated prod_slash +typeChanged (since := "2026-01-22")] lemma prod_fintype_slash {ι : Type*} [Fintype ι] [Nonempty ι] {k : ℤ} {g : GL (Fin 2) ℝ} {f : ι → ℍ → ℂ} : (∏ i, f i) ∣[k * Fintype.card ι] g = |g.det.val| ^ (Fintype.card ι - 1) • (∏ i, f i ∣[k] g) := by diff --git a/mathlib4/Mathlib/NumberTheory/Zsqrtd/Basic.lean b/mathlib4/Mathlib/NumberTheory/Zsqrtd/Basic.lean index 35cd025fc..af3f189c5 100644 --- a/mathlib4/Mathlib/NumberTheory/Zsqrtd/Basic.lean +++ b/mathlib4/Mathlib/NumberTheory/Zsqrtd/Basic.lean @@ -620,7 +620,7 @@ protected theorem nonneg_total : ∀ a : ℤ√d, Nonneg a ∨ Nonneg (-a) | ⟨(_ + 1 : ℕ), -[_+1]⟩ => Nat.le_total _ _ | ⟨-[_+1], (_ + 1 : ℕ)⟩ => Nat.le_total _ _ -@[deprecated _root_.le_total (since := "2026-02-19")] +@[deprecated _root_.le_total +typeChanged (since := "2026-02-19")] protected theorem le_total (a b : ℤ√d) : a ≤ b ∨ b ≤ a := by have t := (b - a).nonneg_total rwa [neg_sub] at t @@ -653,7 +653,7 @@ theorem le_arch (a : ℤ√d) : ∃ n : ℕ, a ≤ n := by rw [show (x : ℤ) + d * Nat.succ y - x = d * Nat.succ y by simp] exact h (y + 1) -@[deprecated _root_.add_le_add_left (since := "2026-02-19")] +@[deprecated _root_.add_le_add_left +typeChanged (since := "2026-02-19")] protected theorem add_le_add_left (a b : ℤ√d) (ab : a ≤ b) (c : ℤ√d) : a + c ≤ b + c := show Nonneg _ by rwa [add_sub_add_right_eq_sub] @@ -784,7 +784,7 @@ theorem nonneg_antisymm : ∀ {a : ℤ√d}, Nonneg a → Nonneg (-a) → a = 0 rw [one_mul] at t exact absurd t (not_divides_sq _ _) -@[deprecated _root_.le_antisymm (since := "2026-02-19")] +@[deprecated _root_.le_antisymm +typeChanged (since := "2026-02-19")] theorem le_antisymm {a b : ℤ√d} (ab : a ≤ b) (ba : b ≤ a) : a = b := eq_of_sub_eq_zero <| nonneg_antisymm ba (by rwa [neg_sub]) @@ -844,11 +844,11 @@ instance : ZeroLEOneClass (ℤ√d) := instance : IsOrderedAddMonoid (ℤ√d) := { add_le_add_left := fun a b ab c => show Nonneg _ by rwa [add_sub_add_right_eq_sub] } -@[deprecated _root_.le_of_add_le_add_left (since := "2026-02-19")] +@[deprecated _root_.le_of_add_le_add_left +typeChanged (since := "2026-02-19")] protected theorem le_of_add_le_add_left (a b c : ℤ√d) (h : c + a ≤ c + b) : a ≤ b := by exact _root_.le_of_add_le_add_left h -@[deprecated _root_.add_lt_add_left (since := "2026-02-19")] +@[deprecated _root_.add_lt_add_left +typeChanged (since := "2026-02-19")] protected theorem add_lt_add_left (a b : ℤ√d) (h : a < b) (c) : c + a < c + b := fun h' => h (_root_.le_of_add_le_add_left h') diff --git a/mathlib4/Mathlib/Order/BooleanAlgebra/Basic.lean b/mathlib4/Mathlib/Order/BooleanAlgebra/Basic.lean index 8e12472df..09b31007d 100644 --- a/mathlib4/Mathlib/Order/BooleanAlgebra/Basic.lean +++ b/mathlib4/Mathlib/Order/BooleanAlgebra/Basic.lean @@ -290,7 +290,7 @@ theorem sdiff_eq_comm (hy : y ≤ x) (hz : z ≤ x) : x \ y = z ↔ x \ z = y := theorem sdiff_right_inj (hxz : x ≤ z) (hyz : y ≤ z) : z \ x = z \ y ↔ x = y := ⟨fun h => by rw [← sdiff_sdiff_eq_self hxz, h, sdiff_sdiff_eq_self hyz], congrArg (z \ ·)⟩ -@[deprecated sdiff_right_inj (since := "2026-04-16")] +@[deprecated sdiff_right_inj +typeChanged (since := "2026-04-16")] theorem eq_of_sdiff_eq_sdiff (hxz : x ≤ z) (hyz : y ≤ z) (h : z \ x = z \ y) : x = y := (sdiff_right_inj hxz hyz).mp h diff --git a/mathlib4/Mathlib/Order/BooleanAlgebra/Set.lean b/mathlib4/Mathlib/Order/BooleanAlgebra/Set.lean index 3968a813d..862b94932 100644 --- a/mathlib4/Mathlib/Order/BooleanAlgebra/Set.lean +++ b/mathlib4/Mathlib/Order/BooleanAlgebra/Set.lean @@ -188,9 +188,9 @@ lemma disjoint_compl_right_iff_subset : Disjoint s tᶜ ↔ s ⊆ t := disjoint_ alias ⟨_, _root_.Disjoint.subset_compl_right⟩ := subset_compl_iff_disjoint_right alias ⟨_, _root_.Disjoint.subset_compl_left⟩ := subset_compl_iff_disjoint_left -@[deprecated LE.le.disjoint_compl_left (since := "2026-06-05")] +@[deprecated LE.le.disjoint_compl_left +typeChanged (since := "2026-06-05")] alias ⟨_, _root_.HasSubset.Subset.disjoint_compl_left⟩ := disjoint_compl_left_iff_subset -@[deprecated LE.le.disjoint_compl_right (since := "2026-06-05")] +@[deprecated LE.le.disjoint_compl_right +typeChanged (since := "2026-06-05")] alias ⟨_, _root_.HasSubset.Subset.disjoint_compl_right⟩ := disjoint_compl_right_iff_subset @[simp] lemma nonempty_compl_of_nontrivial [Nontrivial α] (x : α) : Set.Nonempty {x}ᶜ := exists_ne x diff --git a/mathlib4/Mathlib/Order/CompactlyGenerated/Basic.lean b/mathlib4/Mathlib/Order/CompactlyGenerated/Basic.lean index 07739d090..f180294c0 100644 --- a/mathlib4/Mathlib/Order/CompactlyGenerated/Basic.lean +++ b/mathlib4/Mathlib/Order/CompactlyGenerated/Basic.lean @@ -475,7 +475,7 @@ lemma iSupIndep_iff_supIndep {ι : Type*} {f : ι → α} : rw [Finset.supIndep_iff_disjoint_erase] at h exact h i (Finset.mem_insert_self i _) -@[deprecated iSupIndep_iff_supIndep (since := "2026-02-18")] +@[deprecated iSupIndep_iff_supIndep +typeChanged (since := "2026-02-18")] lemma iSupIndep_iff_supIndep_of_injOn {ι : Type*} {f : ι → α} (hf : InjOn f {i | f i ≠ ⊥}) : iSupIndep f ↔ ∀ (s : Finset ι), s.SupIndep f := by diff --git a/mathlib4/Mathlib/Order/Comparable.lean b/mathlib4/Mathlib/Order/Comparable.lean index 1af998bfe..03814280a 100644 --- a/mathlib4/Mathlib/Order/Comparable.lean +++ b/mathlib4/Mathlib/Order/Comparable.lean @@ -52,54 +52,54 @@ variable {r : α → α → Prop} def CompRel (r : α → α → Prop) (a b : α) : Prop := r a b ∨ r b a -@[deprecated SymmGen.of_rel (since := "2026-01-25")] +@[deprecated SymmGen.of_rel +typeChanged (since := "2026-01-25")] theorem CompRel.of_rel (h : r a b) : CompRel r a b := SymmGen.of_rel h -@[deprecated SymmGen.of_rel_symm (since := "2026-01-25")] +@[deprecated SymmGen.of_rel_symm +typeChanged (since := "2026-01-25")] theorem CompRel.of_rel_symm (h : r b a) : CompRel r a b := SymmGen.of_rel_symm h -@[deprecated symmGen_swap (since := "2026-01-25")] +@[deprecated symmGen_swap +typeChanged (since := "2026-01-25")] theorem compRel_swap (r : α → α → Prop) : CompRel (swap r) = CompRel r := symmGen_swap r -@[deprecated symmGen_swap_apply (since := "2026-01-25")] +@[deprecated symmGen_swap_apply +typeChanged (since := "2026-01-25")] theorem compRel_swap_apply (r : α → α → Prop) : CompRel (swap r) a b ↔ CompRel r a b := symmGen_swap_apply r -@[simp, refl, deprecated SymmGen.refl (since := "2026-01-25")] +@[simp, refl, deprecated SymmGen.refl +typeChanged (since := "2026-01-25")] theorem CompRel.refl (r : α → α → Prop) [Std.Refl r] (a : α) : CompRel r a a := SymmGen.refl r a -@[deprecated SymmGen.rfl (since := "2026-01-25")] +@[deprecated SymmGen.rfl +typeChanged (since := "2026-01-25")] theorem CompRel.rfl [Std.Refl r] : CompRel r a a := SymmGen.rfl -@[deprecated SymmGen.instRefl (since := "2026-01-25")] +@[deprecated SymmGen.instRefl +typeChanged (since := "2026-01-25")] instance [Std.Refl r] : Std.Refl (CompRel r) := SymmGen.instRefl -@[symm, deprecated SymmGen.symm (since := "2026-01-25")] +@[symm, deprecated SymmGen.symm +typeChanged (since := "2026-01-25")] theorem CompRel.symm : CompRel r a b → CompRel r b a := SymmGen.symm -@[deprecated SymmGen.instSymm (since := "2026-01-25")] +@[deprecated SymmGen.instSymm +typeChanged (since := "2026-01-25")] instance : Std.Symm (CompRel r) := SymmGen.instSymm -@[deprecated symmGen_comm (since := "2026-01-25")] +@[deprecated symmGen_comm +typeChanged (since := "2026-01-25")] theorem compRel_comm {a b : α} : CompRel r a b ↔ CompRel r b a := symmGen_comm -@[deprecated SymmGen.decidableRel (since := "2026-01-25")] +@[deprecated SymmGen.decidableRel +typeChanged (since := "2026-01-25")] instance CompRel.decidableRel [DecidableRel r] : DecidableRel (CompRel r) := SymmGen.decidableRel -@[deprecated AntisymmRel.symmGen (since := "2026-01-25")] +@[deprecated AntisymmRel.symmGen +typeChanged (since := "2026-01-25")] theorem AntisymmRel.compRel (h : AntisymmRel r a b) : CompRel r a b := AntisymmRel.symmGen h -@[simp, deprecated symmGen_of_total (since := "2026-01-25")] +@[simp, deprecated symmGen_of_total +typeChanged (since := "2026-01-25")] theorem compRel_of_total [Std.Total r] (a b : α) : CompRel r a b := symmGen_of_total a b @@ -111,10 +111,10 @@ section LE variable [LE α] -@[deprecated SymmGen.of_le (since := "2026-01-25")] +@[deprecated SymmGen.of_le +typeChanged (since := "2026-01-25")] theorem CompRel.of_le (h : a ≤ b) : CompRel (· ≤ ·) a b := SymmGen.of_le h -@[deprecated SymmGen.of_ge (since := "2026-01-25")] +@[deprecated SymmGen.of_ge +typeChanged (since := "2026-01-25")] theorem CompRel.of_ge (h : b ≤ a) : CompRel (· ≤ ·) a b := SymmGen.of_ge h alias LE.le.compRel := CompRel.of_le @@ -126,47 +126,47 @@ section Preorder variable [Preorder α] -@[deprecated SymmGen.of_lt (since := "2026-01-25")] +@[deprecated SymmGen.of_lt +typeChanged (since := "2026-01-25")] theorem CompRel.of_lt (h : a < b) : CompRel (· ≤ ·) a b := SymmGen.of_lt h -@[deprecated SymmGen.of_gt (since := "2026-01-25")] +@[deprecated SymmGen.of_gt +typeChanged (since := "2026-01-25")] theorem CompRel.of_gt (h : b < a) : CompRel (· ≤ ·) a b := SymmGen.of_gt h alias LT.lt.compRel := CompRel.of_lt alias LT.lt.compRel_symm := CompRel.of_gt -@[trans, deprecated SymmGen.of_symmGen_of_antisymmRel (since := "2026-01-25")] +@[trans, deprecated SymmGen.of_symmGen_of_antisymmRel +typeChanged (since := "2026-01-25")] theorem CompRel.of_compRel_of_antisymmRel (h₁ : CompRel (· ≤ ·) a b) (h₂ : AntisymmRel (· ≤ ·) b c) : CompRel (· ≤ ·) a c := SymmGen.of_symmGen_of_antisymmRel h₁ h₂ alias CompRel.trans_antisymmRel := CompRel.of_compRel_of_antisymmRel -@[deprecated instTransSymmGenLeAntisymmRel (since := "2026-01-25")] +@[deprecated instTransSymmGenLeAntisymmRel +typeChanged (since := "2026-01-25")] instance : @Trans α α α (CompRel (· ≤ ·)) (AntisymmRel (· ≤ ·)) (CompRel (· ≤ ·)) := instTransSymmGenLeAntisymmRel -@[trans, deprecated SymmGen.of_antisymmRel_of_symmGen (since := "2026-01-25")] +@[trans, deprecated SymmGen.of_antisymmRel_of_symmGen +typeChanged (since := "2026-01-25")] theorem CompRel.of_antisymmRel_of_compRel (h₁ : AntisymmRel (· ≤ ·) a b) (h₂ : CompRel (· ≤ ·) b c) : CompRel (· ≤ ·) a c := SymmGen.of_antisymmRel_of_symmGen h₁ h₂ alias AntisymmRel.trans_compRel := CompRel.of_antisymmRel_of_compRel -@[deprecated instTransAntisymmRelLeSymmGen (since := "2026-01-25")] +@[deprecated instTransAntisymmRelLeSymmGen +typeChanged (since := "2026-01-25")] instance : @Trans α α α (AntisymmRel (· ≤ ·)) (CompRel (· ≤ ·)) (CompRel (· ≤ ·)) := instTransAntisymmRelLeSymmGen -@[deprecated AntisymmRel.symmGen_congr (since := "2026-01-25")] +@[deprecated AntisymmRel.symmGen_congr +typeChanged (since := "2026-01-25")] theorem AntisymmRel.compRel_congr (h₁ : AntisymmRel (· ≤ ·) a b) (h₂ : AntisymmRel (· ≤ ·) c d) : CompRel (· ≤ ·) a c ↔ CompRel (· ≤ ·) b d := AntisymmRel.symmGen_congr h₁ h₂ -@[deprecated AntisymmRel.symmGen_congr_left (since := "2026-01-25")] +@[deprecated AntisymmRel.symmGen_congr_left +typeChanged (since := "2026-01-25")] theorem AntisymmRel.compRel_congr_left (h : AntisymmRel (· ≤ ·) a b) : CompRel (· ≤ ·) a c ↔ CompRel (· ≤ ·) b c := AntisymmRel.symmGen_congr_left h -@[deprecated AntisymmRel.symmGen_congr_right (since := "2026-01-25")] +@[deprecated AntisymmRel.symmGen_congr_right +typeChanged (since := "2026-01-25")] theorem AntisymmRel.compRel_congr_right (h : AntisymmRel (· ≤ ·) b c) : CompRel (· ≤ ·) a b ↔ CompRel (· ≤ ·) a c := AntisymmRel.symmGen_congr_right h @@ -184,7 +184,7 @@ def Relation.linearOrderOfSymmGen [PartialOrder α] toDecidableLT := decLT /-- A partial order where any two elements are comparable is a linear order. -/ -@[deprecated linearOrderOfSymmGen (since := "2026-01-25"), instance_reducible] +@[deprecated linearOrderOfSymmGen +typeChanged (since := "2026-01-25"), instance_reducible] def linearOrderOfComprel [PartialOrder α] [decLE : DecidableLE α] [decLT : DecidableLT α] [decEq : DecidableEq α] (h : ∀ a b : α, CompRel (· ≤ ·) a b) : LinearOrder α := @@ -254,14 +254,14 @@ theorem AntisymmRel.not_incompRel (h : AntisymmRel r a b) : ¬ IncompRel r a b : theorem not_symmGen_iff : ¬ Relation.SymmGen r a b ↔ IncompRel r a b := by simp [Relation.SymmGen, IncompRel] -@[deprecated not_symmGen_iff (since := "2026-01-25")] +@[deprecated not_symmGen_iff +typeChanged (since := "2026-01-25")] theorem not_compRel_iff : ¬ CompRel r a b ↔ IncompRel r a b := not_symmGen_iff theorem not_incompRel_iff_symmGen : ¬ IncompRel r a b ↔ Relation.SymmGen r a b := by rw [← not_symmGen_iff, not_not] -@[deprecated not_incompRel_iff_symmGen (since := "2026-01-25")] +@[deprecated not_incompRel_iff_symmGen +typeChanged (since := "2026-01-25")] theorem not_incompRel_iff : ¬ IncompRel r a b ↔ CompRel r a b := not_incompRel_iff_symmGen diff --git a/mathlib4/Mathlib/Order/Defs/Unbundled.lean b/mathlib4/Mathlib/Order/Defs/Unbundled.lean index 6515efb64..90d697023 100644 --- a/mathlib4/Mathlib/Order/Defs/Unbundled.lean +++ b/mathlib4/Mathlib/Order/Defs/Unbundled.lean @@ -459,7 +459,7 @@ theorem trans_trichotomous_right [IsTrans α r] [Std.Trichotomous r] {a b c : α · exact h₁ · exact absurd h₃ h₂ -@[deprecated IsTrans.trans (since := "2026-02-20")] +@[deprecated IsTrans.trans +typeChanged (since := "2026-02-20")] theorem transitive_of_trans (r : α → α → Prop) [IsTrans α r] : Transitive r := IsTrans.trans /-- In a trichotomous irreflexive order, every element is determined by the set of predecessors. -/ diff --git a/mathlib4/Mathlib/Order/Fin/Basic.lean b/mathlib4/Mathlib/Order/Fin/Basic.lean index 84f14489c..753ba11b6 100644 --- a/mathlib4/Mathlib/Order/Fin/Basic.lean +++ b/mathlib4/Mathlib/Order/Fin/Basic.lean @@ -93,7 +93,7 @@ instance instCoheytingAlgebra [NeZero n] : CoheytingAlgebra (Fin n) := inferInst instance [NeZero n] : IsBotZeroClass (Fin n) where isBot_zero := isBot_bot -@[deprecated _root_.bot_eq_zero (since := "2026-05-07")] +@[deprecated _root_.bot_eq_zero +typeChanged (since := "2026-05-07")] protected lemma bot_eq_zero (n : ℕ) [NeZero n] : ⊥ = (0 : Fin n) := _root_.bot_eq_zero lemma top_eq_last (n : ℕ) : ⊤ = Fin.last n := rfl diff --git a/mathlib4/Mathlib/Order/GameAdd.lean b/mathlib4/Mathlib/Order/GameAdd.lean index c6908a332..0edaf5c14 100644 --- a/mathlib4/Mathlib/Order/GameAdd.lean +++ b/mathlib4/Mathlib/Order/GameAdd.lean @@ -126,7 +126,7 @@ theorem GameAdd.recursion_eq {C : α → β → Sort*} (hα : WellFounded rα) ( /-- Induction on the well-founded `Prod.GameAdd` relation. Note that it's strictly more general to induct on the lexicographic order instead. -/ -@[deprecated GameAdd.recursion (since := "2026-03-13")] +@[deprecated GameAdd.recursion +typeChanged (since := "2026-03-13")] theorem GameAdd.induction {C : α → β → Prop} : WellFounded rα → WellFounded rβ → @@ -225,7 +225,7 @@ theorem GameAdd.recursion_eq {C : α → α → Sort*} (hr : WellFounded rα) @[deprecated (since := "2026-03-13")] alias GameAdd.fix_eq := GameAdd.recursion_eq /-- Induction on the well-founded `Sym2.GameAdd` relation. -/ -@[deprecated GameAdd.recursion (since := "2026-03-13")] +@[deprecated GameAdd.recursion +typeChanged (since := "2026-03-13")] theorem GameAdd.induction {C : α → α → Prop} : WellFounded rα → (∀ a₁ b₁, (∀ a₂ b₂, Sym2.GameAdd rα s(a₂, b₂) s(a₁, b₁) → C a₂ b₂) → C a₁ b₁) → diff --git a/mathlib4/Mathlib/Order/Interval/Set/LinearOrder.lean b/mathlib4/Mathlib/Order/Interval/Set/LinearOrder.lean index 48e7fd837..3c3cc8956 100644 --- a/mathlib4/Mathlib/Order/Interval/Set/LinearOrder.lean +++ b/mathlib4/Mathlib/Order/Interval/Set/LinearOrder.lean @@ -166,7 +166,7 @@ theorem Iio_union_Ioi : Iio a ∪ Ioi a = {a}ᶜ := theorem Ioo_union_Ioi (h : c < max a b) : Ioo a b ∪ Ioi c = Ioi (min a c) := by grind -@[deprecated Ioo_union_Ioi (since := "2026-02-22")] +@[deprecated Ioo_union_Ioi +typeChanged (since := "2026-02-22")] theorem Ioo_union_Ioi' (h₁ : c < b) : Ioo a b ∪ Ioi c = Ioi (min a c) := Ioo_union_Ioi (h₁.trans_le (le_max_right ..)) @@ -187,7 +187,7 @@ theorem Ico_union_Ici_eq_Ici (h : a ≤ b) : Ico a b ∪ Ici b = Ici a := theorem Ico_union_Ici (h : c ≤ max a b) : Ico a b ∪ Ici c = Ici (min a c) := by grind -@[deprecated Ico_union_Ici (since := "2026-02-22")] +@[deprecated Ico_union_Ici +typeChanged (since := "2026-02-22")] theorem Ico_union_Ici' (h₁ : c ≤ b) : Ico a b ∪ Ici c = Ici (min a c) := Ico_union_Ici (h₁.trans (le_max_right ..)) @@ -201,7 +201,7 @@ theorem Ioc_union_Ioi_eq_Ioi (h : a ≤ b) : Ioc a b ∪ Ioi b = Ioi a := theorem Ioc_union_Ioi (h : c ≤ max a b) : Ioc a b ∪ Ioi c = Ioi (min a c) := by grind -@[deprecated Ioc_union_Ioi (since := "2026-02-22")] +@[deprecated Ioc_union_Ioi +typeChanged (since := "2026-02-22")] theorem Ioc_union_Ioi' (h₁ : c ≤ b) : Ioc a b ∪ Ioi c = Ioi (min a c) := Ioc_union_Ioi (h₁.trans (le_max_right ..)) @@ -230,7 +230,7 @@ theorem Icc_union_Ici_eq_Ici (h : a ≤ b) : Icc a b ∪ Ici b = Ici a := theorem Icc_union_Ici (h : c ≤ max a b) : Icc a b ∪ Ici c = Ici (min a c) := by grind -@[deprecated Icc_union_Ici (since := "2026-02-22")] +@[deprecated Icc_union_Ici +typeChanged (since := "2026-02-22")] theorem Icc_union_Ici' (h₁ : c ≤ b) : Icc a b ∪ Ici c = Ici (min a c) := Icc_union_Ici (h₁.trans (le_max_right ..)) @@ -255,7 +255,7 @@ theorem Iio_union_Ico_eq_Iio (h : a ≤ b) : Iio a ∪ Ico a b = Iio b := theorem Iio_union_Ico (h : min c d ≤ b) : Iio b ∪ Ico c d = Iio (max b d) := by grind -@[deprecated Iio_union_Ico (since := "2026-02-22")] +@[deprecated Iio_union_Ico +typeChanged (since := "2026-02-22")] theorem Iio_union_Ico' (h₁ : c ≤ b) : Iio b ∪ Ico c d = Iio (max b d) := Iio_union_Ico ((min_le_left ..).trans h₁) @@ -270,7 +270,7 @@ theorem Iic_union_Ioc_eq_Iic (h : a ≤ b) : Iic a ∪ Ioc a b = Iic b := theorem Iic_union_Ioc (h : min c d < b) : Iic b ∪ Ioc c d = Iic (max b d) := by grind -@[deprecated Iic_union_Ioc (since := "2026-02-22")] +@[deprecated Iic_union_Ioc +typeChanged (since := "2026-02-22")] theorem Iic_union_Ioc' (h₁ : c < b) : Iic b ∪ Ioc c d = Iic (max b d) := Iic_union_Ioc ((min_le_left ..).trans_lt h₁) @@ -285,7 +285,7 @@ theorem Iic_union_Ioo_eq_Iio (h : a < b) : Iic a ∪ Ioo a b = Iio b := theorem Iio_union_Ioo (h : min c d < b) : Iio b ∪ Ioo c d = Iio (max b d) := by grind -@[deprecated Iio_union_Ioo (since := "2026-02-22")] +@[deprecated Iio_union_Ioo +typeChanged (since := "2026-02-22")] theorem Iio_union_Ioo' (h₁ : c < b) : Iio b ∪ Ioo c d = Iio (max b d) := Iio_union_Ioo ((min_le_left ..).trans_lt h₁) @@ -300,7 +300,7 @@ theorem Iic_union_Icc_eq_Iic (h : a ≤ b) : Iic a ∪ Icc a b = Iic b := theorem Iic_union_Icc (h : min c d ≤ b) : Iic b ∪ Icc c d = Iic (max b d) := by grind -@[deprecated Iic_union_Icc (since := "2026-02-22")] +@[deprecated Iic_union_Icc +typeChanged (since := "2026-02-22")] theorem Iic_union_Icc' (h₁ : c ≤ b) : Iic b ∪ Icc c d = Iic (max b d) := Iic_union_Icc ((min_le_left ..).trans h₁) diff --git a/mathlib4/Mathlib/Order/Notation.lean b/mathlib4/Mathlib/Order/Notation.lean index f63f62501..e76e9810b 100644 --- a/mathlib4/Mathlib/Order/Notation.lean +++ b/mathlib4/Mathlib/Order/Notation.lean @@ -53,7 +53,7 @@ class HasCompl (α : Type*) where /-- Set / lattice complement -/ compl : α → α -attribute [deprecated Compl.compl (since := "2026-01-04")] HasCompl.compl +attribute [deprecated Compl.compl +typeChanged (since := "2026-01-04")] HasCompl.compl @[inherit_doc] postfix:1024 "ᶜ" => compl diff --git a/mathlib4/Mathlib/Order/Preorder/Chain.lean b/mathlib4/Mathlib/Order/Preorder/Chain.lean index 8d63c5356..ef1cbfb24 100644 --- a/mathlib4/Mathlib/Order/Preorder/Chain.lean +++ b/mathlib4/Mathlib/Order/Preorder/Chain.lean @@ -149,7 +149,7 @@ theorem IsChain.image [FunLike F α β] [RelHomClass F r r'] (hs : IsChain r s) IsChain r' (φ '' s) := hs.image_of_map_rel _ _ _ (fun _ _ h ↦ map_rel φ h) -@[deprecated IsChain.image (since := "2026-02-26")] +@[deprecated IsChain.image +typeChanged (since := "2026-02-26")] theorem IsChain.image_relEmbedding (hs : IsChain r s) (φ : r ↪r r') : IsChain r' (φ '' s) := hs.image _ @@ -157,7 +157,7 @@ theorem IsChain.preimage_relEmbedding {t : Set β} (ht : IsChain r' t) (φ : r IsChain r (φ ⁻¹' t) := ht.preimage _ _ _ φ.injective (fun _ _ h ↦ φ.map_rel_iff.mp h) -@[deprecated IsChain.image (since := "2026-02-26")] +@[deprecated IsChain.image +typeChanged (since := "2026-02-26")] theorem IsChain.image_relIso (hs : IsChain r s) (φ : r ≃r r') : IsChain r' (φ '' s) := hs.image φ.toRelEmbedding @@ -171,7 +171,7 @@ theorem IsChain.image_relEmbedding_iff {φ : r ↪r r'} : IsChain r' (φ '' s) theorem IsChain.image_relIso_iff {φ : r ≃r r'} : IsChain r' (φ '' s) ↔ IsChain r s := @image_relEmbedding_iff _ _ _ _ _ (φ : r ↪r r') -@[deprecated IsChain.image (since := "2026-02-26")] +@[deprecated IsChain.image +typeChanged (since := "2026-02-26")] theorem IsChain.image_embedding [LE α] [LE β] (hs : IsChain (· ≤ ·) s) (φ : α ↪o β) : IsChain (· ≤ ·) (φ '' s) := image hs _ @@ -184,7 +184,7 @@ theorem IsChain.image_embedding_iff [LE α] [LE β] {φ : α ↪o β} : IsChain (· ≤ ·) (φ '' s) ↔ IsChain (· ≤ ·) s := image_relEmbedding_iff -@[deprecated IsChain.image (since := "2026-02-26")] +@[deprecated IsChain.image +typeChanged (since := "2026-02-26")] theorem IsChain.image_iso [LE α] [LE β] (hs : IsChain (· ≤ ·) s) (φ : α ≃o β) : IsChain (· ≤ ·) (φ '' s) := image hs _ diff --git a/mathlib4/Mathlib/Order/RelClasses.lean b/mathlib4/Mathlib/Order/RelClasses.lean index ffdfdd4ad..aa507780f 100644 --- a/mathlib4/Mathlib/Order/RelClasses.lean +++ b/mathlib4/Mathlib/Order/RelClasses.lean @@ -27,49 +27,49 @@ variable {α : Type u} {β : Type v} {r : α → α → Prop} {s : β → β → open Function -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Refl.swap (r : α → α → Prop) [Std.Refl r] : Std.Refl (swap r) := inferInstance @[deprecated (since := "2026-01-09")] alias IsRefl.swap := Std.Refl.swap -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Irrefl.swap (r : α → α → Prop) [Std.Irrefl r] : Std.Irrefl (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem IsTrans.swap (r) [IsTrans α r] : IsTrans α (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Antisymm.swap (r : α → α → Prop) [Std.Antisymm r] : Std.Antisymm (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Asymm.swap (r : α → α → Prop) [Std.Asymm r] : Std.Asymm (swap r) := inferInstance @[deprecated (since := "2026-01-05")] alias IsAsymm.swap := Std.Asymm.swap -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Total.swap (r : α → α → Prop) [Std.Total r] : Std.Total (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem Std.Trichotomous.swap (r : α → α → Prop) [Std.Trichotomous r] : Std.Trichotomous (swap r) := inferInstance @[deprecated (since := "2026-01-24")] alias IsTrichotomous.swap := Std.Trichotomous.swap -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem IsPreorder.swap (r) [IsPreorder α r] : IsPreorder α (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem IsStrictOrder.swap (r) [IsStrictOrder α r] : IsStrictOrder α (swap r) := inferInstance -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem IsPartialOrder.swap (r) [IsPartialOrder α r] : IsPartialOrder α (swap r) := inferInstance @@ -114,7 +114,7 @@ abbrev linearOrderOfSTO (r) [IsStrictTotalOrder α r] [DecidableRel r] : LinearO toMax := maxOfLe, toDecidableLE := hD } -@[deprecated inferInstance (since := "2026-04-28")] +@[deprecated inferInstance +typeChanged (since := "2026-04-28")] theorem IsStrictTotalOrder.swap (r) [IsStrictTotalOrder α r] : IsStrictTotalOrder α (swap r) := inferInstance @@ -477,13 +477,13 @@ attribute [to_set_notation] @[deprecated (since := "2026-01-24")] alias Eq.subset' := Eq.subset -@[deprecated LE.le.trans (since := "2026-05-24")] +@[deprecated LE.le.trans +typeChanged (since := "2026-05-24")] alias HasSubset.Subset.trans := subset_trans -@[deprecated LE.le.antisymm (since := "2026-05-24")] +@[deprecated LE.le.antisymm +typeChanged (since := "2026-05-24")] alias HasSubset.Subset.antisymm := subset_antisymm -@[deprecated LE.le.antisymm' (since := "2026-05-24")] +@[deprecated LE.le.antisymm' +typeChanged (since := "2026-05-24")] alias HasSubset.Subset.antisymm' := superset_antisymm end Subset diff --git a/mathlib4/Mathlib/Order/SuccPred/CompleteLinearOrder.lean b/mathlib4/Mathlib/Order/SuccPred/CompleteLinearOrder.lean index a795a20ac..b9d6f9d71 100644 --- a/mathlib4/Mathlib/Order/SuccPred/CompleteLinearOrder.lean +++ b/mathlib4/Mathlib/Order/SuccPred/CompleteLinearOrder.lean @@ -39,12 +39,12 @@ lemma exists_eq_ciSup_of_not_isSuccLimit (hbdd : BddAbove (range f)) (hf : ¬ IsSuccLimit (⨆ i, f i)) : ∃ i, f i = ⨆ i, f i := csSup_mem_of_not_isSuccLimit (range_nonempty f) hbdd hf -@[deprecated csInf_mem_of_not_isPredLimit (since := "2026-04-24")] +@[deprecated csInf_mem_of_not_isPredLimit +typeChanged (since := "2026-04-24")] lemma csInf_mem_of_not_isPredPrelimit (hne : s.Nonempty) (hbdd : BddBelow s) (hlim : ¬ IsPredPrelimit (sInf s)) : sInf s ∈ s := csInf_mem_of_not_isPredLimit hne hbdd <| mt IsPredLimit.isPredPrelimit hlim -@[deprecated exists_eq_ciInf_of_not_isPredLimit (since := "2026-04-24")] +@[deprecated exists_eq_ciInf_of_not_isPredLimit +typeChanged (since := "2026-04-24")] lemma exists_eq_ciInf_of_not_isPredPrelimit (hf : BddBelow (range f)) (hf' : ¬ IsPredPrelimit (⨅ i, f i)) : ∃ i, f i = ⨅ i, f i := exists_eq_ciInf_of_not_isPredLimit hf <| mt IsPredLimit.isPredPrelimit hf' @@ -59,29 +59,30 @@ lemma IsLUB.exists_of_nonempty_of_not_isSuccLimit (hf : IsLUB (range f) x) (hx : ∃ i, f i = x := hf.mem_of_nonempty_of_not_isSuccLimit (range_nonempty f) hx -@[deprecated mem_of_nonempty_of_not_isSuccLimit (since := "2026-04-24")] +@[deprecated mem_of_nonempty_of_not_isSuccLimit +typeChanged (since := "2026-04-24")] lemma IsLUB.mem_of_nonempty_of_not_isSuccPrelimit (hs : IsLUB s x) (hne : s.Nonempty) (hx : ¬ IsSuccPrelimit x) : x ∈ s := hs.mem_of_nonempty_of_not_isSuccLimit hne <| mt IsSuccLimit.isSuccPrelimit hx -@[deprecated mem_of_nonempty_of_not_isPredLimit (since := "2026-04-24")] +@[deprecated mem_of_nonempty_of_not_isPredLimit +typeChanged (since := "2026-04-24")] lemma IsGLB.mem_of_nonempty_of_not_isPredPrelimit (hs : IsGLB s x) (hne : s.Nonempty) (hx : ¬ IsPredPrelimit x) : x ∈ s := hs.mem_of_nonempty_of_not_isPredLimit hne <| mt IsPredLimit.isPredPrelimit hx -@[deprecated exists_of_nonempty_of_not_isSuccLimit (since := "2026-04-24")] +@[deprecated exists_of_nonempty_of_not_isSuccLimit +typeChanged (since := "2026-04-24")] lemma IsLUB.exists_of_nonempty_of_not_isSuccPrelimit (hf : IsLUB (range f) x) (hx : ¬ IsSuccPrelimit x) : ∃ i, f i = x := hf.exists_of_nonempty_of_not_isSuccLimit <| mt IsSuccLimit.isSuccPrelimit hx -@[deprecated exists_of_nonempty_of_not_isPredLimit (since := "2026-04-24")] +@[deprecated exists_of_nonempty_of_not_isPredLimit +typeChanged (since := "2026-04-24")] lemma IsGLB.exists_of_nonempty_of_not_isPredPrelimit (hf : IsGLB (range f) x) (hx : ¬ IsPredPrelimit x) : ∃ i, f i = x := hf.exists_of_nonempty_of_not_isPredLimit <| mt IsPredLimit.isPredPrelimit hx /-- Every conditionally complete linear order with well-founded `<` is a successor order, by setting the successor of an element to be the infimum of all larger elements. -/ -@[instance_reducible, deprecated SuccOrder.ofLinearWellFoundedLT (since := "2026-04-12")] +@[instance_reducible, deprecated SuccOrder.ofLinearWellFoundedLT + +typeChanged (since := "2026-04-12")] noncomputable def ConditionallyCompleteLinearOrder.toSuccOrder [WellFoundedLT α] : SuccOrder α := .ofLinearWellFoundedLT _ diff --git a/mathlib4/Mathlib/Order/SuccPred/Limit.lean b/mathlib4/Mathlib/Order/SuccPred/Limit.lean index 356865adf..5b2e762d2 100644 --- a/mathlib4/Mathlib/Order/SuccPred/Limit.lean +++ b/mathlib4/Mathlib/Order/SuccPred/Limit.lean @@ -119,17 +119,17 @@ theorem isSuccLimit_toDual_iff : IsSuccLimit (toDual a) ↔ IsPredLimit a := by theorem not_isSuccLimit_iff : ¬ IsSuccLimit a ↔ IsMin a ∨ ¬ IsSuccPrelimit a := by rw [isSuccLimit_iff, not_and_or, not_not] -@[deprecated IsPredLimit.isPredPrelimit (since := "2026-02-22")] +@[deprecated IsPredLimit.isPredPrelimit +typeChanged (since := "2026-02-22")] theorem not_isPredLimit_of_not_isPredPrelimit : ¬ IsPredPrelimit a → ¬ IsPredLimit a := mt IsPredLimit.isPredPrelimit set_option linter.existingAttributeWarning false in -@[to_dual, deprecated IsSuccLimit.mk (since := "2026-04-19")] +@[to_dual, deprecated IsSuccLimit.mk +typeChanged (since := "2026-04-19")] theorem IsSuccPrelimit.isSuccLimit_of_not_isMin (h : IsSuccPrelimit a) (ha : ¬ IsMin a) : IsSuccLimit a := ⟨ha, h⟩ -attribute [deprecated IsPredLimit.mk (since := "2026-04-19")] +attribute [deprecated IsPredLimit.mk +typeChanged (since := "2026-04-19")] IsPredPrelimit.isPredLimit_of_not_isMax @[to_dual] @@ -267,19 +267,19 @@ protected theorem IsSuccLimit.isMax (h : IsSuccLimit (succ a)) : IsMax a := h.isSuccPrelimit.isMax set_option linter.existingAttributeWarning false in -@[to_dual, deprecated IsSuccPrelimit.isMax (since := "2026-03-31")] +@[to_dual, deprecated IsSuccPrelimit.isMax +typeChanged (since := "2026-03-31")] theorem not_isSuccPrelimit_succ_of_not_isMax (ha : ¬ IsMax a) : ¬ IsSuccPrelimit (succ a) := mt IsSuccPrelimit.isMax ha -attribute [deprecated IsPredPrelimit.isMin (since := "2026-03-31")] +attribute [deprecated IsPredPrelimit.isMin +typeChanged (since := "2026-03-31")] not_isPredPrelimit_pred_of_not_isMin set_option linter.existingAttributeWarning false in -@[to_dual, deprecated IsSuccLimit.isMax (since := "2026-03-31")] +@[to_dual, deprecated IsSuccLimit.isMax +typeChanged (since := "2026-03-31")] theorem not_isSuccLimit_succ_of_not_isMax (ha : ¬ IsMax a) : ¬ IsSuccLimit (succ a) := mt IsSuccLimit.isMax ha -attribute [deprecated IsPredLimit.isMin (since := "2026-03-31")] +attribute [deprecated IsPredLimit.isMin +typeChanged (since := "2026-03-31")] not_isPredLimit_pred_of_not_isMin section NoMaxOrder diff --git a/mathlib4/Mathlib/Order/SuccPred/LinearLocallyFinite.lean b/mathlib4/Mathlib/Order/SuccPred/LinearLocallyFinite.lean index df42132d2..7cfd005de 100644 --- a/mathlib4/Mathlib/Order/SuccPred/LinearLocallyFinite.lean +++ b/mathlib4/Mathlib/Order/SuccPred/LinearLocallyFinite.lean @@ -313,7 +313,7 @@ theorem toZ_le_toZ {i j : ι} : toZ i0 i ≤ toZ i0 j ↔ i ≤ j := @[deprecated (since := "2026-05-07")] alias toZ_le_iff := toZ_le_toZ -@[deprecated toZ_le_toZ (since := "2026-05-06")] +@[deprecated toZ_le_toZ +typeChanged (since := "2026-05-06")] alias ⟨le_of_toZ_le, toZ_mono⟩ := toZ_le_toZ @[simp] diff --git a/mathlib4/Mathlib/Probability/Distributions/Geometric.lean b/mathlib4/Mathlib/Probability/Distributions/Geometric.lean index 6ec8a42d7..7b269ec92 100644 --- a/mathlib4/Mathlib/Probability/Distributions/Geometric.lean +++ b/mathlib4/Mathlib/Probability/Distributions/Geometric.lean @@ -147,11 +147,11 @@ section GeometricPMF variable {p : ℝ} /-- The pmf of the geometric distribution depending on its success probability. -/ -@[deprecated geometricMeasure (since := "2026-03-08")] +@[deprecated geometricMeasure +typeChanged (since := "2026-03-08")] noncomputable def geometricPMFReal (p : ℝ) (n : ℕ) : ℝ := (1 - p) ^ n * p -@[deprecated hasSum_one_geometricMeasure (since := "2026-03-08")] +@[deprecated hasSum_one_geometricMeasure +typeChanged (since := "2026-03-08")] lemma geometricPMFRealSum (hp_pos : 0 < p) (hp_le_one : p ≤ 1) : HasSum (fun n ↦ geometricPMFReal p n) 1 := by unfold geometricPMFReal @@ -161,20 +161,20 @@ lemma geometricPMFRealSum (hp_pos : 0 < p) (hp_le_one : p ≤ 1) : rw [inv_mul_eq_div, div_self hp_pos.ne'] at this exact this -@[deprecated geometricMeasure_real_singleton_pos (since := "2026-03-08")] +@[deprecated geometricMeasure_real_singleton_pos +typeChanged (since := "2026-03-08")] lemma geometricPMFReal_pos {n : ℕ} (hp_pos : 0 < p) (hp_lt_one : p < 1) : 0 < geometricPMFReal p n := by rw [geometricPMFReal] positivity [sub_pos.mpr hp_lt_one] -@[deprecated measureReal_nonneg (since := "2026-03-08")] +@[deprecated measureReal_nonneg +typeChanged (since := "2026-03-08")] lemma geometricPMFReal_nonneg {n : ℕ} (hp_pos : 0 < p) (hp_le_one : p ≤ 1) : 0 ≤ geometricPMFReal p n := by rw [geometricPMFReal] positivity [sub_nonneg.mpr hp_le_one] /-- Geometric distribution with success probability `p`. -/ -@[deprecated geometricMeasure (since := "2026-03-08")] +@[deprecated geometricMeasure +typeChanged (since := "2026-03-08")] noncomputable def geometricPMF (hp_pos : 0 < p) (hp_le_one : p ≤ 1) : PMF ℕ := ⟨fun n ↦ ENNReal.ofReal (geometricPMFReal p n), by @@ -183,11 +183,11 @@ def geometricPMF (hp_pos : 0 < p) (hp_le_one : p ≤ 1) : PMF ℕ := exact (geometricPMFRealSum hp_pos hp_le_one).toNNReal (fun n ↦ geometricPMFReal_nonneg hp_pos hp_le_one)⟩ -@[deprecated Measurable.of_discrete (since := "2026-03-08")] +@[deprecated Measurable.of_discrete +typeChanged (since := "2026-03-08")] lemma measurable_geometricPMFReal : Measurable (geometricPMFReal p) := by fun_prop -@[deprecated StronglyMeasurable.of_discrete (since := "2026-03-08")] +@[deprecated StronglyMeasurable.of_discrete +typeChanged (since := "2026-03-08")] lemma stronglyMeasurable_geometricPMFReal : StronglyMeasurable (geometricPMFReal p) := stronglyMeasurable_iff_measurable.mpr measurable_geometricPMFReal diff --git a/mathlib4/Mathlib/Probability/Distributions/Poisson/Basic.lean b/mathlib4/Mathlib/Probability/Distributions/Poisson/Basic.lean index 9b9207009..99eaa50f2 100644 --- a/mathlib4/Mathlib/Probability/Distributions/Poisson/Basic.lean +++ b/mathlib4/Mathlib/Probability/Distributions/Poisson/Basic.lean @@ -209,25 +209,25 @@ end Convolution section PoissonPMF /-- The pmf of the Poisson distribution depending on its rate, as a function to ℝ -/ -@[deprecated poissonMeasure (since := "2026-03-08")] +@[deprecated poissonMeasure +typeChanged (since := "2026-03-08")] noncomputable def poissonPMFReal (r : ℝ≥0) (n : ℕ) : ℝ := exp (-r) * r ^ n / (n)! @[deprecated (since := "2026-03-08")] alias poissonPMFRealSum := hasSum_one_poissonMeasure -@[deprecated poissonMeasure_real_singleton_pos (since := "2026-03-08")] +@[deprecated poissonMeasure_real_singleton_pos +typeChanged (since := "2026-03-08")] lemma poissonPMFReal_pos {r : ℝ≥0} {n : ℕ} (hr : 0 < r) : 0 < poissonPMFReal r n := by rw [poissonPMFReal] positivity -@[deprecated measureReal_nonneg (since := "2026-03-08")] +@[deprecated measureReal_nonneg +typeChanged (since := "2026-03-08")] lemma poissonPMFReal_nonneg {r : ℝ≥0} {n : ℕ} : 0 ≤ poissonPMFReal r n := by unfold poissonPMFReal positivity /-- The pmf of the Poisson distribution depending on its rate, as a PMF. -/ -@[deprecated poissonMeasure (since := "2026-03-08")] +@[deprecated poissonMeasure +typeChanged (since := "2026-03-08")] noncomputable def poissonPMF (r : ℝ≥0) : PMF ℕ := by refine ⟨fun n ↦ ENNReal.ofReal (poissonPMFReal r n), ?_⟩ @@ -235,15 +235,15 @@ def poissonPMF (r : ℝ≥0) : PMF ℕ := by rw [← toNNReal_one] exact (poissonPMFRealSum r).toNNReal (fun n ↦ poissonPMFReal_nonneg) -@[deprecated poissonMeasure (since := "2026-03-08")] +@[deprecated poissonMeasure +typeChanged (since := "2026-03-08")] lemma poissonPMFReal_ofReal_eq_poissonPMF (r : ℝ≥0) (n : ℕ) : ENNReal.ofReal (poissonPMFReal r n) = poissonPMF r n := by simpa only [poissonPMF] using by rfl -@[deprecated Measurable.of_discrete (since := "2026-03-08")] +@[deprecated Measurable.of_discrete +typeChanged (since := "2026-03-08")] lemma measurable_poissonPMFReal (r : ℝ≥0) : Measurable (poissonPMFReal r) := by fun_prop -@[deprecated StronglyMeasurable.of_discrete (since := "2026-03-08")] +@[deprecated StronglyMeasurable.of_discrete +typeChanged (since := "2026-03-08")] lemma stronglyMeasurable_poissonPMFReal (r : ℝ≥0) : StronglyMeasurable (poissonPMFReal r) := stronglyMeasurable_iff_measurable.mpr (measurable_poissonPMFReal r) diff --git a/mathlib4/Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean b/mathlib4/Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean index 88f7e8da7..1e9424b4c 100644 --- a/mathlib4/Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean +++ b/mathlib4/Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean @@ -90,7 +90,7 @@ theorem tendsto_choose_mul_pow_of_tendsto_mul_atTop (hr : Tendsto (fun n => n * Another version of Poisson Limit Theorem: convergence of `PMF.binomial` to `poissonPMF` in `ℝ≥0∞` under the natural hypotheses (`∀ n, p n ≤ 1` and `r ≥ 0`). -/ -@[deprecated tendsto_choose_mul_pow_of_tendsto_mul_atTop (since := "2026-03-08")] +@[deprecated tendsto_choose_mul_pow_of_tendsto_mul_atTop +typeChanged (since := "2026-03-08")] lemma binomial_tendsto_poissonPMFReal_atTop {r : ℝ≥0} {p : ℕ → unitInterval} (hr : Tendsto (fun n => n * (p n : ℝ)) atTop (𝓝 r)) : Tendsto (fun n ↦ Bin(n, p n) {k}) atTop (𝓝 (poissonMeasure r {k})) := by diff --git a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Binomial.lean b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Binomial.lean index f5eb6e98e..2a11e875d 100644 --- a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Binomial.lean +++ b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Binomial.lean @@ -27,7 +27,7 @@ namespace PMF open ENNReal NNReal /-- The binomial `PMF`: the probability of observing exactly `i` “heads” in a sequence of `n` independent coin tosses, each having probability `p` of coming up “heads”. -/ -@[deprecated ProbabilityTheory.binomial (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial +typeChanged (since := "2026-04-07")] def binomial (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) : PMF (Fin (n + 1)) := .ofFintype (fun i => ↑(p ^ (i : ℕ) * (1 - p) ^ ((Fin.last n - i) : ℕ) * (n.choose i : ℕ))) (by @@ -40,32 +40,33 @@ def binomial (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) : PMF (Fin (n + 1)) := rw [dite_eq_left hi] · rw [add_tsub_cancel_of_le (mod_cast h), one_pow]) -@[deprecated ProbabilityTheory.binomial_real_singleton (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial_real_singleton +typeChanged (since := "2026-04-07")] theorem binomial_apply (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) (i : Fin (n + 1)) : binomial p h n i = p ^ (i : ℕ) * (1 - p) ^ ((Fin.last n - i) : ℕ) * (n.choose i : ℕ) := by simp [binomial] -@[deprecated ProbabilityTheory.binomial_real_zero (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial_real_zero +typeChanged (since := "2026-04-07")] theorem binomial_apply_zero (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) : binomial p h n 0 = (1 - p) ^ n := by simp [binomial_apply] -@[deprecated ProbabilityTheory.binomial_real_self (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial_real_self +typeChanged (since := "2026-04-07")] theorem binomial_apply_last (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) : binomial p h n (.last n) = p ^ n := by simp [binomial_apply] -@[deprecated ProbabilityTheory.binomial_real_self (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial_real_self +typeChanged (since := "2026-04-07")] theorem binomial_apply_self (p : ℝ≥0) (h : p ≤ 1) (n : ℕ) : binomial p h n (.last n) = p ^ n := by simp [binomial_apply_last] /-- The binomial distribution on one coin is the Bernoulli distribution. -/ -@[deprecated ProbabilityTheory.binomial_one_eq_bernoulliMeasure (since := "2026-05-31")] +@[deprecated ProbabilityTheory.binomial_one_eq_bernoulliMeasure + +typeChanged (since := "2026-05-31")] theorem binomial_one_eq_bernoulli (p : ℝ≥0) (h : p ≤ 1) : binomial p h 1 = (bernoulli p h).map (cond · 1 0) := by ext i; fin_cases i <;> simp [binomial_apply, bernoulli_apply] -@[deprecated ProbabilityTheory.binomial_singleton (since := "2026-04-07")] +@[deprecated ProbabilityTheory.binomial_singleton +typeChanged (since := "2026-04-07")] theorem binomial_apply_of_le {k b : ℕ} (hb : k ≤ b) {x : ℝ≥0} (h : x ≤ 1) : ENNReal.ofReal ((b.choose k) * x ^ k * (1 - x) ^ (b - k)) = PMF.binomial x h b (Fin.ofNat (b + 1) k) := by diff --git a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Constructions.lean b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Constructions.lean index f84582dd2..0ac33213b 100644 --- a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Constructions.lean +++ b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Constructions.lean @@ -295,18 +295,19 @@ end Filter section bernoulli /-- A `PMF` which assigns probability `p` to `true` and `1 - p` to `false`. -/ -@[deprecated ProbabilityTheory.bernoulliMeasure (since := "2026-04-07")] +@[deprecated ProbabilityTheory.bernoulliMeasure +typeChanged (since := "2026-04-07")] def bernoulli (p : ℝ≥0) (h : p ≤ 1) : PMF Bool := ofFintype (fun b => cond b p (1 - p)) (by simp [h]) variable {p : ℝ≥0} (h : p ≤ 1) (b : Bool) -@[deprecated ProbabilityTheory.bernoulliMeasure_apply (since := "2026-04-07")] +@[deprecated ProbabilityTheory.bernoulliMeasure_apply +typeChanged (since := "2026-04-07")] theorem bernoulli_apply : bernoulli p h b = cond b p (1 - p) := by simp only [bernoulli, ofFintype_apply] exact Eq.symm (Bool.apply_cond ofNNReal) -@[deprecated ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem (since := "2026-05-29")] +@[deprecated ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem + +typeChanged (since := "2026-05-29")] theorem support_bernoulli : (bernoulli p h).support = { b | cond b (p ≠ 0) (p ≠ 1) } := by refine Set.ext fun b => ?_ induction b @@ -322,7 +323,8 @@ theorem support_bernoulli : (bernoulli p h).support = { b | cond b (p ≠ 0) (p · simp only [mem_support_iff, bernoulli_apply, Bool.cond_true, Set.mem_ofPred_eq, ne_eq, ENNReal.coe_eq_zero] -@[deprecated ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem (since := "2026-05-29")] +@[deprecated ProbabilityTheory.bernoulliMeasure_apply_of_notMem_of_notMem + +typeChanged (since := "2026-05-29")] theorem mem_support_bernoulli_iff : b ∈ (bernoulli p h).support ↔ cond b (p ≠ 0) (p ≠ 1) := by simp [support_bernoulli] diff --git a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Integrals.lean b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Integrals.lean index 9dc1fcbab..fa0d1a689 100644 --- a/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Integrals.lean +++ b/mathlib4/Mathlib/Probability/ProbabilityMassFunction/Integrals.lean @@ -54,7 +54,7 @@ theorem integral_eq_sum [Fintype α] (p : PMF α) (f : α → E) : end General -@[deprecated ProbabilityTheory.integral_bernoulliMeasure (since := "2026-04-07")] +@[deprecated ProbabilityTheory.integral_bernoulliMeasure +typeChanged (since := "2026-04-07")] theorem bernoulli_expectation {p : ℝ≥0} (h : p ≤ 1) : ∫ b, cond b 1 0 ∂((bernoulli p h).toMeasure) = p.toReal := by simp [integral_eq_sum, bernoulli_apply] diff --git a/mathlib4/Mathlib/Probability/Process/Predictable.lean b/mathlib4/Mathlib/Probability/Process/Predictable.lean index a65eba9fe..f3d8fca85 100644 --- a/mathlib4/Mathlib/Probability/Process/Predictable.lean +++ b/mathlib4/Mathlib/Probability/Process/Predictable.lean @@ -259,7 +259,7 @@ end Discrete end IsStronglyPredictable -@[deprecated IsStronglyPredictable.stronglyAdapted (since := "2026-01-05")] +@[deprecated IsStronglyPredictable.stronglyAdapted +typeChanged (since := "2026-01-05")] theorem Predictable.stronglyAdapted {β : Type*} [TopologicalSpace β] {f : Filtration ℕ m} {u : ℕ → Ω → β} (hu : StronglyAdapted f fun n => u (n + 1)) (hu0 : StronglyMeasurable[f 0] (u 0)) : diff --git a/mathlib4/Mathlib/RingTheory/DedekindDomain/AdicValuation.lean b/mathlib4/Mathlib/RingTheory/DedekindDomain/AdicValuation.lean index 49f01d270..27cb6968e 100644 --- a/mathlib4/Mathlib/RingTheory/DedekindDomain/AdicValuation.lean +++ b/mathlib4/Mathlib/RingTheory/DedekindDomain/AdicValuation.lean @@ -588,7 +588,7 @@ def adicValued : Valued K ℤᵐ⁰ := theorem adicValued_apply {x : K} : v.adicValued.v x = v.valuation K x := rfl -@[deprecated adicValued_apply (since := "2026-01-28")] +@[deprecated adicValued_apply +typeChanged (since := "2026-01-28")] theorem adicValued_apply' (x : WithVal (v.valuation K)) : v.adicValued.v (WithVal.equiv _ x) = v.valuation K (WithVal.equiv _ x) := rfl diff --git a/mathlib4/Mathlib/RingTheory/DividedPowerAlgebra/Init.lean b/mathlib4/Mathlib/RingTheory/DividedPowerAlgebra/Init.lean index 388a23a45..7f1650bf5 100644 --- a/mathlib4/Mathlib/RingTheory/DividedPowerAlgebra/Init.lean +++ b/mathlib4/Mathlib/RingTheory/DividedPowerAlgebra/Init.lean @@ -113,12 +113,12 @@ lemma coe_C (a : R) : ↑(C (σ := ℕ × M) a) = algebraMap R (DividedPowerAlgebra R M) a := by rw [← MvPolynomial.algebraMap_eq, RingCon.coe_algebraMap] -@[deprecated coe_C (since := "2026-06-19")] +@[deprecated coe_C +typeChanged (since := "2026-06-19")] lemma mkAlgHom_C (a : R) : RingCon.mkₐ R (ringCon R M) (C a) = algebraMap R (DividedPowerAlgebra R M) a := by rw [← MvPolynomial.algebraMap_eq, AlgHom.commutes] -@[deprecated coe_C (since := "2026-06-19")] +@[deprecated coe_C +typeChanged (since := "2026-06-19")] lemma mkRingHom_C (a : R) : RingCon.mk' (ringCon R M) (C a) = algebraMap R (DividedPowerAlgebra R M) a := mkAlgHom_C _ diff --git a/mathlib4/Mathlib/RingTheory/HahnSeries/Basic.lean b/mathlib4/Mathlib/RingTheory/HahnSeries/Basic.lean index 7d38dfc7b..f97addd06 100644 --- a/mathlib4/Mathlib/RingTheory/HahnSeries/Basic.lean +++ b/mathlib4/Mathlib/RingTheory/HahnSeries/Basic.lean @@ -529,7 +529,7 @@ theorem forallLTEqZero_supp_BddBelow (f : Γ → R) (n : Γ) (hn : ∀ (m : Γ), contrapose simp_all -@[deprecated bddBelow_empty (since := "2026-01-02")] +@[deprecated bddBelow_empty +typeChanged (since := "2026-01-02")] theorem BddBelow_zero [Nonempty Γ] : BddBelow (Function.support (0 : Γ → R)) := by simp @@ -562,7 +562,7 @@ theorem order_lt_iff_exists [Zero Γ] {x : R⟦Γ⟧} {i : Γ} (h : x ≠ 0) : variable [LocallyFiniteOrder Γ] -@[deprecated BddBelow.isWF (since := "2026-01-02")] +@[deprecated BddBelow.isWF +typeChanged (since := "2026-01-02")] theorem suppBddBelow_supp_PWO (f : Γ → R) (hf : BddBelow (Function.support f)) : (Function.support f).IsPWO := hf.isWF.isPWO @@ -587,7 +587,7 @@ theorem ofSuppBddBelow_eq_zero {f : Γ → R} {hf} : ofSuppBddBelow f hf = 0 ↔ theorem coeff_ofSuppBddBelow {f : Γ → R} {hf} : (ofSuppBddBelow f hf).coeff = f := rfl -@[deprecated le_order_iff_forall (since := "2026-01-02")] +@[deprecated le_order_iff_forall +typeChanged (since := "2026-01-02")] theorem order_ofForallLtEqZero [Zero Γ] (f : Γ → R) (hf : f ≠ 0) (n : Γ) (hn : ∀ (m : Γ), m < n → f m = 0) : n ≤ order (ofSuppBddBelow f (forallLTEqZero_supp_BddBelow f n hn)) := by diff --git a/mathlib4/Mathlib/RingTheory/Ideal/Colon.lean b/mathlib4/Mathlib/RingTheory/Ideal/Colon.lean index 0314583b7..d936b2ecc 100644 --- a/mathlib4/Mathlib/RingTheory/Ideal/Colon.lean +++ b/mathlib4/Mathlib/RingTheory/Ideal/Colon.lean @@ -127,7 +127,7 @@ section CommSemiring variable [CommSemiring R] [AddCommMonoid M] [Module R M] variable {N N' : Submodule R M} {S : Set M} -@[deprecated mem_colon (since := "2026-01-15")] +@[deprecated mem_colon +typeChanged (since := "2026-01-15")] theorem mem_colon' {r} : r ∈ N.colon S ↔ S ≤ comap (r • (LinearMap.id : M →ₗ[R] M)) N := mem_colon diff --git a/mathlib4/Mathlib/RingTheory/Ideal/Operations.lean b/mathlib4/Mathlib/RingTheory/Ideal/Operations.lean index 73c3e47ae..e430e8b14 100644 --- a/mathlib4/Mathlib/RingTheory/Ideal/Operations.lean +++ b/mathlib4/Mathlib/RingTheory/Ideal/Operations.lean @@ -777,7 +777,7 @@ theorem isCoprime_biInf {J : ι → Ideal R} {s : Finset ι} theorem mul_eq_inf_of_isCoprime (coprime : IsCoprime I J) : I * J = I ⊓ J := (Ideal.mul_eq_inf_of_coprime coprime.sup_eq) -@[deprecated mul_eq_inf_of_isCoprime (since := "2026-03-10")] +@[deprecated mul_eq_inf_of_isCoprime +typeChanged (since := "2026-03-10")] theorem inf_eq_mul_of_isCoprime (coprime : IsCoprime I J) : I ⊓ J = I * J := (Ideal.mul_eq_inf_of_coprime coprime.sup_eq).symm diff --git a/mathlib4/Mathlib/RingTheory/KrullDimension/Regular.lean b/mathlib4/Mathlib/RingTheory/KrullDimension/Regular.lean index 742831839..b708fa7e7 100644 --- a/mathlib4/Mathlib/RingTheory/KrullDimension/Regular.lean +++ b/mathlib4/Mathlib/RingTheory/KrullDimension/Regular.lean @@ -148,14 +148,15 @@ lemma _root_.ringKrullDim_le_ringKrullDim_quotSMulTop_succ {x : R} (hx : x ∈ m rw [← Module.supportDim_self_eq_ringKrullDim, ← Module.supportDim_quotient_eq_ringKrullDim] exact supportDim_le_supportDim_quotSMulTop_succ hx -@[deprecated ringKrullDim_le_ringKrullDim_quotient_add_card (since := "2026-01-12")] +@[deprecated ringKrullDim_le_ringKrullDim_quotient_add_card +typeChanged (since := "2026-01-12")] lemma _root_.ringKrullDim_le_ringKrullDim_add_card {S : Finset R} (hS : (S : Set R) ⊆ maximalIdeal R) : ringKrullDim R ≤ ringKrullDim (R ⧸ Ideal.span (SetLike.coe S)) + S.card := by apply ringKrullDim_le_ringKrullDim_quotient_add_card rwa [IsLocalRing.ringJacobson_eq_maximalIdeal] -@[deprecated ringKrullDim_le_ringKrullDim_quotient_add_spanFinrank (since := "2026-01-12")] +@[deprecated ringKrullDim_le_ringKrullDim_quotient_add_spanFinrank + +typeChanged (since := "2026-01-12")] lemma _root_.ringKrullDim_le_ringKrullDim_add_spanFinrank {I : Ideal R} (h : I ≠ ⊤) : ringKrullDim R ≤ ringKrullDim (R ⧸ I) + I.spanFinrank := by apply ringKrullDim_le_ringKrullDim_quotient_add_spanFinrank diff --git a/mathlib4/Mathlib/RingTheory/Localization/Integral.lean b/mathlib4/Mathlib/RingTheory/Localization/Integral.lean index c50b82868..4f026648d 100644 --- a/mathlib4/Mathlib/RingTheory/Localization/Integral.lean +++ b/mathlib4/Mathlib/RingTheory/Localization/Integral.lean @@ -61,24 +61,24 @@ theorem integerNormalization_support (p : S[X]) : /-- `coeffIntegerNormalization p` gives the coefficients of the polynomial `integerNormalization p` -/ -@[deprecated integerNormalization (since := "2026-02-05")] +@[deprecated integerNormalization +typeChanged (since := "2026-02-05")] noncomputable def coeffIntegerNormalization (p : S[X]) (i : ℕ) : R := (integerNormalization M p).coeff i -@[deprecated integerNormalization_support (since := "2026-02-05")] +@[deprecated integerNormalization_support +typeChanged (since := "2026-02-05")] theorem coeffIntegerNormalization_of_coeff_zero (p : S[X]) (i : ℕ) (h : coeff p i = 0) : coeffIntegerNormalization M p i = 0 := notMem_support_iff.mp <| Finset.not_mem_subset (integerNormalization_support M p) <| notMem_support_iff.mpr h -@[deprecated integerNormalization_support (since := "2026-02-05")] +@[deprecated integerNormalization_support +typeChanged (since := "2026-02-05")] theorem coeffIntegerNormalization_mem_support (p : S[X]) (i : ℕ) (h : coeffIntegerNormalization M p i ≠ 0) : i ∈ p.support := by contrapose h simp only [mem_support_iff, ne_eq, not_not] at h exact coeffIntegerNormalization_of_coeff_zero M p i h -@[deprecated integerNormalization_spec (since := "2026-02-05")] +@[deprecated integerNormalization_spec +typeChanged (since := "2026-02-05")] theorem integerNormalization_coeff (p : S[X]) (i : ℕ) : (integerNormalization M p).coeff i = coeffIntegerNormalization M p i := rfl @@ -95,7 +95,7 @@ theorem integerNormalization_eq_zero_iff [IsDomain R] (hM : M ≤ nonZeroDivisor rw [← _root_.map_eq_zero_iff (mapRingHom (algebraMap R S)) this, coe_mapRingHom, hb₂] exact smul_eq_zero_iff_right <| nonZeroDivisors.ne_zero (hM hb₁) -@[deprecated integerNormalization_spec (since := "2026-02-05")] +@[deprecated integerNormalization_spec +typeChanged (since := "2026-02-05")] theorem integerNormalization_map_to_map (p : S[X]) : ∃ b : M, (integerNormalization M p).map (algebraMap R S) = (b : R) • p := by obtain ⟨b, hb₁, hb₂⟩ := integerNormalization_spec M p diff --git a/mathlib4/Mathlib/RingTheory/MvPowerSeries/Trunc.lean b/mathlib4/Mathlib/RingTheory/MvPowerSeries/Trunc.lean index 08701bb5a..807bb6d82 100644 --- a/mathlib4/Mathlib/RingTheory/MvPowerSeries/Trunc.lean +++ b/mathlib4/Mathlib/RingTheory/MvPowerSeries/Trunc.lean @@ -270,7 +270,7 @@ theorem coeff_trunc'_mul_trunc'_eq_coeff_mul (n : σ →₀ ℕ) (trunc' R n f * trunc' R n g).coeff m = coeff m (f * g) := coeff_trunc'_mul_trunc'_eq_coeff_mul₂ n n f g h h -@[deprecated coeff_trunc'_mul_trunc'_eq_coeff_mul (since := "2026-02-20")] +@[deprecated coeff_trunc'_mul_trunc'_eq_coeff_mul +typeChanged (since := "2026-02-20")] theorem coeff_mul_eq_coeff_trunc'_mul_trunc' (n : σ →₀ ℕ) (f g : MvPowerSeries σ R) {m : σ →₀ ℕ} (h : m ≤ n) : coeff m (f * g) = (trunc' R n f * trunc' R n g).coeff m := (coeff_trunc'_mul_trunc'_eq_coeff_mul n f g h).symm diff --git a/mathlib4/Mathlib/RingTheory/NonUnitalSubring/Basic.lean b/mathlib4/Mathlib/RingTheory/NonUnitalSubring/Basic.lean index 6a2cec329..069964fc7 100644 --- a/mathlib4/Mathlib/RingTheory/NonUnitalSubring/Basic.lean +++ b/mathlib4/Mathlib/RingTheory/NonUnitalSubring/Basic.lean @@ -559,7 +559,7 @@ theorem isMulCommutative_closure {R : Type*} [NonUnitalRing R] {s : Set R} open scoped IsMulCommutative in /-- If all the elements of a set `s` commute, then `closure s` is a non-unital commutative ring. -/ -@[deprecated isMulCommutative_closure (since := "2026-03-11")] +@[deprecated isMulCommutative_closure +typeChanged (since := "2026-03-11")] abbrev closureNonUnitalCommRingOfComm {R : Type*} [NonUnitalRing R] {s : Set R} (hcomm : ∀ x ∈ s, ∀ y ∈ s, x * y = y * x) : NonUnitalCommRing (closure s) := have := isMulCommutative_closure hcomm diff --git a/mathlib4/Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean b/mathlib4/Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean index 7dc6408d1..5f9bd00ad 100644 --- a/mathlib4/Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean +++ b/mathlib4/Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean @@ -377,7 +377,7 @@ theorem isMulCommutative_closure {R : Type*} [NonUnitalSemiring R] {s : Set R} open scoped IsMulCommutative in /-- If all the elements of a set `s` commute, then `closure s` is a non-unital commutative semiring. -/ -@[deprecated isMulCommutative_closure (since := "2026-03-11")] +@[deprecated isMulCommutative_closure +typeChanged (since := "2026-03-11")] abbrev closureNonUnitalCommSemiringOfComm {R : Type*} [NonUnitalSemiring R] {s : Set R} (hcomm : ∀ x ∈ s, ∀ y ∈ s, x * y = y * x) : NonUnitalCommSemiring (closure s) := have := isMulCommutative_closure hcomm diff --git a/mathlib4/Mathlib/RingTheory/PowerSeries/Derivative.lean b/mathlib4/Mathlib/RingTheory/PowerSeries/Derivative.lean index 3b3492da7..409114e94 100644 --- a/mathlib4/Mathlib/RingTheory/PowerSeries/Derivative.lean +++ b/mathlib4/Mathlib/RingTheory/PowerSeries/Derivative.lean @@ -162,7 +162,7 @@ The formal derivative of a power series in one variable. This is defined here as a function, but will be packaged as a derivation `derivative` on `R⟦X⟧`. -/ -@[deprecated derivative (since := "2026-06-26")] +@[deprecated derivative +typeChanged (since := "2026-06-26")] noncomputable def derivativeFun (f : R⟦X⟧) := (derivative R).toFun f set_option linter.deprecated false in diff --git a/mathlib4/Mathlib/RingTheory/Smooth/NoetherianDescent.lean b/mathlib4/Mathlib/RingTheory/Smooth/NoetherianDescent.lean index 9255cf2f3..56427cbf6 100644 --- a/mathlib4/Mathlib/RingTheory/Smooth/NoetherianDescent.lean +++ b/mathlib4/Mathlib/RingTheory/Smooth/NoetherianDescent.lean @@ -251,7 +251,7 @@ public theorem exists_subalgebra_fg [Smooth A B] : D.fg_subalgebra R, ⟨.of_split _ σ₀ hσ₀, inferInstance⟩, ⟨(P.tensorModelOfHasCoeffsEquiv (D.subalgebra R)).symm⟩⟩ -@[deprecated exists_subalgebra_fg (since := "2026-01-07")] +@[deprecated exists_subalgebra_fg +typeChanged (since := "2026-01-07")] public theorem exists_subalgebra_finiteType [Smooth A B] : ∃ (A₀ : Subalgebra R A) (B₀ : Type u) (_ : CommRing B₀) (_ : Algebra A₀ B₀), FiniteType R A₀ ∧ Smooth A₀ B₀ ∧ Nonempty (B ≃ₐ[A] A ⊗[A₀] B₀) := by diff --git a/mathlib4/Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean b/mathlib4/Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean index 2f718366f..ba0f656b2 100644 --- a/mathlib4/Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean +++ b/mathlib4/Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean @@ -181,7 +181,7 @@ theorem vlt.ne_zero (h : x <ᵥ y) : y ≠ 0 := by lemma zero_vlt_one : (0 : R) <ᵥ 1 := not_vle_one_zero -@[deprecated mul_vle_mul_left (since := "2026-01-06")] +@[deprecated mul_vle_mul_left +typeChanged (since := "2026-01-06")] lemma vle_mul_right (z) (h : x ≤ᵥ y) : x * z ≤ᵥ y * z := mul_vle_mul_left h z diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Aleph.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Aleph.lean index 7aed87f9e..e1b6fd0d7 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Aleph.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Aleph.lean @@ -330,11 +330,11 @@ theorem preAleph_zero : preAleph 0 = 0 := theorem succ_preAleph (o : Ordinal) : succ (preAleph o) = preAleph (o + 1) := (preAleph.map_succ o).symm -@[deprecated succ_preAleph (since := "2026-03-24")] +@[deprecated succ_preAleph +typeChanged (since := "2026-03-24")] theorem preAleph_add_one (o : Ordinal) : preAleph (o + 1) = succ (preAleph o) := preAleph.map_succ o -@[deprecated succ_preAleph (since := "2026-03-24")] +@[deprecated succ_preAleph +typeChanged (since := "2026-03-24")] theorem preAleph_succ (o : Ordinal) : preAleph (succ o) = succ (preAleph o) := preAleph.map_succ o @@ -452,11 +452,11 @@ theorem preAleph_le_aleph (o : Ordinal) : preAleph o ≤ ℵ_ o := theorem succ_aleph (o : Ordinal) : succ (ℵ_ o) = ℵ_ (o + 1) := by rw [aleph_eq_preAleph, succ_preAleph, add_assoc, aleph_eq_preAleph] -@[deprecated succ_aleph (since := "2026-03-24")] +@[deprecated succ_aleph +typeChanged (since := "2026-03-24")] theorem aleph_add_one (o : Ordinal) : ℵ_ (o + 1) = succ (ℵ_ o) := by simp -@[deprecated succ_aleph (since := "2026-03-24")] +@[deprecated succ_aleph +typeChanged (since := "2026-03-24")] theorem aleph_succ (o : Ordinal) : ℵ_ (succ o) = succ (ℵ_ o) := (succ_aleph o).symm @@ -536,19 +536,19 @@ theorem lt_aleph_one_iff {c : Cardinal} : c < ℵ₁ ↔ c ≤ ℵ₀ := by theorem aleph0_lt_aleph_one : ℵ₀ < ℵ₁ := by simp -@[deprecated aleph_one_le_iff (since := "2026-03-23")] +@[deprecated aleph_one_le_iff +typeChanged (since := "2026-03-23")] theorem aleph0_lt_iff_aleph_one_le {c} : ℵ₀ < c ↔ ℵ₁ ≤ c := aleph_one_le_iff.symm -@[deprecated aleph0_lt_mk_iff (since := "2026-03-23")] +@[deprecated aleph0_lt_mk_iff +typeChanged (since := "2026-03-23")] theorem aleph1_le_mk_iff {α : Type*} : ℵ₁ ≤ #α ↔ Uncountable α := by rw [aleph_one_le_iff, aleph0_lt_mk_iff] -@[deprecated aleph0_lt_mk (since := "2026-03-23")] +@[deprecated aleph0_lt_mk +typeChanged (since := "2026-03-23")] theorem aleph1_le_mk (α : Type*) [Uncountable α] : ℵ₁ ≤ #α := by simp -@[deprecated le_aleph0_iff_set_countable (since := "2026-03-23")] +@[deprecated le_aleph0_iff_set_countable +typeChanged (since := "2026-03-23")] theorem countable_iff_lt_aleph_one {α : Type*} (s : Set α) : s.Countable ↔ #s < ℵ₁ := by rw [lt_aleph_one_iff, le_aleph0_iff_set_countable] @@ -605,7 +605,7 @@ theorem preBeth_add_one (o : Ordinal) : preBeth (o + 1) = 2 ^ preBeth o := by rw [preBeth, ← succ_eq_add_one, Iio_succ] exact ciSup_Iic o fun x y h ↦ power_le_power_left two_ne_zero (preBeth_mono h) -@[deprecated preBeth_add_one (since := "2026-05-26")] +@[deprecated preBeth_add_one +typeChanged (since := "2026-05-26")] theorem preBeth_succ (o : Ordinal) : preBeth (succ o) = 2 ^ preBeth o := preBeth_add_one o @@ -777,7 +777,7 @@ theorem preBeth_of_omega0_sq_le {o : Ordinal} (ho : ω ^ 2 ≤ o) : preBeth o = section lift variable {c : Cardinal.{u}} {n : ℕ} -@[deprecated aleph0_lt_lift (since := "2026-03-23")] +@[deprecated aleph0_lt_lift +typeChanged (since := "2026-03-23")] theorem aleph_one_le_lift : ℵ₁ ≤ lift.{v} c ↔ ℵ₁ ≤ c := by simp @@ -789,7 +789,7 @@ theorem lift_le_aleph_one : lift.{v} c ≤ ℵ₁ ↔ c ≤ ℵ₁ := by theorem aleph_one_lt_lift : ℵ₁ < lift.{v} c ↔ ℵ₁ < c := by simpa using lift_lt (a := ℵ₁) -@[deprecated lift_le_aleph0 (since := "2026-03-23")] +@[deprecated lift_le_aleph0 +typeChanged (since := "2026-03-23")] theorem lift_lt_aleph_one : lift.{v} c < ℵ₁ ↔ c < ℵ₁ := by simp diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Basic.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Basic.lean index 7a5762405..b270fdc7a 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Basic.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Basic.lean @@ -166,7 +166,7 @@ theorem bddAbove_iff_small {s : Set Cardinal.{u}} : BddAbove s ↔ Small.{u} s : theorem bddAbove_of_small {s : Set Cardinal.{u}} [h : Small.{u} s] : BddAbove s := bddAbove_iff_small.2 h -@[deprecated bddAbove_of_small (since := "2026-04-04")] +@[deprecated bddAbove_of_small +typeChanged (since := "2026-04-04")] theorem bddAbove_range {ι : Type*} [Small.{u} ι] (f : ι → Cardinal.{u}) : BddAbove (Set.range f) := bddAbove_of_small @@ -273,7 +273,7 @@ lemma succ_natCast (n : ℕ) : Order.succ (n : Cardinal) = n + 1 := by rw [← Nat.cast_succ] exact Nat.cast_lt.2 (Nat.lt_succ_self _) -@[deprecated succ_natCast (since := "2026-03-21")] +@[deprecated succ_natCast +typeChanged (since := "2026-03-21")] theorem nat_succ (n : ℕ) : (n.succ : Cardinal) = succ ↑n := by simp @@ -408,7 +408,7 @@ theorem isStrongLimit_aleph0 : IsStrongLimit ℵ₀ := by theorem IsStrongLimit.aleph0_le {c} (H : IsStrongLimit c) : ℵ₀ ≤ c := aleph0_le_of_isSuccLimit H.isSuccLimit -@[deprecated exists_eq_ciSup_of_not_isSuccLimit (since := "2026-04-13")] +@[deprecated exists_eq_ciSup_of_not_isSuccLimit +typeChanged (since := "2026-04-13")] lemma exists_eq_natCast_of_iSup_eq {ι : Type u} [Nonempty ι] (f : ι → Cardinal.{v}) (hf : BddAbove (range f)) (n : ℕ) (h : ⨆ i, f i = n) : ∃ i, f i = n := by rw [← h] @@ -656,7 +656,7 @@ theorem mk_le_mk_of_subset {α} {s t : Set α} (h : s ⊆ t) : #s ≤ #t := theorem mk_monotone : Monotone (α := Set α) (mk ∘ (↑)) := fun _ _ ↦ mk_le_mk_of_subset -@[deprecated mk_eq_zero (since := "2026-01-31")] +@[deprecated mk_eq_zero +typeChanged (since := "2026-01-31")] theorem mk_emptyCollection (α : Type u) : #(∅ : Set α) = 0 := mk_eq_zero _ @@ -702,7 +702,7 @@ theorem mk_range_eq_of_injective {α : Type u} {β : Type v} {f : α → β} (hf lift.{u} #(range f) = lift.{v} #α := lift_mk_eq'.mpr ⟨(Equiv.ofInjective f hf).symm⟩ -@[deprecated mk_range_eq_of_injective (since := "2026-01-06")] +@[deprecated mk_range_eq_of_injective +typeChanged (since := "2026-01-06")] theorem mk_range_eq_lift {α : Type u} {β : Type v} {f : α → β} (hf : Injective f) : lift.{max u w} #(range f) = lift.{max v w} #α := lift_mk_eq.{v, u, w}.mpr ⟨(Equiv.ofInjective f hf).symm⟩ diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean index 6935f1b23..714d940bb 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean @@ -94,7 +94,7 @@ theorem ord_cof_le (o : Ordinal) : o.cof.ord ≤ o := theorem cof_eq_zero {o} : cof o = 0 ↔ o = 0 := by rw [← cof_toType, cof_eq_zero_iff, isEmpty_toType_iff] -@[deprecated cof_eq_zero (since := "2026-02-18")] +@[deprecated cof_eq_zero +typeChanged (since := "2026-02-18")] theorem cof_ne_zero {o} : cof o ≠ 0 ↔ o ≠ 0 := cof_eq_zero.not @@ -118,7 +118,7 @@ theorem cof_add_one (o) : cof (o + 1) = 1 := theorem cof_one : cof 1 = 1 := by simpa using cof_add_one 0 -@[deprecated cof_add_one (since := "2026-05-25")] +@[deprecated cof_add_one +typeChanged (since := "2026-05-25")] theorem cof_succ (o) : cof (succ o) = 1 := cof_add_one o @@ -134,7 +134,7 @@ theorem cof_lt_aleph0_iff {o : Ordinal} : cof o < ℵ₀ ↔ cof o ≤ 1 := by theorem aleph0_le_cof_iff {o : Ordinal} : ℵ₀ ≤ cof o ↔ 1 < cof o := by simp [← not_lt] -@[deprecated one_lt_cof_iff (since := "2026-03-22")] +@[deprecated one_lt_cof_iff +typeChanged (since := "2026-03-22")] theorem aleph0_le_cof {o} : ℵ₀ ≤ cof o ↔ IsSuccLimit o := by rw [aleph0_le_cof_iff, one_lt_cof_iff] @@ -354,17 +354,17 @@ theorem exists_lsub_cof (o : Ordinal) : rw [cof_eq_sInf_lsub] exact csInf_mem (cof_lsub_def_nonempty o) -@[deprecated cof_iSup_add_one_le (since := "2026-03-22")] +@[deprecated cof_iSup_add_one_le +typeChanged (since := "2026-03-22")] theorem cof_lsub_le {ι} (f : ι → Ordinal) : cof (lsub.{u, u} f) ≤ #ι := cof_iSup_add_one_le f -@[deprecated cof_lift_iSup_add_one_le (since := "2026-03-22")] +@[deprecated cof_lift_iSup_add_one_le +typeChanged (since := "2026-03-22")] theorem cof_lsub_le_lift {ι} (f : ι → Ordinal) : cof (lsub.{u, v} f) ≤ Cardinal.lift.{v, u} #ι := by rw [← lift_id'.{u} (lsub f), ← Cardinal.lift_umax.{u, v}] exact cof_lift_iSup_add_one_le _ -@[deprecated le_cof_iff (since := "2026-03-21")] +@[deprecated le_cof_iff +typeChanged (since := "2026-03-21")] theorem le_cof_iff_lsub {o : Ordinal} {a : Cardinal} : a ≤ cof o ↔ ∀ {ι} (f : ι → Ordinal), lsub.{u, u} f = o → a ≤ #ι := by rw [cof_eq_sInf_lsub] @@ -374,32 +374,32 @@ theorem le_cof_iff_lsub {o : Ordinal} {a : Cardinal} : rw [← hb] exact H _ hf⟩ -@[deprecated lift_iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem lsub_lt_ord_lift {ι} {f : ι → Ordinal} {c : Ordinal} (hι : Cardinal.lift.{v, u} #ι < c.cof) (hf : ∀ i, f i < c) : lsub.{u, v} f < c := by apply lift_iSup_add_one_lt_of_lt_cof _ hf rwa [Cardinal.lift_umax, c.lift_id'] -@[deprecated iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem lsub_lt_ord {ι} {f : ι → Ordinal} {c : Ordinal} (hι : #ι < c.cof) : (∀ i, f i < c) → lsub.{u, u} f < c := iSup_add_one_lt_of_lt_cof hι -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem cof_iSup_le_lift {ι} {f : ι → Ordinal} (H : ∀ i, f i < iSup f) : cof (iSup f) ≤ Cardinal.lift.{v, u} #ι := by by_contra! hf apply (lift_iSup_lt_of_lt_cof _ H).false rwa [Cardinal.lift_umax, lift_id'] -@[deprecated iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem cof_iSup_le {ι} {f : ι → Ordinal} (H : ∀ i, f i < iSup f) : cof (iSup f) ≤ #ι := by by_contra! hf exact (iSup_lt_of_lt_cof hf H).false -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem iSup_lt_ord_lift {ι} {f : ι → Ordinal} {c : Ordinal} (hι : Cardinal.lift.{v, u} #ι < c.cof) (hf : ∀ i, f i < c) : iSup f < c := by apply lift_iSup_lt_of_lt_cof _ hf @@ -408,7 +408,7 @@ theorem iSup_lt_ord_lift {ι} {f : ι → Ordinal} {c : Ordinal} (hι : Cardinal @[deprecated (since := "2026-03-22")] alias iSup_lt_ord := iSup_lt_of_lt_cof -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem iSup_lt_lift {ι} {f : ι → Cardinal} {c : Cardinal} (hι : Cardinal.lift.{v, u} #ι < c.ord.cof) (hf : ∀ i, f i < c) : iSup f < c := by @@ -438,7 +438,7 @@ theorem nfp_lt_ord {f : Ordinal → Ordinal} {c} (hc : ℵ₀ < cof c) (hf : ∀ a < c → nfp f a < c := nfpFamily_lt_ord_lift hc (by simpa using Cardinal.one_lt_aleph0.trans hc) fun _ => hf -@[deprecated exists_lsub_cof (since := "2026-03-21")] +@[deprecated exists_lsub_cof +typeChanged (since := "2026-03-21")] theorem exists_blsub_cof (o : Ordinal) : ∃ f : ∀ a < (cof o).ord, Ordinal, blsub.{u, u} _ f = o := by rcases exists_lsub_cof o with ⟨ι, f, hf, hι⟩ @@ -447,7 +447,7 @@ theorem exists_blsub_cof (o : Ordinal) : rw [← hι, hι'] exact ⟨_, hf⟩ -@[deprecated le_cof_iff (since := "2026-03-21")] +@[deprecated le_cof_iff +typeChanged (since := "2026-03-21")] theorem le_cof_iff_blsub {b : Ordinal} {a : Cardinal} : a ≤ cof b ↔ ∀ {o} (f : ∀ a < o, Ordinal), blsub.{u, u} o f = b → a ≤ o.card := le_cof_iff_lsub.trans @@ -456,47 +456,47 @@ theorem le_cof_iff_blsub {b : Ordinal} {a : Cardinal} : rw [← @blsub_eq_lsub' ι r hr] at hf simpa using H _ hf⟩ -@[deprecated cof_lift_iSup_add_one_le (since := "2026-03-22")] +@[deprecated cof_lift_iSup_add_one_le +typeChanged (since := "2026-03-22")] theorem cof_blsub_le_lift {o} (f : ∀ a < o, Ordinal) : cof (blsub.{u, v} o f) ≤ Cardinal.lift.{v, u} o.card := by rw [← mk_toType o] exact cof_lsub_le_lift _ -@[deprecated cof_iSup_add_one_le (since := "2026-03-22")] +@[deprecated cof_iSup_add_one_le +typeChanged (since := "2026-03-22")] theorem cof_blsub_le {o} (f : ∀ a < o, Ordinal) : cof (blsub.{u, u} o f) ≤ o.card := by rw [← o.card.lift_id] exact cof_blsub_le_lift f -@[deprecated lift_iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem blsub_lt_ord_lift {o : Ordinal.{u}} {f : ∀ a < o, Ordinal} {c : Ordinal} (ho : Cardinal.lift.{v, u} o.card < c.cof) (hf : ∀ i hi, f i hi < c) : blsub.{u, v} o f < c := lt_of_le_of_ne (blsub_le hf) fun h => ho.not_ge (by simpa [← iSup_ord, hf, h] using cof_blsub_le_lift.{u, v} f) -@[deprecated iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem blsub_lt_ord {o : Ordinal} {f : ∀ a < o, Ordinal} {c : Ordinal} (ho : o.card < c.cof) (hf : ∀ i hi, f i hi < c) : blsub.{u, u} o f < c := blsub_lt_ord_lift (by rwa [o.card.lift_id]) hf -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem cof_bsup_le_lift {o : Ordinal} {f : ∀ a < o, Ordinal} (H : ∀ i h, f i h < bsup.{u, v} o f) : cof (bsup.{u, v} o f) ≤ Cardinal.lift.{v, u} o.card := by rw [← bsup_eq_blsub_iff_lt_bsup.{u, v}] at H rw [H] exact cof_blsub_le_lift.{u, v} f -@[deprecated iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem cof_bsup_le {o : Ordinal} {f : ∀ a < o, Ordinal} : (∀ i h, f i h < bsup.{u, u} o f) → cof (bsup.{u, u} o f) ≤ o.card := by rw [← o.card.lift_id] exact cof_bsup_le_lift -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem bsup_lt_ord_lift {o : Ordinal} {f : ∀ a < o, Ordinal} {c : Ordinal} (ho : Cardinal.lift.{v, u} o.card < c.cof) (hf : ∀ i hi, f i hi < c) : bsup.{u, v} o f < c := (bsup_le_blsub f).trans_lt (blsub_lt_ord_lift ho hf) -@[deprecated iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem bsup_lt_ord {o : Ordinal} {f : ∀ a < o, Ordinal} {c : Ordinal} (ho : o.card < c.cof) : (∀ i hi, f i hi < c) → bsup.{u, u} o f < c := bsup_lt_ord_lift (by rwa [o.card.lift_id]) @@ -526,7 +526,7 @@ theorem cof_preOmega {o : Ordinal} (ho : IsSuccPrelimit o) : (preOmega o).cof = theorem cof_omega {o : Ordinal} (ho : IsSuccLimit o) : (ω_ o).cof = o.cof := cof_map_of_isNormal isNormal_omega ho -@[deprecated Order.cof_eq (since := "2026-03-20")] +@[deprecated Order.cof_eq +typeChanged (since := "2026-03-20")] theorem cof_eq' (r : α → α → Prop) [H : IsWellOrder α r] (h : IsSuccLimit (type r)) : ∃ S : Set α, (∀ a, ∃ b ∈ S, r a b) ∧ #S = cof (type r) := by classical diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/ENat.lean b/mathlib4/Mathlib/SetTheory/Cardinal/ENat.lean index fb62164e1..61ef72e60 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/ENat.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/ENat.lean @@ -288,7 +288,7 @@ lemma toENat_eq_iff_of_le_aleph0 (hc : c ≤ ℵ₀) (hc' : c' ≤ ℵ₀) : toE @[simp] lemma toENat_eq_ofNat [n.AtLeastTwo] : toENat c = ofNat(n) ↔ c = ofNat(n) := toENat_eq_natCast -@[deprecated toENat_eq_zero (since := "2026-05-25")] +@[deprecated toENat_eq_zero +typeChanged (since := "2026-05-25")] lemma toENat_lt_one : toENat c < 1 ↔ c < 1 := by simp @[deprecated (since := "2026-01-13")] alias toENat_eq_nat := toENat_eq_natCast diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Finite.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Finite.lean index 641e8fc54..98c0a4f66 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Finite.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Finite.lean @@ -317,7 +317,7 @@ lemma card_le_card_of_injective {α β : Type*} {f : α → β} (hf : Injective rw [← card_ulift α, ← card_ulift β] exact Cardinal.gciENat.gc.monotone_u <| Cardinal.lift_mk_le_lift_mk_of_injective hf -@[deprecated natCast_le_toENat (since := "2026-02-17")] +@[deprecated natCast_le_toENat +typeChanged (since := "2026-02-17")] theorem _root_.Cardinal.natCast_le_toENat_iff {n : ℕ} {c : Cardinal} : ↑n ≤ toENat c ↔ ↑n ≤ c := by rw [← toENat_nat n, toENat_le_iff_of_le_aleph0 natCast_le_aleph0] @@ -326,7 +326,7 @@ theorem _root_.Cardinal.natCast_le_toENat_iff {n : ℕ} {c : Cardinal} : theorem _root_.Cardinal.toENat_le_natCast_iff {c : Cardinal} {n : ℕ} : toENat c ≤ n ↔ c ≤ n := by simp -@[deprecated natCast_eq_toENat (since := "2026-02-17")] +@[deprecated natCast_eq_toENat +typeChanged (since := "2026-02-17")] theorem _root_.Cardinal.natCast_eq_toENat_iff {n : ℕ} {c : Cardinal} : ↑n = toENat c ↔ ↑n = c := by rw [le_antisymm_iff, le_antisymm_iff, Cardinal.toENat_le_natCast, Cardinal.natCast_le_toENat] @@ -335,12 +335,12 @@ theorem _root_.Cardinal.natCast_eq_toENat_iff {n : ℕ} {c : Cardinal} : theorem _root_.Cardinal.toENat_eq_natCast_iff {c : Cardinal} {n : ℕ} : Cardinal.toENat c = n ↔ c = n := by simp -@[deprecated natCast_lt_toENat (since := "2026-02-17")] +@[deprecated natCast_lt_toENat +typeChanged (since := "2026-02-17")] theorem _root_.Cardinal.natCast_lt_toENat_iff {n : ℕ} {c : Cardinal} : ↑n < toENat c ↔ ↑n < c := by simp only [← not_le, Cardinal.toENat_le_natCast] -@[deprecated toENat_lt_natCast (since := "2026-02-17")] +@[deprecated toENat_lt_natCast +typeChanged (since := "2026-02-17")] theorem _root_.Cardinal.toENat_lt_natCast_iff {n : ℕ} {c : Cardinal} : toENat c < ↑n ↔ c < ↑n := by simp only [← not_le, Cardinal.natCast_le_toENat] diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Order.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Order.lean index 383191598..fe4edb435 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Order.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Order.lean @@ -297,7 +297,7 @@ instance canonicallyOrderedAdd : CanonicallyOrderedAdd Cardinal.{u} where le_self_add a b := (add_zero a).ge.trans <| add_right_mono bot_le le_add_self a b := (zero_add a).ge.trans <| add_left_mono bot_le -@[deprecated zero_le (since := "2026-04-17")] +@[deprecated zero_le +typeChanged (since := "2026-04-17")] protected theorem zero_le (a : Cardinal) : 0 ≤ a := zero_le instance isOrderedRing : IsOrderedRing Cardinal.{u} := @@ -385,7 +385,7 @@ theorem sInf_empty : sInf (∅ : Set Cardinal.{u}) = 0 := /-- Note that the successor of `c` is not the same as `c + 1` except in the case of finite `c`. -/ @[no_expose] instance : SuccOrder Cardinal := .ofLinearWellFoundedLT _ -@[deprecated Order.succ_eq_csInf (since := "2026-03-21")] +@[deprecated Order.succ_eq_csInf +typeChanged (since := "2026-03-21")] theorem succ_def (c : Cardinal) : succ c = sInf { c' | c < c' } := Order.succ_eq_csInf c @@ -404,7 +404,7 @@ theorem add_one_le_of_lt {a b : Cardinal} (h : a < b) : a + 1 ≤ b := by rw [← mk_option] exact (f.optionElim b hb).cardinal_le -@[deprecated add_one_le_of_lt (since := "2026-03-21")] +@[deprecated add_one_le_of_lt +typeChanged (since := "2026-03-21")] theorem add_one_le_succ (c : Cardinal) : c + 1 ≤ succ c := add_one_le_of_lt (lt_succ c) @@ -565,7 +565,7 @@ theorem exists_wellFoundedLT : ∃ (_ : LinearOrder α), WellFoundedLT α := by namespace Cardinal -@[deprecated exists_eq_ciSup_of_not_isSuccPrelimit (since := "2026-04-13")] +@[deprecated exists_eq_ciSup_of_not_isSuccPrelimit +typeChanged (since := "2026-04-13")] lemma exists_eq_of_iSup_eq_of_not_isSuccPrelimit {ι : Type u} (f : ι → Cardinal.{v}) (ω : Cardinal.{v}) (hω : ¬ IsSuccPrelimit ω) @@ -573,7 +573,7 @@ lemma exists_eq_of_iSup_eq_of_not_isSuccPrelimit subst h exact exists_eq_ciSup_of_not_isSuccPrelimit hω -@[deprecated exists_eq_ciSup_of_not_isSuccLimit (since := "2026-04-13")] +@[deprecated exists_eq_ciSup_of_not_isSuccLimit +typeChanged (since := "2026-04-13")] lemma exists_eq_of_iSup_eq_of_not_isSuccLimit {ι : Type u} [hι : Nonempty ι] (f : ι → Cardinal.{v}) (hf : BddAbove (range f)) {c : Cardinal.{v}} (hc : ¬ IsSuccLimit c) diff --git a/mathlib4/Mathlib/SetTheory/Cardinal/Regular.lean b/mathlib4/Mathlib/SetTheory/Cardinal/Regular.lean index 429805d88..edf59f723 100644 --- a/mathlib4/Mathlib/SetTheory/Cardinal/Regular.lean +++ b/mathlib4/Mathlib/SetTheory/Cardinal/Regular.lean @@ -108,7 +108,7 @@ theorem isRegular_preAleph_add_one {o : Ordinal} (h : ω ≤ o) : IsRegular (pre rw [← succ_preAleph] exact isRegular_succ (aleph0_le_preAleph.2 h) -@[deprecated isRegular_preAleph_add_one (since := "2026-03-23")] +@[deprecated isRegular_preAleph_add_one +typeChanged (since := "2026-03-23")] theorem isRegular_preAleph_succ {o : Ordinal} (h : ω ≤ o) : IsRegular (preAleph (succ o)) := isRegular_preAleph_add_one h @@ -120,7 +120,7 @@ theorem isRegular_aleph_add_one (o : Ordinal) : IsRegular (ℵ_ (o + 1)) := by rw [← succ_aleph] exact isRegular_succ (aleph0_le_aleph o) -@[deprecated isRegular_aleph_add_one (since := "2026-03-23")] +@[deprecated isRegular_aleph_add_one +typeChanged (since := "2026-03-23")] theorem isRegular_aleph_succ (o : Ordinal) : IsRegular (ℵ_ (succ o)) := isRegular_aleph_add_one o @@ -140,57 +140,57 @@ lemma isRegular_lift_iff {κ : Cardinal.{v}} : (Cardinal.lift.{u} κ).IsRegular ↔ κ.IsRegular := ⟨fun ⟨h₁, h₂⟩ ↦ ⟨by simpa using h₁, by simpa [← lift_le.{u, v}]⟩, fun h ↦ h.lift⟩ -@[deprecated lift_iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem lsub_lt_ord_lift_of_isRegular {ι} {f : ι → Ordinal} {c} (hc : IsRegular c) (hι : Cardinal.lift.{v, u} #ι < c) (hf : ∀ i, f i < c.ord) : Ordinal.lsub.{u, v} f < c.ord := by apply lift_iSup_add_one_lt_of_lt_cof _ hf rwa [lift_umax, c.ord.lift_id', hc.cof_ord] -@[deprecated iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem lsub_lt_ord_of_isRegular {ι} {f : ι → Ordinal} {c} (hc : IsRegular c) (hι : #ι < c) : (∀ i, f i < c.ord) → Ordinal.lsub f < c.ord := iSup_add_one_lt_of_lt_cof (by rwa [hc.cof_ord]) -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem iSup_lt_ord_lift_of_isRegular {ι} {f : ι → Ordinal} {c} (hc : IsRegular c) (hι : Cardinal.lift.{v, u} #ι < c) (hf : ∀ i, f i < c.ord) : iSup f < c.ord := by apply Ordinal.lift_iSup_lt_of_lt_cof _ hf rwa [lift_umax, Ordinal.lift_id', hc.cof_ord] -@[deprecated iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem iSup_lt_ord_of_isRegular {ι} {f : ι → Ordinal} {c} (hc : IsRegular c) (hι : #ι < c) : (∀ i, f i < c.ord) → iSup f < c.ord := Ordinal.iSup_lt_of_lt_cof (by rwa [hc.cof_ord]) -@[deprecated lift_iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem blsub_lt_ord_lift_of_isRegular {o : Ordinal} {f : ∀ a < o, Ordinal} {c} (hc : IsRegular c) (ho : Cardinal.lift.{v, u} o.card < c) : (∀ i hi, f i hi < c.ord) → Ordinal.blsub.{u, v} o f < c.ord := blsub_lt_ord_lift (by rwa [hc.cof_ord]) -@[deprecated lift_iSup_add_one_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_add_one_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem blsub_lt_ord_of_isRegular {o : Ordinal} {f : ∀ a < o, Ordinal} {c} (hc : IsRegular c) (ho : o.card < c) : (∀ i hi, f i hi < c.ord) → Ordinal.blsub o f < c.ord := blsub_lt_ord (by rwa [hc.cof_ord]) -@[deprecated iSup_lt_ord_lift_of_isRegular (since := "2026-03-22")] +@[deprecated iSup_lt_ord_lift_of_isRegular +typeChanged (since := "2026-03-22")] theorem bsup_lt_ord_lift_of_isRegular {o : Ordinal} {f : ∀ a < o, Ordinal} {c} (hc : IsRegular c) (hι : Cardinal.lift.{v, u} o.card < c) : (∀ i hi, f i hi < c.ord) → Ordinal.bsup.{u, v} o f < c.ord := bsup_lt_ord_lift (by rwa [hc.cof_ord]) -@[deprecated lift_iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem bsup_lt_ord_of_isRegular {o : Ordinal} {f : ∀ a < o, Ordinal} {c} (hc : IsRegular c) (hι : o.card < c) : (∀ i hi, f i hi < c.ord) → Ordinal.bsup o f < c.ord := bsup_lt_ord (by rwa [hc.cof_ord]) -@[deprecated lift_iSup_lt_of_lt_cof_ord (since := "2026-03-22")] +@[deprecated lift_iSup_lt_of_lt_cof_ord +typeChanged (since := "2026-03-22")] theorem iSup_lt_lift_of_isRegular {ι} {f : ι → Cardinal} {c} (hc : IsRegular c) (hι : Cardinal.lift.{v, u} #ι < c) (hf : ∀ i, f i < c) : iSup f < c := by apply lift_iSup_lt_of_lt_cof_ord _ hf rwa [lift_umax, c.lift_id', hc.cof_ord] -@[deprecated iSup_lt_of_lt_cof (since := "2026-03-22")] +@[deprecated iSup_lt_of_lt_cof +typeChanged (since := "2026-03-22")] theorem iSup_lt_of_isRegular {ι} {f : ι → Cardinal} {c} (hc : IsRegular c) (hι : #ι < c) : (∀ i, f i < c) → iSup f < c := iSup_lt_of_lt_cof_ord (by rwa [hc.cof_ord]) diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Arithmetic.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Arithmetic.lean index 50101d4b7..f4f01d12c 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Arithmetic.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Arithmetic.lean @@ -169,7 +169,7 @@ theorem limitRecOn_add_one {motive} (o H₁ H₂ H₃) : @limitRecOn motive (o + 1) H₁ H₂ H₃ = H₂ o (@limitRecOn motive o H₁ H₂ H₃) := SuccOrder.limitRecOn_succ .. -@[deprecated limitRecOn_add_one (since := "2026-05-21")] +@[deprecated limitRecOn_add_one +typeChanged (since := "2026-05-21")] theorem limitRecOn_succ {motive} (o H₁ H₂ H₃) : @limitRecOn motive (succ o) H₁ H₂ H₃ = H₂ o (@limitRecOn motive o H₁ H₂ H₃) := limitRecOn_add_one .. @@ -187,7 +187,7 @@ theorem enum_succ_eq_top {o : Ordinal} : rfl set_option backward.isDefEq.respectTransparency false in -@[deprecated isSuccPrelimit_type_lt_iff (since := "2026-04-12")] +@[deprecated isSuccPrelimit_type_lt_iff +typeChanged (since := "2026-04-12")] theorem has_succ_of_type_succ_lt {α} {r : α → α → Prop} [wo : IsWellOrder α r] (h : ∀ a < type r, succ a < type r) (x : α) : ∃ y, r x y := by use enum r ⟨succ (typein r x), h _ (typein_lt_type r x)⟩ @@ -195,7 +195,7 @@ theorem has_succ_of_type_succ_lt {α} {r : α → α → Prop} [wo : IsWellOrder · rw [enum_typein] · rw [Subtype.mk_lt_mk, lt_succ_iff] -@[deprecated isSuccPrelimit_type_lt_iff (since := "2026-04-12")] +@[deprecated isSuccPrelimit_type_lt_iff +typeChanged (since := "2026-04-12")] theorem toType_noMax_of_succ_lt {o : Ordinal} (ho : ∀ a < o, succ a < o) : NoMaxOrder o.ToType := ⟨has_succ_of_type_succ_lt (type_toType _ ▸ ho)⟩ @@ -219,7 +219,7 @@ def pred (o : Ordinal) : Ordinal := theorem pred_add_one (o) : pred (o + 1) = o := isSuccPrelimitRecOn_succ .. -@[deprecated pred_add_one (since := "2026-05-25")] +@[deprecated pred_add_one +typeChanged (since := "2026-05-25")] theorem pred_succ (o) : pred (succ o) = o := pred_add_one o @@ -599,11 +599,11 @@ theorem lt_div {a b c : Ordinal} (h : c ≠ 0) : a < b / c ↔ c * succ a ≤ b theorem div_pos {b c : Ordinal} (h : c ≠ 0) : 0 < b / c ↔ c ≤ b := by simp [lt_div h] -@[deprecated mul_le_iff_le_div (since := "2026-02-27")] +@[deprecated mul_le_iff_le_div +typeChanged (since := "2026-02-27")] theorem le_div {a b c : Ordinal} (c0 : c ≠ 0) : a ≤ b / c ↔ c * a ≤ b := (mul_le_iff_le_div c0).symm -@[deprecated lt_mul_iff_div_lt (since := "2026-02-27")] +@[deprecated lt_mul_iff_div_lt +typeChanged (since := "2026-02-27")] theorem div_lt {a b c : Ordinal} (b0 : b ≠ 0) : a / b < c ↔ a < b * c := (lt_mul_iff_div_lt b0).symm @@ -831,11 +831,11 @@ instance instCharZero : CharZero Ordinal := by refine ⟨fun a b h ↦ ?_⟩ rwa [← Cardinal.ord_natCast, ← Cardinal.ord_natCast, Cardinal.ord_inj, Nat.cast_inj] at h -@[deprecated Nat.cast_add_one_comm (since := "2026-05-10")] +@[deprecated Nat.cast_add_one_comm +typeChanged (since := "2026-05-10")] theorem one_add_natCast (m : ℕ) : 1 + (m : Ordinal) = succ m := m.cast_add_one_comm.symm -@[deprecated Nat.cast_add_one_comm (since := "2026-05-10")] +@[deprecated Nat.cast_add_one_comm +typeChanged (since := "2026-05-10")] theorem one_add_ofNat (m : ℕ) [m.AtLeastTwo] : 1 + (ofNat(m) : Ordinal) = Order.succ (OfNat.ofNat m : Ordinal) := m.cast_add_one_comm.symm @@ -991,7 +991,7 @@ theorem isSuccPrelimit_iff_omega0_dvd {a : Ordinal} : IsSuccPrelimit a ↔ ω · rcases h with ⟨a0, b, rfl⟩ exact isSuccPrelimit_mul_left isSuccLimit_omega0 -@[deprecated isSuccPrelimit_iff_omega0_dvd (since := "2026-02-01")] +@[deprecated isSuccPrelimit_iff_omega0_dvd +typeChanged (since := "2026-02-01")] theorem isSuccLimit_iff_omega0_dvd {a : Ordinal} : IsSuccLimit a ↔ a ≠ 0 ∧ ω ∣ a := by rw [isSuccLimit_iff, isSuccPrelimit_iff_omega0_dvd] diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Basic.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Basic.lean index 7e71c38a4..4aa1a23b7 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Basic.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Basic.lean @@ -230,7 +230,7 @@ theorem nonempty_toType_iff {o : Ordinal} : Nonempty o.ToType ↔ o ≠ 0 := by instance instNeZeroOne : NeZero (1 : Ordinal) := ⟨type_ne_zero_of_nonempty _⟩ -@[deprecated _root_.one_ne_zero (since := "2026-05-12")] +@[deprecated _root_.one_ne_zero +typeChanged (since := "2026-05-12")] protected theorem one_ne_zero : (1 : Ordinal) ≠ 0 := _root_.one_ne_zero @@ -380,14 +380,14 @@ theorem type_mono [LinearOrder α] [WellFoundedLT α] {s t : Set α} (h : s ⊆ /-- Given two ordinals `α ≤ β`, then `initialSegToType α β` is the initial segment embedding of `α.ToType` into `β.ToType`. -/ -@[deprecated type_le_iff (since := "2026-04-12")] +@[deprecated type_le_iff +typeChanged (since := "2026-04-12")] def initialSegToType {α β : Ordinal} (h : α ≤ β) : α.ToType ≤i β.ToType := by apply Classical.choice (type_le_iff.mp _) rwa [type_toType, type_toType] /-- Given two ordinals `α < β`, then `principalSegToType α β` is the principal segment embedding of `α.ToType` into `β.ToType`. -/ -@[deprecated type_lt_iff (since := "2026-04-12")] +@[deprecated type_lt_iff +typeChanged (since := "2026-04-12")] def principalSegToType {α β : Ordinal} (h : α < β) : α.ToType rfl⟩ -@[deprecated succ_eq_add_one (since := "2026-02-26")] +@[deprecated succ_eq_add_one +typeChanged (since := "2026-02-26")] theorem add_one_eq_succ (o : Ordinal) : o + 1 = succ o := rfl -@[deprecated zero_add (since := "2026-02-26")] +@[deprecated zero_add +typeChanged (since := "2026-02-26")] theorem succ_zero : succ (0 : Ordinal) = 1 := zero_add 1 -@[deprecated one_add_one_eq_two (since := "2026-02-26")] +@[deprecated one_add_one_eq_two +typeChanged (since := "2026-02-26")] theorem succ_one : succ (1 : Ordinal) = 2 := one_add_one_eq_two -@[deprecated add_assoc (since := "2026-02-26")] +@[deprecated add_assoc +typeChanged (since := "2026-02-26")] theorem add_succ (o₁ o₂ : Ordinal) : o₁ + succ o₂ = succ (o₁ + o₂) := (add_assoc _ _ _).symm -@[deprecated Order.one_le_iff_ne_zero (since := "2026-03-24")] +@[deprecated Order.one_le_iff_ne_zero +typeChanged (since := "2026-03-24")] protected theorem one_le_iff_ne_zero {o : Ordinal} : 1 ≤ o ↔ o ≠ 0 := Order.one_le_iff_ne_zero -@[deprecated add_pos_of_right (since := "2026-04-04")] +@[deprecated add_pos_of_right +typeChanged (since := "2026-04-04")] theorem succ_pos (o : Ordinal) : 0 < succ o := add_pos_of_right zero_lt_one o -@[deprecated add_pos_of_right (since := "2026-04-04")] +@[deprecated add_pos_of_right +typeChanged (since := "2026-04-04")] theorem add_one_ne_zero (o : Ordinal) : o + 1 ≠ 0 := (add_pos_of_right zero_lt_one o).ne' -@[deprecated add_pos_of_right (since := "2026-02-27")] +@[deprecated add_pos_of_right +typeChanged (since := "2026-02-27")] theorem succ_ne_zero (o : Ordinal) : succ o ≠ 0 := (add_pos_of_right zero_lt_one o).ne' -@[deprecated Order.lt_one_iff (since := "2026-03-24")] +@[deprecated Order.lt_one_iff +typeChanged (since := "2026-03-24")] theorem lt_one_iff_zero {a : Ordinal} : a < 1 ↔ a = 0 := Order.lt_one_iff -@[deprecated Order.le_one_iff (since := "2026-03-24")] +@[deprecated Order.le_one_iff +typeChanged (since := "2026-03-24")] protected theorem le_one_iff {a : Ordinal} : a ≤ 1 ↔ a = 0 ∨ a = 1 := Order.le_one_iff -@[deprecated card_add_one (since := "2026-02-27")] +@[deprecated card_add_one +typeChanged (since := "2026-02-27")] theorem card_succ (o : Ordinal) : card (succ o) = card o + 1 := by simp -@[deprecated Nat.cast_add_one (since := "2026-05-21")] +@[deprecated Nat.cast_add_one +typeChanged (since := "2026-05-21")] theorem natCast_succ (n : ℕ) : ↑n.succ = succ (n : Ordinal) := n.cast_add_one @@ -1197,13 +1197,13 @@ theorem mk_Ioi_lt {α : Type*} [LinearOrder α] [WellFoundedGT α] (i : α) (h : #(Ioi i) < #α := mk_Iio_lt (OrderDual.toDual i) h -@[deprecated mk_Iio_lt (since := "2026-04-12")] +@[deprecated mk_Iio_lt +typeChanged (since := "2026-04-12")] theorem mk_Iio_toType_ord_lt {c : Cardinal} (i : c.ord.ToType) : #(Iio i) < c := by simpa using mk_Iio_lt i @[deprecated (since := "2026-03-20")] alias mk_Iio_ord_toType := mk_Iio_toType_ord_lt -@[deprecated mk_Iio_lt (since := "2026-03-20")] +@[deprecated mk_Iio_lt +typeChanged (since := "2026-03-20")] theorem card_typein_toType_lt (c : Cardinal) (x : c.ord.ToType) : card (typein (α := c.ord.ToType) (· < ·) x) < c := mk_Iio_toType_ord_lt x @@ -1243,11 +1243,11 @@ theorem ord_eq_omega0 {a : Cardinal} : a.ord = ω ↔ a = ℵ₀ := /-- The ordinal corresponding to a cardinal `c` is the least ordinal whose cardinal is `c`. This is the order-embedding version. For the regular function, see `ord`. -/ -@[deprecated ord (since := "2026-02-27")] +@[deprecated ord +typeChanged (since := "2026-02-27")] def ord.orderEmbedding : Cardinal ↪o Ordinal := OrderEmbedding.ofStrictMono _ fun _ _ ↦ Cardinal.ord_lt_ord.2 -@[deprecated ord (since := "2026-02-27")] +@[deprecated ord +typeChanged (since := "2026-02-27")] theorem ord.orderEmbedding_coe : (ord.orderEmbedding : Cardinal → Ordinal) = ord := rfl diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Exponential.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Exponential.lean index 859113c54..f1f36e45a 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Exponential.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Exponential.lean @@ -474,7 +474,7 @@ theorem add_log_le_log_mul {x y : Ordinal} (b : Ordinal) (hx : x ≠ 0) (hy : y exact mul_le_mul' (opow_log_le_self b hx) (opow_log_le_self b hy) · simpa only [log_of_left_le_one hb, zero_add] using le_rfl -@[deprecated opow_mul_lt_opow (since := "2026-06-01")] +@[deprecated opow_mul_lt_opow +typeChanged (since := "2026-06-01")] theorem omega0_opow_mul_nat_lt {a b : Ordinal} (h : a < b) (n : ℕ) : ω ^ a * n < ω ^ b := opow_mul_lt_opow (natCast_lt_omega0 n) h @@ -525,7 +525,7 @@ theorem natCast_pow (m : ℕ) : ∀ n : ℕ, ↑(m ^ n : ℕ) = (m : Ordinal) ^ | 0 => by simp | n + 1 => by simp [pow_succ, natCast_pow m n] -@[deprecated natCast_pow (since := "2026-01-31")] +@[deprecated natCast_pow +typeChanged (since := "2026-01-31")] theorem natCast_opow (m : ℕ) : ∀ n : ℕ, ↑(m ^ n : ℕ) = (m : Ordinal) ^ (n : Ordinal) := by simp diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Family.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Family.lean index d7897a85c..becea3e2d 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Family.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Family.lean @@ -29,19 +29,19 @@ variable {α β : Type*} /-- Converts a family indexed by a `Type u` to one indexed by an `Ordinal.{u}` using a specified well-ordering. -/ -@[deprecated enum (since := "2026-04-06")] +@[deprecated enum +typeChanged (since := "2026-04-06")] def bfamilyOfFamily' {ι : Type u} (r : ι → ι → Prop) [IsWellOrder ι r] (f : ι → α) : ∀ a < type r, α := fun a ha => f (enum r ⟨a, ha⟩) /-- Converts a family indexed by a `Type u` to one indexed by an `Ordinal.{u}` using a well-ordering given by the axiom of choice. -/ -@[deprecated enum (since := "2026-04-06")] +@[deprecated enum +typeChanged (since := "2026-04-06")] def bfamilyOfFamily {ι : Type u} : (ι → α) → ∀ a < type (@WellOrderingRel ι), α := bfamilyOfFamily' WellOrderingRel /-- Converts a family indexed by an `Ordinal.{u}` to one indexed by a `Type u` using a specified well-ordering. -/ -@[deprecated typein (since := "2026-04-06")] +@[deprecated typein +typeChanged (since := "2026-04-06")] def familyOfBFamily' {ι : Type u} (r : ι → ι → Prop) [IsWellOrder ι r] {o} (ho : type r = o) (f : ∀ a < o, α) : ι → α := fun i => f (typein r i) @@ -51,7 +51,7 @@ def familyOfBFamily' {ι : Type u} (r : ι → ι → Prop) [IsWellOrder ι r] { /-- Converts a family indexed by an `Ordinal.{u}` to one indexed by a `Type u` using a well-ordering given by the axiom of choice. -/ -@[deprecated typein (since := "2026-04-06")] +@[deprecated typein +typeChanged (since := "2026-04-06")] def familyOfBFamily (o : Ordinal) (f : ∀ a < o, α) : o.ToType → α := familyOfBFamily' (· < ·) (type_toType o) f @@ -79,15 +79,15 @@ theorem familyOfBFamily_enum (o : Ordinal) (f : ∀ a < o, α) (i hi) : familyOfBFamily'_enum _ (type_toType o) f _ _ /-- The range of a family indexed by ordinals. -/ -@[deprecated range (since := "2026-04-06")] +@[deprecated range +typeChanged (since := "2026-04-06")] def brange (o : Ordinal) (f : ∀ a < o, α) : Set α := { a | ∃ i hi, f i hi = a } -@[deprecated mem_range (since := "2026-04-06")] +@[deprecated mem_range +typeChanged (since := "2026-04-06")] theorem mem_brange {o : Ordinal} {f : ∀ a < o, α} {a} : a ∈ brange o f ↔ ∃ i hi, f i hi = a := Iff.rfl -@[deprecated mem_range_self (since := "2026-04-06")] +@[deprecated mem_range_self +typeChanged (since := "2026-04-06")] theorem mem_brange_self {o} (f : ∀ a < o, α) (i hi) : f i hi ∈ brange o f := ⟨i, hi, rfl⟩ @@ -150,7 +150,7 @@ theorem bddAbove_of_small {s : Set Ordinal.{u}} [Small.{u} s] : BddAbove s := by refine ⟨a.ord, fun b hb ↦ le_of_lt ?_⟩ simpa [lt_ord] using ha (mem_image_of_mem _ hb) -@[deprecated bddAbove_of_small (since := "2026-04-04")] +@[deprecated bddAbove_of_small +typeChanged (since := "2026-04-04")] theorem bddAbove_range {ι : Type u} (f : ι → Ordinal.{max u v}) : BddAbove (Set.range f) := bddAbove_of_small @@ -219,7 +219,7 @@ theorem iSup_eq_zero_iff {ι} {f : ι → Ordinal.{u}} [Small.{u} ι] : rw [← nonpos_iff_eq_zero, ← h] exact Ordinal.le_iSup f i -@[deprecated congrArg (since := "2026-03-27")] +@[deprecated congrArg +typeChanged (since := "2026-03-27")] theorem iSup_eq_of_range_eq {ι ι'} {f : ι → Ordinal} {g : ι' → Ordinal} (h : Set.range f = Set.range g) : iSup f = iSup g := congr_arg _ h @@ -394,7 +394,7 @@ theorem lt_bsup {o : Ordinal.{u}} (f : ∀ a < o, Ordinal.{max u v}) {a} : a < bsup.{_, v} o f ↔ ∃ i hi, a < f i hi := by simpa only [not_forall, not_le] using not_congr (@bsup_le_iff.{_, v} _ f a) -@[deprecated IsNormal.map_iSup (since := "2026-04-05")] +@[deprecated IsNormal.map_iSup +typeChanged (since := "2026-04-05")] theorem IsNormal.bsup {f : Ordinal → Ordinal} (H : IsNormal f) {o : Ordinal} : ∀ (g : ∀ a < o, Ordinal), o ≠ 0 → f (bsup o g) = bsup o fun a h => f (g a h) := inductionOn o fun α r _ g h => by @@ -604,14 +604,14 @@ theorem lsub_typein (o : Ordinal) : lsub.{u, u} (typein (α := o.ToType) (· < have h := h.trans_eq (type_toType o).symm simpa [typein_enum] using lt_lsub.{u, u} (typein (· < ·)) (enum (· < ·) ⟨_, h⟩)) -@[deprecated IsSuccPrelimit.sSup_Iio (since := "2026-03-27")] +@[deprecated IsSuccPrelimit.sSup_Iio +typeChanged (since := "2026-03-27")] theorem iSup_typein_limit {o : Ordinal.{u}} (ho : ∀ a, a < o → succ a < o) : iSup (typein ((· < ·) : o.ToType → o.ToType → Prop)) = o := by replace ho : IsSuccPrelimit o := by rwa [isSuccPrelimit_iff_succ_lt] rw [iSup, PrincipalSeg.range_eq] simpa [Iio_def] using ho.sSup_Iio -@[deprecated csSup_Iic (since := "2026-03-27")] +@[deprecated csSup_Iic +typeChanged (since := "2026-03-27")] theorem iSup_typein_succ {o : Ordinal} : iSup (typein ((· < ·) : (succ o).ToType → (succ o).ToType → Prop)) = o := by rw [← csSup_Iic (a := o), iSup, PrincipalSeg.range_eq] @@ -782,15 +782,15 @@ theorem blsub_one (f : ∀ a < (1 : Ordinal), Ordinal) : blsub 1 f = succ (f 0 z theorem blsub_id : ∀ o, (blsub.{u, u} o fun x _ => x) = o := lsub_typein -@[deprecated IsSuccPrelimit.sSup_Iio (since := "2026-03-23")] +@[deprecated IsSuccPrelimit.sSup_Iio +typeChanged (since := "2026-03-23")] theorem bsup_id_limit {o : Ordinal} : (∀ a < o, succ a < o) → (bsup.{u, u} o fun x _ => x) = o := iSup_typein_limit -@[deprecated csSup_Iic (since := "2026-03-23")] +@[deprecated csSup_Iic +typeChanged (since := "2026-03-23")] theorem bsup_id_add_one (o) : (bsup.{u, u} (o + 1) fun x _ => x) = o := iSup_typein_succ -@[deprecated csSup_Iic (since := "2026-03-23")] +@[deprecated csSup_Iic +typeChanged (since := "2026-03-23")] theorem bsup_id_succ (o) : (bsup.{u, u} (succ o) fun x _ => x) = o := iSup_typein_succ @@ -827,18 +827,18 @@ theorem blsub_comp {o o' : Ordinal.{max u v}} {f : ∀ a < o, Ordinal.{max u v w @bsup_comp.{u, v, w} o _ (fun a ha => succ (f a ha)) (fun {_ _} _ _ h => succ_le_succ_iff.2 (hf _ _ h)) g hg -@[deprecated IsNormal.apply_of_isSuccLimit (since := "2026-03-23")] +@[deprecated IsNormal.apply_of_isSuccLimit +typeChanged (since := "2026-03-23")] theorem IsNormal.bsup_eq {f : Ordinal.{u} → Ordinal.{max u v}} (H : IsNormal f) {o : Ordinal.{u}} (h : IsSuccLimit o) : (Ordinal.bsup.{_, v} o fun x _ => f x) = f o := by rw [← IsNormal.bsup.{u, u, v} H (fun x _ => x) h.ne_bot, bsup_id_limit fun _ ↦ h.succ_lt] -@[deprecated IsNormal.apply_of_isSuccLimit (since := "2026-03-23")] +@[deprecated IsNormal.apply_of_isSuccLimit +typeChanged (since := "2026-03-23")] theorem IsNormal.blsub_eq {f : Ordinal.{u} → Ordinal.{max u v}} (H : IsNormal f) {o : Ordinal.{u}} (h : IsSuccLimit o) : (blsub.{_, v} o fun x _ => f x) = f o := by rw [← IsNormal.bsup_eq.{u, v} H h, bsup_eq_blsub_of_lt_succ_limit h] exact fun a _ => H.strictMono (lt_succ a) -@[deprecated isNormal_iff (since := "2026-03-23")] +@[deprecated isNormal_iff +typeChanged (since := "2026-03-23")] theorem isNormal_iff_lt_succ_and_bsup_eq {f : Ordinal.{u} → Ordinal.{max u v}} : IsNormal f ↔ (∀ a, f a < f (succ a)) ∧ ∀ o, IsSuccLimit o → (bsup.{_, v} o fun x _ => f x) = f o := @@ -847,7 +847,7 @@ theorem isNormal_iff_lt_succ_and_bsup_eq {f : Ordinal.{u} → Ordinal.{max u v}} rw [← h₂ _ ho] simpa [IsLUB, upperBounds, lowerBounds, IsLeast, bsup_le_iff] using le_bsup _⟩ -@[deprecated isNormal_iff (since := "2026-03-23")] +@[deprecated isNormal_iff +typeChanged (since := "2026-03-23")] theorem isNormal_iff_lt_succ_and_blsub_eq {f : Ordinal.{u} → Ordinal.{max u v}} : IsNormal f ↔ (∀ a, f a < f (succ a)) ∧ ∀ o, IsSuccLimit o → (blsub.{_, v} o fun x _ => f x) = f o := by diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/FundamentalSequence.lean b/mathlib4/Mathlib/SetTheory/Ordinal/FundamentalSequence.lean index e1fbb7a69..55ba76064 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/FundamentalSequence.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/FundamentalSequence.lean @@ -124,7 +124,7 @@ theorem exists_isFundamentalSeq (ha : o.cof.ord = a) : ∃ f : Iio a → Iio o, /-- A fundamental sequence for `a` is an increasing sequence of length `o = cof a` that converges at `a`. We provide `o` explicitly in order to avoid type rewrites. -/ -@[deprecated IsFundamentalSeq (since := "2026-03-23")] +@[deprecated IsFundamentalSeq +typeChanged (since := "2026-03-23")] def IsFundamentalSequence (a o : Ordinal.{u}) (f : ∀ b < o, Ordinal.{u}) : Prop := o ≤ a.cof.ord ∧ (∀ {i j} (hi hj), i < j → f i hi < f j hj) ∧ blsub.{u, u} o f = a @@ -132,37 +132,37 @@ namespace IsFundamentalSequence variable {a o : Ordinal.{u}} {f : ∀ b < o, Ordinal.{u}} -@[deprecated IsFundamentalSeq.ord_cof (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.ord_cof +typeChanged (since := "2026-03-23")] protected theorem cof_eq (hf : IsFundamentalSequence a o f) : a.cof.ord = o := hf.1.antisymm' <| by rw [← hf.2.2] exact (ord_le_ord.2 (cof_blsub_le f)).trans (ord_card_le o) -@[deprecated IsFundamentalSeq.strictMono (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.strictMono +typeChanged (since := "2026-03-23")] protected theorem strict_mono (hf : IsFundamentalSequence a o f) {i j} : ∀ hi hj, i < j → f i hi < f j hj := hf.2.1 -@[deprecated IsFundamentalSeq.iSup_add_one_eq (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.iSup_add_one_eq +typeChanged (since := "2026-03-23")] theorem blsub_eq (hf : IsFundamentalSequence a o f) : blsub.{u, u} o f = a := hf.2.2 -@[deprecated IsFundamentalSeq (since := "2026-03-23")] +@[deprecated IsFundamentalSeq +typeChanged (since := "2026-03-23")] theorem ord_cof (hf : IsFundamentalSequence a o f) : IsFundamentalSequence a a.cof.ord fun i hi => f i (hi.trans_le (by rw [hf.cof_eq])) := by have H := hf.cof_eq subst H exact hf -@[deprecated IsFundamentalSeq.id (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.id +typeChanged (since := "2026-03-23")] theorem id_of_le_cof (h : o ≤ o.cof.ord) : IsFundamentalSequence o o fun a _ => a := ⟨h, @fun _ _ _ _ => id, blsub_id o⟩ -@[deprecated IsFundamentalSeq.zero (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.zero +typeChanged (since := "2026-03-23")] protected theorem zero {f : ∀ b < (0 : Ordinal), Ordinal} : IsFundamentalSequence 0 0 f := ⟨by rw [cof_zero, ord_zero], @fun i _ hi => (not_lt_zero hi).elim, blsub_zero f⟩ -@[deprecated IsFundamentalSeq.add_one (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.add_one +typeChanged (since := "2026-03-23")] protected theorem succ : IsFundamentalSequence (succ o) 1 fun _ _ => o := by refine ⟨?_, @fun i j hi hj h => ?_, blsub_const Ordinal.one_ne_zero o⟩ · rw [cof_succ, ord_one] @@ -170,14 +170,14 @@ protected theorem succ : IsFundamentalSequence (succ o) 1 fun _ _ => o := by rw [hi, hj] at h exact h.false.elim -@[deprecated IsFundamentalSeq.strictMono (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.strictMono +typeChanged (since := "2026-03-23")] protected theorem monotone (hf : IsFundamentalSequence a o f) {i j : Ordinal} (hi : i < o) (hj : j < o) (hij : i ≤ j) : f i hi ≤ f j hj := by rcases lt_or_eq_of_le hij with (hij | rfl) · exact (hf.2.1 hi hj hij).le · rfl -@[deprecated IsFundamentalSeq.comp (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.comp +typeChanged (since := "2026-03-23")] theorem trans {a o o' : Ordinal.{u}} {f : ∀ b < o, Ordinal.{u}} (hf : IsFundamentalSequence a o f) {g : ∀ b < o', Ordinal.{u}} (hg : IsFundamentalSequence o o' g) : IsFundamentalSequence a o' fun i hi => @@ -189,7 +189,7 @@ theorem trans {a o o' : Ordinal.{u}} {f : ∀ b < o, Ordinal.{u}} (hf : IsFundam · exact hf.2.2 · exact hg.2.2 -@[deprecated IsFundamentalSeq (since := "2026-03-23")] +@[deprecated IsFundamentalSeq +typeChanged (since := "2026-03-23")] protected theorem lt {a o : Ordinal} {s : Π p < o, Ordinal} (h : IsFundamentalSequence a o s) {p : Ordinal} (hp : p < o) : s p hp < a := h.blsub_eq ▸ lt_blsub s p hp @@ -197,7 +197,7 @@ protected theorem lt {a o : Ordinal} {s : Π p < o, Ordinal} end IsFundamentalSequence /-- Every ordinal has a fundamental sequence. -/ -@[deprecated exists_isFundamentalSeq (since := "2026-03-23")] +@[deprecated exists_isFundamentalSeq +typeChanged (since := "2026-03-23")] theorem exists_fundamental_sequence (a : Ordinal.{u}) : ∃ f, IsFundamentalSequence a a.cof.ord f := by suffices h : ∃ o f, IsFundamentalSequence a o f by @@ -228,7 +228,7 @@ theorem exists_fundamental_sequence (a : Ordinal.{u}) : exact (wo.wf.not_lt_min {j | r j i ∧ f i ≤ f j} ⟨IsTrans.trans _ _ _ hkj hji, H⟩) hkj · rwa [bfamilyOfFamily'_typein] -@[deprecated IsFundamentalSeq.comp_isNormal (since := "2026-03-23")] +@[deprecated IsFundamentalSeq.comp_isNormal +typeChanged (since := "2026-03-23")] theorem IsFundamentalSequence.of_isNormal {f : Ordinal.{u} → Ordinal.{u}} (hf : IsNormal f) {a o} (ha : IsSuccLimit a) {g} (hg : IsFundamentalSequence a o g) : IsFundamentalSequence (f a) o fun b hb => f (g b hb) := by diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Topology.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Topology.lean index d08298527..af62d124c 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Topology.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Topology.lean @@ -43,15 +43,15 @@ variable {s : Set Ordinal.{u}} {a : Ordinal.{u}} instance : TopologicalSpace Ordinal.{u} := Preorder.topology Ordinal.{u} instance : OrderTopology Ordinal.{u} := ⟨rfl⟩ -@[deprecated SuccOrder.isOpen_singleton_iff (since := "2026-01-20")] +@[deprecated SuccOrder.isOpen_singleton_iff +typeChanged (since := "2026-01-20")] theorem isOpen_singleton_iff : IsOpen ({a} : Set Ordinal) ↔ ¬ IsSuccLimit a := SuccOrder.isOpen_singleton_iff -@[deprecated SuccOrder.nhds_eq_pure (since := "2026-01-20")] +@[deprecated SuccOrder.nhds_eq_pure +typeChanged (since := "2026-01-20")] theorem nhds_eq_pure : 𝓝 a = pure a ↔ ¬ IsSuccLimit a := SuccOrder.nhds_eq_pure -@[deprecated SuccOrder.isOpen_iff (since := "2026-01-20")] +@[deprecated SuccOrder.isOpen_iff +typeChanged (since := "2026-01-20")] theorem isOpen_iff : IsOpen s ↔ ∀ o ∈ s, IsSuccLimit o → ∃ a < o, Set.Ioo a o ⊆ s := SuccOrder.isOpen_iff @@ -98,7 +98,7 @@ theorem mem_iff_iSup_of_isClosed (hs : IsClosed s) : (∀ i, f i ∈ s) ∧ ⨆ i, f i = a := by rw [← mem_closure_iff_iSup, hs.closure_eq] -@[deprecated mem_closure_iff_iSup (since := "2026-04-05")] +@[deprecated mem_closure_iff_iSup +typeChanged (since := "2026-04-05")] theorem mem_closure_iff_bsup : a ∈ closure s ↔ ∃ (o : Ordinal) (_ho : o ≠ 0) (f : ∀ a < o, Ordinal), @@ -110,7 +110,7 @@ theorem mem_closure_iff_bsup : · rintro ⟨o, ho, f, hf, rfl⟩ exact ⟨_, by simpa, familyOfBFamily _ f, fun i ↦ hf .., iSup_eq_bsup f⟩ -@[deprecated mem_closure_iff_iSup (since := "2026-04-05")] +@[deprecated mem_closure_iff_iSup +typeChanged (since := "2026-04-05")] theorem mem_closed_iff_bsup (hs : IsClosed s) : a ∈ s ↔ ∃ (o : Ordinal) (_ho : o ≠ 0) (f : ∀ a < o, Ordinal), @@ -126,7 +126,7 @@ theorem isClosed_iff_iSup : rcases mem_closure_iff_iSup.1 hx with ⟨ι, hι, f, hf, rfl⟩ exact h hι f hf -@[deprecated isClosed_iff_iSup (since := "2026-04-05")] +@[deprecated isClosed_iff_iSup +typeChanged (since := "2026-04-05")] theorem isClosed_iff_bsup : IsClosed s ↔ ∀ {o : Ordinal}, o ≠ 0 → ∀ f : ∀ a < o, Ordinal, @@ -138,11 +138,11 @@ theorem isClosed_iff_bsup : apply H (type_ne_zero_iff_nonempty.2 hι) exact fun i hi => hf _ -@[deprecated SuccOrder.isSuccLimit_of_mem_frontier (since := "2026-01-20")] +@[deprecated SuccOrder.isSuccLimit_of_mem_frontier +typeChanged (since := "2026-01-20")] theorem isSuccLimit_of_mem_frontier (ha : a ∈ frontier s) : IsSuccLimit a := SuccOrder.isSuccLimit_of_mem_frontier ha -@[deprecated isNormal_enum_iff_dirSupClosed (since := "2026-05-25")] +@[deprecated isNormal_enum_iff_dirSupClosed +typeChanged (since := "2026-05-25")] theorem enumOrd_isNormal_iff_isClosed (hs : ¬ BddAbove s) : IsNormal (enumOrd s) ↔ IsClosed s := by have Hs := enumOrd_strictMono hs @@ -172,64 +172,64 @@ open Set Filter Set.Notation /-- An ordinal is an accumulation point of a set of ordinals if it is positive and there are elements in the set arbitrarily close to the ordinal from below. -/ -@[deprecated AccPt (since := "2026-05-24")] +@[deprecated AccPt +typeChanged (since := "2026-05-24")] def IsAcc (o : Ordinal) (S : Set Ordinal) : Prop := AccPt o (𝓟 S) /-- A set of ordinals is closed below an ordinal if it contains all of its accumulation points below the ordinal. -/ -@[deprecated IsClosed (since := "2026-05-24")] +@[deprecated IsClosed +typeChanged (since := "2026-05-24")] def IsClosedBelow (S : Set Ordinal) (o : Ordinal) : Prop := IsClosed (Iio o ↓∩ S) -@[deprecated SuccOrder.accPt_principal (since := "2026-05-24")] +@[deprecated SuccOrder.accPt_principal +typeChanged (since := "2026-05-24")] theorem isAcc_iff (o : Ordinal) (S : Set Ordinal) : o.IsAcc S ↔ o ≠ 0 ∧ ∀ p < o, (S ∩ Ioo p o).Nonempty := by apply SuccOrder.accPt_principal.trans simp -@[deprecated SuccOrder.accPt_principal (since := "2026-05-24")] +@[deprecated SuccOrder.accPt_principal +typeChanged (since := "2026-05-24")] theorem IsAcc.forall_lt {o : Ordinal} {S : Set Ordinal} (h : o.IsAcc S) : ∀ p < o, (S ∩ Ioo p o).Nonempty := ((isAcc_iff _ _).mp h).2 -@[deprecated AccPt.not_isMin (since := "2026-05-24")] +@[deprecated AccPt.not_isMin +typeChanged (since := "2026-05-24")] theorem IsAcc.pos {o : Ordinal} {S : Set Ordinal} (h : o.IsAcc S) : 0 < o := pos_iff_ne_zero.mpr ((isAcc_iff _ _).mp h).1 -@[deprecated AccPt.isSuccLimit (since := "2026-05-24")] +@[deprecated AccPt.isSuccLimit +typeChanged (since := "2026-05-24")] theorem IsAcc.isSuccLimit {o : Ordinal} {S : Set Ordinal} (h : o.IsAcc S) : IsSuccLimit o := AccPt.isSuccLimit h -@[deprecated AccPt.mono (since := "2026-05-24")] +@[deprecated AccPt.mono +typeChanged (since := "2026-05-24")] theorem IsAcc.mono {o : Ordinal} {S T : Set Ordinal} (h : S ⊆ T) (ho : o.IsAcc S) : o.IsAcc T := AccPt.mono ho (monotone_principal h) -@[deprecated SuccOrder.accPt_principal (since := "2026-05-24")] +@[deprecated SuccOrder.accPt_principal +typeChanged (since := "2026-05-24")] theorem IsAcc.inter_Ioo_nonempty {o : Ordinal} {S : Set Ordinal} (hS : o.IsAcc S) {p : Ordinal} (hp : p < o) : (S ∩ Ioo p o).Nonempty := hS.forall_lt p hp -@[deprecated IsOpenEmbedding.accPt_comap_iff (since := "2026-03-30")] +@[deprecated IsOpenEmbedding.accPt_comap_iff +typeChanged (since := "2026-03-30")] theorem accPt_subtype {p o : Ordinal} (S : Set Ordinal) (hpo : p < o) : AccPt p (𝓟 S) ↔ AccPt ⟨p, hpo⟩ (𝓟 (Iio o ↓∩ S)) := by rw [← comap_principal, isOpen_Iio.isOpenEmbedding_subtypeVal.accPt_comap_iff] -@[deprecated isClosed_iff_accPt (since := "2026-05-24")] +@[deprecated isClosed_iff_accPt +typeChanged (since := "2026-05-24")] theorem isClosedBelow_iff {S : Set Ordinal} {o : Ordinal} : IsClosedBelow S o ↔ ∀ p < o, IsAcc p S → p ∈ S := by simp [IsClosedBelow, IsAcc, isClosed_iff_accPt, ← comap_principal, isOpen_Iio.isOpenEmbedding_subtypeVal.accPt_comap_iff] -@[deprecated isClosed_iff_accPt (since := "2026-05-24")] +@[deprecated isClosed_iff_accPt +typeChanged (since := "2026-05-24")] alias ⟨IsClosedBelow.forall_lt, _⟩ := isClosedBelow_iff -@[deprecated isClosed_sInter (since := "2026-05-24")] +@[deprecated isClosed_sInter +typeChanged (since := "2026-05-24")] theorem IsClosedBelow.sInter {o : Ordinal} {S : Set (Set Ordinal)} (h : ∀ C ∈ S, IsClosedBelow C o) : IsClosedBelow (⋂₀ S) o := by rw [isClosedBelow_iff] exact fun p plto pAcc C CmemS ↦ (h C CmemS).forall_lt p plto <| AccPt.mono pAcc (monotone_principal (sInter_subset_of_mem CmemS)) -@[deprecated isClosed_iInter (since := "2026-05-24")] +@[deprecated isClosed_iInter +typeChanged (since := "2026-05-24")] theorem IsClosedBelow.iInter {ι : Type u} {f : ι → Set Ordinal} {o : Ordinal} (h : ∀ i, IsClosedBelow (f i) o) : IsClosedBelow (⋂ i, f i) o := IsClosedBelow.sInter fun _ ⟨i, hi⟩ ↦ hi ▸ (h i) diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Univ.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Univ.lean index 18efe4e0c..ed53abaee 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Univ.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Univ.lean @@ -54,7 +54,7 @@ namespace Ordinal theorem type_lt_ordinal : typeLT Ordinal = univ.{u, u + 1} := (lift_id _).symm -@[deprecated type_lt_ordinal (since := "2026-03-20")] +@[deprecated type_lt_ordinal +typeChanged (since := "2026-03-20")] theorem univ_id : univ.{u, u + 1} = typeLT Ordinal := lift_id _ @@ -102,7 +102,7 @@ theorem liftPrincipalSeg_coe : theorem liftPrincipalSeg_top : (liftPrincipalSeg.{u, v}).top = univ.{u, v} := rfl -@[deprecated liftPrincipalSeg_top (since := "2026-03-20")] +@[deprecated liftPrincipalSeg_top +typeChanged (since := "2026-03-20")] theorem liftPrincipalSeg_top' : liftPrincipalSeg.{u, u + 1}.top = typeLT Ordinal := by simp @@ -120,7 +120,7 @@ namespace Cardinal theorem mk_ordinal : #Ordinal = univ.{u, u + 1} := (lift_id _).symm -@[deprecated mk_ordinal (since := "2026-04-22")] +@[deprecated mk_ordinal +typeChanged (since := "2026-04-22")] theorem univ_id : univ.{u, u + 1} = #Ordinal := lift_id _ diff --git a/mathlib4/Mathlib/SetTheory/Ordinal/Veblen.lean b/mathlib4/Mathlib/SetTheory/Ordinal/Veblen.lean index 59689eeb8..0f406b92e 100644 --- a/mathlib4/Mathlib/SetTheory/Ordinal/Veblen.lean +++ b/mathlib4/Mathlib/SetTheory/Ordinal/Veblen.lean @@ -130,7 +130,7 @@ theorem veblenWith_add_one (o : Ordinal) : veblenWith f (o + 1) = deriv (veblenW theorem veblenWith_one : veblenWith f 1 = deriv f := by simpa using veblenWith_add_one hf 0 -@[deprecated veblenWith_add_one (since := "2026-02-26")] +@[deprecated veblenWith_add_one +typeChanged (since := "2026-02-26")] theorem veblenWith_succ (o : Ordinal) : veblenWith f (succ o) = deriv (veblenWith f o) := veblenWith_add_one hf o @@ -310,7 +310,7 @@ theorem veblen_mem_range_opow (o a : Ordinal) : veblen o a ∈ range (ω ^ · : theorem veblen_add_one (o : Ordinal) : veblen (o + 1) = deriv (veblen o) := veblenWith_add_one (isNormal_opow one_lt_omega0) o -@[deprecated veblen_add_one (since := "2026-02-26")] +@[deprecated veblen_add_one +typeChanged (since := "2026-02-26")] theorem veblen_succ (o : Ordinal) : veblen (succ o) = deriv (veblen o) := veblen_add_one o diff --git a/mathlib4/Mathlib/SetTheory/ZFC/Ordinal.lean b/mathlib4/Mathlib/SetTheory/ZFC/Ordinal.lean index 5c8eadb98..b372cd8b6 100644 --- a/mathlib4/Mathlib/SetTheory/ZFC/Ordinal.lean +++ b/mathlib4/Mathlib/SetTheory/ZFC/Ordinal.lean @@ -362,7 +362,7 @@ theorem toZFSet_zero : toZFSet 0 = ∅ := by theorem toZFSet_add_one (o : Ordinal) : toZFSet (o + 1) = insert (toZFSet o) (toZFSet o) := by aesop (add simp [mem_toZFSet_iff, le_iff_eq_or_lt]) -@[deprecated toZFSet_add_one (since := "2026-02-24")] +@[deprecated toZFSet_add_one +typeChanged (since := "2026-02-24")] theorem toZFSet_succ (o : Ordinal) : toZFSet (Order.succ o) = insert (toZFSet o) (toZFSet o) := toZFSet_add_one o diff --git a/mathlib4/Mathlib/SetTheory/ZFC/VonNeumann.lean b/mathlib4/Mathlib/SetTheory/ZFC/VonNeumann.lean index f73eb3413..a43cfbad2 100644 --- a/mathlib4/Mathlib/SetTheory/ZFC/VonNeumann.lean +++ b/mathlib4/Mathlib/SetTheory/ZFC/VonNeumann.lean @@ -120,7 +120,7 @@ theorem vonNeumann_zero : V_ 0 = ∅ := theorem vonNeumann_add_one (o : Ordinal) : V_ (o + 1) = powerset (V_ o) := ext fun z ↦ by rw [mem_vonNeumann, mem_powerset, subset_vonNeumann, lt_add_one_iff] -@[deprecated vonNeumann_add_one (since := "2026-05-25")] +@[deprecated vonNeumann_add_one +typeChanged (since := "2026-05-25")] theorem vonNeumann_succ (o : Ordinal) : V_ (succ o) = powerset (V_ o) := vonNeumann_add_one o diff --git a/mathlib4/Mathlib/Tactic/Core.lean b/mathlib4/Mathlib/Tactic/Core.lean index 8a4570139..a68e8c6a2 100644 --- a/mathlib4/Mathlib/Tactic/Core.lean +++ b/mathlib4/Mathlib/Tactic/Core.lean @@ -85,7 +85,7 @@ def MVarId.rintroWithPats (g : MVarId) (patterns : List (TSyntax `rintroPat)) return (← RCases.rintro pats none g |>.run', remaining) /-- Introduce variables, giving them names from a specified list. -/ -@[deprecated MVarId.rintroWithPats (since := "2026-04-17")] +@[deprecated MVarId.rintroWithPats +typeChanged (since := "2026-04-17")] def MVarId.introsWithBinderIdents (g : MVarId) (ids : List (TSyntax ``binderIdent)) (maxIntros? : Option Nat := none) : MetaM (List (TSyntax ``binderIdent) × Array FVarId × MVarId) := do diff --git a/mathlib4/Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Restrict.lean b/mathlib4/Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Restrict.lean index 56ccf8a30..350989abc 100644 --- a/mathlib4/Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Restrict.lean +++ b/mathlib4/Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Restrict.lean @@ -66,11 +66,11 @@ theorem isClosedEmbedding_subtype (p : Submodule R M) (hp : IsClosed (p : Set M) theorem isClosedEmbedding_subtypeL (p : Submodule R M) (hp : IsClosed (p : Set M)) : Topology.IsClosedEmbedding p.subtypeL := .subtypeVal hp -@[deprecated range_subtype (since := "2026-05-06")] +@[deprecated range_subtype +typeChanged (since := "2026-05-06")] theorem range_subtypeL (p : Submodule R M) : (p.subtypeL : p →ₗ[R] M).range = p := Submodule.range_subtype _ -@[deprecated ker_subtype (since := "2026-05-06")] +@[deprecated ker_subtype +typeChanged (since := "2026-05-06")] theorem ker_subtypeL (p : Submodule R M) : (p.subtypeL : p →ₗ[R] M).ker = ⊥ := Submodule.ker_subtype _ diff --git a/mathlib4/Mathlib/Topology/Algebra/Valued/WithVal.lean b/mathlib4/Mathlib/Topology/Algebra/Valued/WithVal.lean index 09cf26995..340de4d64 100644 --- a/mathlib4/Mathlib/Topology/Algebra/Valued/WithVal.lean +++ b/mathlib4/Mathlib/Topology/Algebra/Valued/WithVal.lean @@ -405,7 +405,7 @@ def equivWithVal (v : Valuation R Γ₀) (w : Valuation R Γ'₀) : WithVal v ≃+* WithVal w := (equiv v).trans (equiv w).symm -@[deprecated WithVal.congr_symm (since := "2026-01-27")] +@[deprecated WithVal.congr_symm +typeChanged (since := "2026-01-27")] theorem equivWithVal_symm (v : Valuation R Γ₀) (w : Valuation R Γ'₀) : (congr v w (.refl R)).symm = congr w v (.refl R) := rfl diff --git a/mathlib4/Mathlib/Topology/Bases.lean b/mathlib4/Mathlib/Topology/Bases.lean index 010e4249e..8754e6985 100644 --- a/mathlib4/Mathlib/Topology/Bases.lean +++ b/mathlib4/Mathlib/Topology/Bases.lean @@ -746,7 +746,7 @@ theorem _root_.MapClusterPt.tendsto_subseq {u : ℕ → α} (hx : MapClusterPt x ∃ ψ : ℕ → ℕ, StrictMono ψ ∧ Tendsto (u ∘ ψ) atTop (𝓝 x) := subseq_tendsto_of_neBot hx -@[deprecated MapClusterPt.tendsto_subseq (since := "2026-03-29")] +@[deprecated MapClusterPt.tendsto_subseq +typeChanged (since := "2026-03-29")] theorem FirstCountableTopology.tendsto_subseq {u : ℕ → α} {x : α} (hx : MapClusterPt x atTop u) : ∃ ψ : ℕ → ℕ, StrictMono ψ ∧ Tendsto (u ∘ ψ) atTop (𝓝 x) := subseq_tendsto_of_neBot hx diff --git a/mathlib4/Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean b/mathlib4/Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean index 301818c1c..b6464aed9 100644 --- a/mathlib4/Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean +++ b/mathlib4/Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean @@ -66,7 +66,7 @@ lemma Matrix.fin_two_smul_prod (g : Matrix (Fin 2) (Fin 2) R) (v : R × R) : g • v = (g 0 0 * v.1 + g 0 1 * v.2, g 1 0 * v.1 + g 1 1 * v.2) := by simp [Equiv.smul_def, smul_eq_mulVec, Matrix.mulVec_eq_sum] -@[deprecated Matrix.GeneralLinearGroup.fin_two_smul (since := "2026-04-19")] +@[deprecated Matrix.GeneralLinearGroup.fin_two_smul +typeChanged (since := "2026-04-19")] lemma Matrix.GeneralLinearGroup.fin_two_smul_prod {R : Type*} [CommRing R] (g : GL (Fin 2) R) (v : R × R) : g • v = (g 0 0 * v.1 + g 0 1 * v.2, g 1 0 * v.1 + g 1 1 * v.2) := by diff --git a/mathlib4/Mathlib/Topology/Connected/Clopen.lean b/mathlib4/Mathlib/Topology/Connected/Clopen.lean index 4a8f04efc..2888b34c4 100644 --- a/mathlib4/Mathlib/Topology/Connected/Clopen.lean +++ b/mathlib4/Mathlib/Topology/Connected/Clopen.lean @@ -475,7 +475,8 @@ theorem Topology.IsCoinducing.isConnected_preimage_of_isClosed from (this.trans T₂_v.1).trans inter_subset_right exact preimage_mono h -@[deprecated Topology.IsCoinducing.isConnected_preimage_of_isClosed (since := "2026-04-01")] +@[deprecated Topology.IsCoinducing.isConnected_preimage_of_isClosed + +typeChanged (since := "2026-04-01")] theorem preimage_connectedComponent_connected (connected_fibers : ∀ t : β, IsConnected (f ⁻¹' {t})) (hcl : IsCoinducing f) (t : β) : IsConnected (f ⁻¹' connectedComponent t) := by diff --git a/mathlib4/Mathlib/Topology/DiscreteSubset.lean b/mathlib4/Mathlib/Topology/DiscreteSubset.lean index 7db1a6b74..1c59209be 100644 --- a/mathlib4/Mathlib/Topology/DiscreteSubset.lean +++ b/mathlib4/Mathlib/Topology/DiscreteSubset.lean @@ -517,14 +517,14 @@ theorem IsDiscrete.biUnion_finset {ι : Type*} {I : Finset ι} {s : ι → Set X .biUnion I.finite_toSet hs hsc /-- The union of finitely many discrete closed subsets is discrete. -/ -@[deprecated IsDiscrete.union (since := "2026-05-13")] +@[deprecated IsDiscrete.union +typeChanged (since := "2026-05-13")] theorem discreteTopology_union {S T : Set X} (hs : DiscreteTopology S) (ht : DiscreteTopology T) (hs' : IsClosed S) (ht' : IsClosed T) : DiscreteTopology ↑(S ∪ T) := by rw [← isDiscrete_iff_discreteTopology] at * exact hs.union ht hs' ht' /-- The union of finitely many discrete closed subsets is discrete. -/ -@[deprecated IsDiscrete.biUnion_finset (since := "2026-05-13")] +@[deprecated IsDiscrete.biUnion_finset +typeChanged (since := "2026-05-13")] theorem discreteTopology_biUnion_finset {ι : Type*} {I : Finset ι} {s : ι → Set X} (hs : ∀ i ∈ I, DiscreteTopology (s i)) (hs' : ∀ i ∈ I, IsClosed (s i)) : DiscreteTopology (⋃ i ∈ I, s i) := by @@ -532,7 +532,7 @@ theorem discreteTopology_biUnion_finset {ι : Type*} {I : Finset ι} {s : ι → exact .biUnion_finset hs hs' /-- The union of finitely many discrete closed subsets is discrete. -/ -@[deprecated IsDiscrete.iUnion (since := "2026-05-13")] +@[deprecated IsDiscrete.iUnion +typeChanged (since := "2026-05-13")] theorem discreteTopology_iUnion_finite {ι : Type*} [Finite ι] {s : ι → Set X} (hs : ∀ i, DiscreteTopology (s i)) (hs' : ∀ i, IsClosed (s i)) : DiscreteTopology (⋃ i, s i) := by diff --git a/mathlib4/Mathlib/Topology/EMetricSpace/Basic.lean b/mathlib4/Mathlib/Topology/EMetricSpace/Basic.lean index 2f755e399..d9adcb2a5 100644 --- a/mathlib4/Mathlib/Topology/EMetricSpace/Basic.lean +++ b/mathlib4/Mathlib/Topology/EMetricSpace/Basic.lean @@ -87,7 +87,7 @@ theorem controlled_of_isUniformInducing [PseudoEMetricSpace β] {f : α → β} ∀ δ > 0, ∃ ε > 0, ∀ {a b : α}, edist (f a) (f b) < ε → edist a b < δ := ⟨uniformContinuous_iff.1 h.uniformContinuous, (isUniformInducing_iff.1 h).2⟩ -@[deprecated controlled_of_isUniformInducing (since := "2026-04-01")] +@[deprecated controlled_of_isUniformInducing +typeChanged (since := "2026-04-01")] theorem controlled_of_isUniformEmbedding [PseudoEMetricSpace β] {f : α → β} (h : IsUniformEmbedding f) : (∀ ε > 0, ∃ δ > 0, ∀ {a b : α}, edist a b < δ → edist (f a) (f b) < ε) ∧ diff --git a/mathlib4/Mathlib/Topology/EMetricSpace/BoundedVariation.lean b/mathlib4/Mathlib/Topology/EMetricSpace/BoundedVariation.lean index 174e0498c..ab793cc03 100644 --- a/mathlib4/Mathlib/Topology/EMetricSpace/BoundedVariation.lean +++ b/mathlib4/Mathlib/Topology/EMetricSpace/BoundedVariation.lean @@ -1189,7 +1189,7 @@ theorem MonotoneOn.eVariationOn_eq (hf : MonotoneOn f s) (as : a ∈ s) (bs : b grw [← h.dist_le (x := a) (y := b)] <;> grind [Real.dist_eq] · simp [hab, hf bs as hab.le] -@[deprecated MonotoneOn.eVariationOn_eq (since := "2026-07-08")] +@[deprecated MonotoneOn.eVariationOn_eq +typeChanged (since := "2026-07-08")] theorem MonotoneOn.eVariationOn_le (hf : MonotoneOn f s) (as : a ∈ s) (bs : b ∈ s) : eVariationOn f (s ∩ Icc a b) ≤ .ofReal (f b - f a) := (hf.eVariationOn_eq as bs).le diff --git a/mathlib4/Mathlib/Topology/Instances/NNReal/Lemmas.lean b/mathlib4/Mathlib/Topology/Instances/NNReal/Lemmas.lean index cd1f53297..4e599f960 100644 --- a/mathlib4/Mathlib/Topology/Instances/NNReal/Lemmas.lean +++ b/mathlib4/Mathlib/Topology/Instances/NNReal/Lemmas.lean @@ -229,13 +229,13 @@ def powOrderIso (n : ℕ) (hn : n ≠ 0) : ℝ≥0 ≃o ℝ≥0 := section Monotone /-- A monotone, bounded above sequence `f : ℕ → ℝ` has a finite limit. -/ -@[deprecated tendsto_atTop_ciSup (since := "2026-01-14")] +@[deprecated tendsto_atTop_ciSup +typeChanged (since := "2026-01-14")] theorem _root_.Real.tendsto_of_bddAbove_monotone {f : ℕ → ℝ} (h_bdd : BddAbove (Set.range f)) (h_mon : Monotone f) : ∃ r : ℝ, Tendsto f atTop (𝓝 r) := ⟨iSup f, tendsto_atTop_ciSup h_mon h_bdd⟩ /-- An antitone, bounded below sequence `f : ℕ → ℝ` has a finite limit. -/ -@[deprecated tendsto_atTop_ciInf (since := "2026-01-14")] +@[deprecated tendsto_atTop_ciInf +typeChanged (since := "2026-01-14")] theorem _root_.Real.tendsto_of_bddBelow_antitone {f : ℕ → ℝ} (h_bdd : BddBelow (Set.range f)) (h_ant : Antitone f) : ∃ r : ℝ, Tendsto f atTop (𝓝 r) := ⟨iInf f, tendsto_atTop_ciInf h_ant h_bdd⟩ @@ -243,7 +243,7 @@ theorem _root_.Real.tendsto_of_bddBelow_antitone {f : ℕ → ℝ} (h_bdd : BddB variable {ι : Type*} [Preorder ι] /-- An antitone sequence `f : ℕ → ℝ≥0` has a finite limit. -/ -@[deprecated tendsto_atTop_ciInf (since := "2026-01-14")] +@[deprecated tendsto_atTop_ciInf +typeChanged (since := "2026-01-14")] theorem tendsto_of_antitone {f : ℕ → ℝ≥0} (h_ant : Antitone f) : ∃ r : ℝ≥0, Tendsto f atTop (𝓝 r) := ⟨iInf f, tendsto_atTop_ciInf h_ant (by simp)⟩ diff --git a/mathlib4/Mathlib/Topology/MetricSpace/Pseudo/Basic.lean b/mathlib4/Mathlib/Topology/MetricSpace/Pseudo/Basic.lean index 0d1a66687..3df47b95e 100644 --- a/mathlib4/Mathlib/Topology/MetricSpace/Pseudo/Basic.lean +++ b/mathlib4/Mathlib/Topology/MetricSpace/Pseudo/Basic.lean @@ -85,7 +85,7 @@ theorem controlled_of_isUniformInducing [PseudoMetricSpace β] {f : α → β} ∀ δ > 0, ∃ ε > 0, ∀ {a b : α}, dist (f a) (f b) < ε → dist a b < δ := ⟨uniformContinuous_iff.1 h.uniformContinuous, (isUniformInducing_iff.1 h).2⟩ -@[deprecated controlled_of_isUniformInducing (since := "2026-04-01")] +@[deprecated controlled_of_isUniformInducing +typeChanged (since := "2026-04-01")] theorem controlled_of_isUniformEmbedding [PseudoMetricSpace β] {f : α → β} (h : IsUniformEmbedding f) : (∀ ε > 0, ∃ δ > 0, ∀ {a b : α}, dist a b < δ → dist (f a) (f b) < ε) ∧ diff --git a/mathlib4/Mathlib/Topology/Order.lean b/mathlib4/Mathlib/Topology/Order.lean index 4476de9fd..751367fd9 100644 --- a/mathlib4/Mathlib/Topology/Order.lean +++ b/mathlib4/Mathlib/Topology/Order.lean @@ -755,16 +755,18 @@ theorem TopologicalSpace.nontrivial_iff_exists_not_inseparable {t : TopologicalS alias ⟨NontrivialTopology.exists_not_inseparable, NontrivialTopology.of_exists_not_inseparable⟩ := TopologicalSpace.nontrivial_iff_exists_not_inseparable -@[deprecated Inseparable.all (since := "2026-01-21")] +@[deprecated Inseparable.all +typeChanged (since := "2026-01-21")] theorem inseparable_top (x y : α) : @Inseparable α ⊤ x y := @Inseparable.all _ ⊤ _ x y -@[deprecated TopologicalSpace.indiscrete_iff_forall_inseparable (since := "2026-01-21")] +@[deprecated TopologicalSpace.indiscrete_iff_forall_inseparable + +typeChanged (since := "2026-01-21")] theorem TopologicalSpace.eq_top_iff_forall_inseparable {t : TopologicalSpace α} : t = ⊤ ↔ (∀ x y : α, Inseparable x y) := by rw [← TopologicalSpace.indiscrete_iff_forall_inseparable, indiscreteTopology_iff] -@[deprecated TopologicalSpace.nontrivial_iff_exists_not_inseparable (since := "2026-01-21")] +@[deprecated TopologicalSpace.nontrivial_iff_exists_not_inseparable + +typeChanged (since := "2026-01-21")] theorem TopologicalSpace.ne_top_iff_exists_not_inseparable {t : TopologicalSpace α} : t ≠ ⊤ ↔ ∃ x y : α, ¬Inseparable x y := by rw [← TopologicalSpace.nontrivial_iff_exists_not_inseparable, nontrivialTopology_iff]