ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Mathlib/Algebra/Homology/Localization.lean
C : Type u_1
D : Type u_2
inst✝¹² : Category.{u_4, u_1} C
inst✝¹¹ : Category.{u_6, u_2} D
F : C ⥤ D
ι : Type u_3
c : ComplexShape ι
inst✝¹⁰ : Preadditive C
inst✝⁹ : Preadditive D
inst✝⁸ : CategoryWithHomology C
inst✝⁷ : CategoryWithHomology D
inst✝⁶ : (HomologicalComplex.quasiIso C c).HasLocalization
inst✝⁵ : (HomologicalComplex.quasiIso D c).HasLocalization
inst✝⁴ : F.Additive
inst✝³ : F.PreservesHomology
inst✝² : c.QFactorsThroughHomotopy C
inst✝¹ : c.QFactorsThroughHomotopy D
inst✝ : (HomotopyCategory.quotient C c).IsLocalization (HomologicalComplex.homotopyEquivalences C c)
K : HomologicalComplex C c

⊢ (F.mapHomologicalComplexUpToQuasiIsoFactors c).hom.app K = (F.mapHomologicalComplexUpToQuasiIso c).map ((HomologicalComplexUpToQuasiIso.quotientCompQhIso C c).hom.app K) ≫ (F.mapHomologicalComplexUpToQuasiIsoFactors c).hom.app K ≫ (HomologicalComplexUpToQuasiIso.quotientCompQhIso D c).inv.app ((F.mapHomologicalComplex c).obj K) ≫ HomologicalComplexUpToQuasiIso.Qh.map ((F.mapHomotopyCategoryFactors c).inv.app K)
-- Mathlib/Algebra/Homology/Localization.lean
C : Type u_1
D : Type u_2
inst✝¹² : Category.{u_4, u_1} C
inst✝¹¹ : Category.{u_6, u_2} D
F : C ⥤ D
ι : Type u_3
c : ComplexShape ι
inst✝¹⁰ : Preadditive C
inst✝⁹ : Preadditive D
inst✝⁸ : CategoryWithHomology C
inst✝⁷ : CategoryWithHomology D
inst✝⁶ : (HomologicalComplex.quasiIso C c).HasLocalization
inst✝⁵ : (HomologicalComplex.quasiIso D c).HasLocalization
inst✝⁴ : F.Additive
inst✝³ : F.PreservesHomology
inst✝² : c.QFactorsThroughHomotopy C
inst✝¹ : c.QFactorsThroughHomotopy D
inst✝ : (HomotopyCategory.quotient C c).IsLocalization (HomologicalComplex.homotopyEquivalences C c)
K : HomologicalComplex C c

⊢ (F.mapHomologicalComplexUpToQuasiIsoFactors c).hom.app K = (F.mapHomologicalComplexUpToQuasiIso c).map (𝟙 (HomologicalComplexUpToQuasiIso.Qh.obj ((HomotopyCategory.quotient C c).obj K))) ≫ (F.mapHomologicalComplexUpToQuasiIsoFactors c).hom.app K ≫ 𝟙 (HomologicalComplexUpToQuasiIso.Qh.obj ((F.mapHomotopyCategory c).obj ((HomotopyCategory.quotient C c).obj K))) ≫ HomologicalComplexUpToQuasiIso.Qh.map (𝟙 ((F.mapHomotopyCategory c).obj ((HomotopyCategory.quotient C c).obj K)))
-- Mathlib/Analysis/Normed/Ring/SeminormFromBounded.lean
R : Type u_1
inst✝ : CommRing R
f : R → ℝ
c : ℝ
f_nonneg : 0 ≤ f
f_mul : ∀ (x y : R), f (x * y) ≤ c * f x * f y
x : R

⊢ BddAbove (Set.range fun y => f (x * y) / f y)
-- Mathlib/Analysis/Normed/Ring/SeminormFromBounded.lean
R : Type u_1
inst✝ : CommRing R
f : R → ℝ
c : ℝ
f_nonneg : 0 ≤ f
f_mul : ∀ (x y : R), f (x * y) ≤ c * f x * f y
x : R

⊢ c * f x ∈ upperBounds (Set.range fun y => f (x * y) / f y)
-- Mathlib/CategoryTheory/Category/Cat/Limit.lean
J : Type v
inst✝ : SmallCategory J
F : J ⥤ Cat
X Y Z : limit (F ⋙ objects)
f : X ⟶ Y
g : Y ⟶ Z
j j' : J
h : j ⟶ j'

⊢ (homDiagram X Z).map h ((fun j => limit.π (homDiagram X Y) j f ≫ limit.π (homDiagram Y Z) j g) j) = (fun j => limit.π (homDiagram X Y) j f ≫ limit.π (homDiagram Y Z) j g) j'
-- Mathlib/CategoryTheory/Category/Cat/Limit.lean
J : Type v
inst✝ : SmallCategory J
F : J ⥤ Cat
X✝ Y✝ : limit (F ⋙ objects)
x✝ : X✝ ⟶ Y✝

⊢ 𝟙 X✝ ≫ x✝ = x✝
-- Mathlib/CategoryTheory/Category/Cat/Limit.lean
J : Type v
inst✝ : SmallCategory J
F : J ⥤ Cat
X✝ Y✝ : limit (F ⋙ objects)
x✝ : X✝ ⟶ Y✝

⊢ ∀ (j : J), limit.π (homDiagram X✝ Y✝) j (𝟙 X✝ ≫ x✝) = limit.π (homDiagram X✝ Y✝) j x✝
-- Mathlib/CategoryTheory/Category/Cat/Limit.lean
J : Type v
inst✝ : SmallCategory J
F : J ⥤ Cat
X✝ Y✝ : limit (F ⋙ objects)
x✝ : X✝ ⟶ Y✝

⊢ x✝ ≫ 𝟙 Y✝ = x✝
-- Mathlib/CategoryTheory/Category/Cat/Limit.lean
J : Type v
inst✝ : SmallCategory J
F : J ⥤ Cat
X✝ Y✝ : limit (F ⋙ objects)
x✝ : X✝ ⟶ Y✝

⊢ ∀ (j : J), limit.π (homDiagram X✝ Y✝) j (x✝ ≫ 𝟙 Y✝) = limit.π (homDiagram X✝ Y✝) j x✝
-- Mathlib/NumberTheory/Cyclotomic/Basic.lean
n : ℕ+
S T : Set ℕ+
A : Type u
B : Type v
K : Type w
L : Type z
inst✝⁵ : CommRing A
inst✝⁴ : CommRing B
inst✝³ : Algebra A B
inst✝² : Field K
inst✝¹ : Field L
inst✝ : Algebra K L
h : IsCyclotomicExtension (S ∪ T) A B
this : {b | ∃ n ∈ S ∪ T, b ^ ↑n = 1} = {b | ∃ n ∈ S, b ^ ↑n = 1} ∪ {b | ∃ n ∈ T, b ^ ↑n = 1}

⊢ IsCyclotomicExtension T (↥(adjoin A {b | ∃ a ∈ S, b ^ ↑a = 1})) B
-- Mathlib/NumberTheory/Cyclotomic/Basic.lean
n : ℕ+
S T : Set ℕ+
A : Type u
B : Type v
K : Type w
L : Type z
inst✝⁵ : CommRing A
inst✝⁴ : CommRing B
inst✝³ : Algebra A B
inst✝² : Field K
inst✝¹ : Field L
inst✝ : Algebra K L
h : IsCyclotomicExtension (S ∪ T) A B
this : {b | ∃ n ∈ S ∪ T, b ^ ↑n = 1} = {b | ∃ n ∈ S, b ^ ↑n = 1} ∪ {b | ∃ n ∈ T, b ^ ↑n = 1}
b : B

⊢ b ∈ adjoin ↥(adjoin A {b | ∃ a ∈ S, b ^ ↑a = 1}) {b | ∃ n ∈ T, b ^ ↑n = 1}
-- Mathlib/NumberTheory/Cyclotomic/Basic.lean
n : ℕ+
S T : Set ℕ+
A : Type u
B : Type v
K : Type w
L : Type z
inst✝⁵ : CommRing A
inst✝⁴ : CommRing B
inst✝³ : Algebra A B
inst✝² : Field K
inst✝¹ : Field L
inst✝ : Algebra K L
this : {b | ∃ n ∈ S ∪ T, b ^ ↑n = 1} = {b | ∃ n ∈ S, b ^ ↑n = 1} ∪ {b | ∃ n ∈ T, b ^ ↑n = 1}
b : B
h : b ∈ adjoin A {b | ∃ n ∈ S ∪ T, b ^ ↑n = 1}

⊢ b ∈ adjoin ↥(adjoin A {b | ∃ a ∈ S, b ^ ↑a = 1}) {b | ∃ n ∈ T, b ^ ↑n = 1}
-- Mathlib/Order/Filter/Extr.lean
α : Type u
β : Type v
γ : Type w
δ : Type x
inst✝ : OrderedAddCommGroup β
f g : α → β
a : α
s : Set α
l : Filter α
hf : IsMinOn f s a
hg : IsMaxOn g s a

⊢ IsMinOn (fun x => f x - g x) s a
-- Mathlib/Algebra/Polynomial/Roots.lean
R : Type u
S : Type v
T : Type w
a b : R
n : ℕ
inst✝² : CommRing R
inst✝¹ : IsDomain R
p✝ q : R[X]
inst✝ : Infinite R
p : R[X]
h : ∀ (x : R), eval x p = 0

⊢ p = 0
-- Mathlib/Analysis/Convex/Normed.lean
ι : Type u_1
E : Type u_2
P : Type u_3
inst✝³ : SeminormedAddCommGroup E
inst✝² : NormedSpace ℝ E
inst✝¹ : PseudoMetricSpace P
inst✝ : NormedAddTorsor E P
s t : Set E
a : E
r : ℝ

⊢ Convex ℝ (closedBall a r)
-- Mathlib/MeasureTheory/Decomposition/Lebesgue.lean
α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ✝ ν✝ μ ν : Measure α
inst✝ : μ.HaveLebesgueDecomposition ν

⊢ ν.withDensity (μ.rnDeriv ν) + μ.singularPart ν = μ
-- Mathlib/Order/RelIso/Basic.lean
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
r : α → α → Prop
s : β → β → Prop
t : γ → γ → Prop
u : δ → δ → Prop
f : r ↪r s
b : β
a : α
H : ∀ (y : β), s y (f a) → Acc s y
IH : ∀ (y : β), s y (f a) → ∀ (a : α), f a = y → Acc r a

⊢ Acc r a
-- Mathlib/Data/Finsupp/Defs.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
M : Type u_5
M' : Type u_6
N : Type u_7
P : Type u_8
G : Type u_9
H : Type u_10
R : Type u_11
S : Type u_12
inst✝ : Zero M
a a' : α
b b' : M
hb : b ≠ 0
hb' : b' ≠ 0
i j : α

⊢ Disjoint (single i b).support (single j b').support ↔ i ≠ j
-- Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean
E : Type u_1
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace ℝ E
inst✝⁶ : MeasurableSpace E
inst✝⁵ : BorelSpace E
inst✝⁴ : FiniteDimensional ℝ E
μ : Measure E
inst✝³ : μ.IsAddHaarMeasure
F : Type u_2
inst✝² : NormedAddCommGroup F
inst✝¹ : NormedSpace ℝ F
inst✝ : CompleteSpace F
r : ℝ
hr : 0 ≤ r
s : Set E

⊢ μ (r • s) = ENNReal.ofReal (r ^ finrank ℝ E) * μ s
-- Mathlib/SetTheory/Cardinal/Ordinal.lean
c : Cardinal.{u_1}
h : ℵ₀ ≤ c

⊢ c = aleph (c.alephIdx - ω)
-- Mathlib/SetTheory/Cardinal/Ordinal.lean
c : Cardinal.{u_1}
h : ℵ₀ ≤ c

⊢ ω ≤ c.alephIdx
-- Mathlib/Algebra/Associated/Basic.lean
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
M : Type u_5
N : Type u_6
inst✝³ : Monoid M
inst✝² : Monoid N
F : Type u_7
inst✝¹ : FunLike F M N
inst✝ : MonoidHomClass F M N
f : F
x y : M
u : Mˣ
ha : x * ↑u = y

⊢ f x ~ᵤ f y
-- Mathlib/Data/Fin/Basic.lean
n✝ m : ℕ
p : Fin (n✝ + 1)
i✝ j✝ : Fin n✝
n : ℕ
i : Fin (n + 1)
j : Fin n

⊢ i.castSucc.succAbove j.castSucc = (i.succAbove j).castSucc
-- Mathlib/Data/Fin/Basic.lean
n✝ m : ℕ
p : Fin (n✝ + 1)
i✝ j✝ : Fin n✝
n : ℕ
i : Fin (n + 1)
j : Fin n
h : i ≤ j.castSucc

⊢ i.castSucc.succAbove j.castSucc = (i.succAbove j).castSucc
-- Mathlib/Data/Fin/Basic.lean
n✝ m : ℕ
p : Fin (n✝ + 1)
i✝ j✝ : Fin n✝
n : ℕ
i : Fin (n + 1)
j : Fin n
h : j.castSucc < i

⊢ i.castSucc.succAbove j.castSucc = (i.succAbove j).castSucc
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R

⊢ spanNorm R (I * J) = spanNorm R I * spanNorm R J
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Subsingleton S

⊢ spanNorm R (I * J) = spanNorm R I * spanNorm R J
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S

⊢ spanNorm R (I * J) = spanNorm R I * spanNorm R J
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S

⊢ ∀ (P : Ideal R) (x : P.IsMaximal), map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝ : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this : IsScalarTower R (Localization.AtPrime P) (Localization P')

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝ : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this : IsScalarTower R (Localization.AtPrime P) (Localization P')
h : P' ≤ S⁰

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝¹ : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this✝ : IsScalarTower R (Localization.AtPrime P) (Localization P')
h : P' ≤ S⁰
this : IsDomain (Localization P')

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝² : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this✝¹ : IsScalarTower R (Localization.AtPrime P) (Localization P')
h : P' ≤ S⁰
this✝ : IsDomain (Localization P')
this : IsDedekindDomain (Localization P')

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝³ : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this✝² : IsScalarTower R (Localization.AtPrime P) (Localization P')
h : P' ≤ S⁰
this✝¹ : IsDomain (Localization P')
this✝ : IsDedekindDomain (Localization P')
this : DecidableEq (Ideal (Localization P')) := Classical.decEq (Ideal (Localization P'))

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/RingTheory/Ideal/Norm.lean
R : Type u_1
inst✝⁹ : CommRing R
S : Type u_2
inst✝⁸ : CommRing S
inst✝⁷ : Algebra R S
inst✝⁶ : IsDomain R
inst✝⁵ : IsDomain S
inst✝⁴ : IsDedekindDomain R
inst✝³ : IsDedekindDomain S
inst✝² : Module.Finite R S
inst✝¹ : Module.Free R S
I J : Ideal S
inst✝ : Nontrivial R
h✝ : Nontrivial S
P : Ideal R
hP : P.IsMaximal
hP0 : ¬P = ⊥
P' : Submonoid S := Algebra.algebraMapSubmonoid S P.primeCompl
this✝⁴ : Algebra (Localization.AtPrime P) (Localization P') := localizationAlgebra P.primeCompl S
this✝³ : IsScalarTower R (Localization.AtPrime P) (Localization P')
h : P' ≤ S⁰
this✝² : IsDomain (Localization P')
this✝¹ : IsDedekindDomain (Localization P')
this✝ : DecidableEq (Ideal (Localization P')) := Classical.decEq (Ideal (Localization P'))
this : IsPrincipalIdealRing (Localization P')

⊢ map (algebraMap R (Localization.AtPrime P)) (spanNorm R (I * J)) = map (algebraMap R (Localization.AtPrime P)) (spanNorm R I * spanNorm R J)
-- Mathlib/Data/Seq/WSeq.lean
α : Type u
β : Type v
γ : Type w
s : Seq α

⊢ (↑s).destruct.destruct = Sum.inl (Option.map (fun a => (a, ↑s.tail)) s.head)
-- Mathlib/Data/Seq/WSeq.lean
α : Type u
β : Type v
γ : Type w
s : Seq α

⊢ (match match Option.map (fun a' => (a', (some <$> s).tail)) ((some <$> s).get? 0) with | none => Sum.inl none | some (none, s') => Sum.inr s' | some (some a, s') => Sum.inl (some (a, s')) with | Sum.inl a => Sum.inl a | Sum.inr b => Sum.inr (Computation.corec (fun s => match Option.map (fun a' => (a', Seq.tail s)) (Seq.get? s 0) with | none => Sum.inl none | some (none, s') => Sum.inr s' | some (some a, s') => Sum.inl (some (a, s'))) b)) = Sum.inl (Option.map (fun a => (a, some <$> s.tail)) (s.get? 0))
-- Mathlib/Data/Seq/WSeq.lean
α : Type u
β : Type v
γ : Type w
s : Seq α

⊢ (match match Option.map (fun a' => (a', (some <$> s).tail)) (some <$> s.get? 0) with | none => Sum.inl none | some (none, s') => Sum.inr s' | some (some a, s') => Sum.inl (some (a, s')) with | Sum.inl a => Sum.inl a | Sum.inr b => Sum.inr (Computation.corec (fun s => match Option.map (fun a' => (a', Seq.tail s)) (Seq.get? s 0) with | none => Sum.inl none | some (none, s') => Sum.inr s' | some (some a, s') => Sum.inl (some (a, s'))) b)) = Sum.inl (Option.map (fun a => (a, some <$> s.tail)) (s.get? 0))
-- Mathlib/Probability/Independence/Basic.lean
Ω : Type u_1
ι : Type u_2
β : Type u_3
γ : Type u_4
κ : ι → Type u_5
π : ι → Set (Set Ω)
m✝ : ι → MeasurableSpace Ω
x✝ : MeasurableSpace Ω
μ✝ : Measure Ω
S : Finset ι
s : ι → Set Ω
m : ι → MeasurableSpace Ω
_mΩ : MeasurableSpace Ω
μ : Measure Ω

⊢ iIndep m μ ↔ ∀ (s : Finset ι) {f : ι → Set Ω}, (∀ i ∈ s, MeasurableSet (f i)) → μ (⋂ i ∈ s, f i) = ∏ i ∈ s, μ (f i)
-- Mathlib/Probability/Independence/Basic.lean
Ω : Type u_1
ι : Type u_2
β : Type u_3
γ : Type u_4
κ : ι → Type u_5
π : ι → Set (Set Ω)
m✝ : ι → MeasurableSpace Ω
x✝ : MeasurableSpace Ω
μ✝ : Measure Ω
S : Finset ι
s : ι → Set Ω
m : ι → MeasurableSpace Ω
_mΩ : MeasurableSpace Ω
μ : Measure Ω

⊢ (∀ (s : Finset ι) {f : ι → Set Ω}, (∀ i ∈ s, f i ∈ {s | MeasurableSet s}) → μ (⋂ i ∈ s, f i) = ∏ i ∈ s, μ (f i)) ↔ ∀ (s : Finset ι) {f : ι → Set Ω}, (∀ i ∈ s, MeasurableSet (f i)) → μ (⋂ i ∈ s, f i) = ∏ i ∈ s, μ (f i)
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε

⊢ (increment hP G ε).parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α

⊢ (increment hP G ε).parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ (increment hP G ε).parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ∑ A ∈ P.parts.attach, (chunk hP G ε ⋯).parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ∑ x ∈ (filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).attach, (equitabilise ⋯).parts.card + ∑ x ∈ (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).attach, (equitabilise ⋯).parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ (filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card * ?m.16076 + (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card * ?m.16115 = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ∀ x ∈ (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).attach, (equitabilise ⋯).parts.card = ?m.16115
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ℕ
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ∀ x ∈ (filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).attach, (equitabilise ⋯).parts.card = ?m.16076
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ (filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card * (4 ^ P.parts.card - (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card) + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) + (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card * (4 ^ P.parts.card - (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card + 1) + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card + 1)) = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ ((filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card + (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card) * 4 ^ P.parts.card = stepBound P.parts.card
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean
α : Type u_1
inst✝² : Fintype α
inst✝¹ : DecidableEq α
P : Finpartition univ
hP : P.IsEquipartition
G : SimpleGraph α
inst✝ : DecidableRel G.Adj
ε : ℝ
hPα : P.parts.card * 16 ^ P.parts.card ≤ Fintype.card α
hPG : ¬P.IsUniform G ε
hPα' : stepBound P.parts.card ≤ Fintype.card α
hPpos : 0 < stepBound P.parts.card

⊢ (filter (fun x => (↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card + (filter (fun x => ¬(↑x).card = m * 4 ^ P.parts.card + (Fintype.card α / P.parts.card - m * 4 ^ P.parts.card)) P.parts.attach).card = P.parts.card