ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Mathlib/Algebra/GeomSum.lean
α✝ α : Type u
inst✝ : Ring α
x y : α
h : Commute x y
n : ℕ

⊢ ∑ i ∈ range n, x ^ i * y ^ (n - i) = ∑ x_1 ∈ range n, x ^ x_1 * y ^ (n - 1 - x_1 + 1)
-- Mathlib/Algebra/GeomSum.lean
α✝ α : Type u
inst✝ : Ring α
x y : α
h : Commute x y
n i : ℕ
hi : i ∈ range n

⊢ x ^ i * y ^ (n - i) = x ^ i * y ^ (n - 1 - i + 1)
-- Mathlib/Data/Set/Image.lean
α : Type u_1
s : Set α

⊢ val ⁻¹' s = univ
-- Mathlib/RingTheory/RingHom/FiniteType.lean
R S : Type u_1
inst✝³ : CommRing R
inst✝² : CommRing S
inst✝¹ : Algebra R S
r : R
inst✝ : IsLocalization.Away r S

⊢ (algebraMap R S).FiniteType
-- Mathlib/RingTheory/RingHom/FiniteType.lean
R S : Type u_1
inst✝³ : CommRing R
inst✝² : CommRing S
inst✝¹ : Algebra R S
r : R
inst✝ : IsLocalization.Away r S

⊢ Algebra.FiniteType R S
-- Mathlib/Data/Set/Lattice.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
inst✝ : SemilatticeSup α
s : α → Set β
t : α → Set γ
hs : Monotone s
ht : Monotone t
z : β
w : γ

⊢ (z, w) ∈ ⋃ x, s x ×ˢ t x ↔ (z, w) ∈ (⋃ x, s x) ×ˢ ⋃ x, t x
-- Mathlib/Data/Set/Lattice.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
inst✝ : SemilatticeSup α
s : α → Set β
t : α → Set γ
hs : Monotone s
ht : Monotone t
z : β
w : γ

⊢ (∀ (x : α), z ∈ s x → w ∈ t x → (∃ i, z ∈ s i) ∧ ∃ i, w ∈ t i) ∧ ∀ (x : α), z ∈ s x → ∀ (x : α), w ∈ t x → ∃ i, z ∈ s i ∧ w ∈ t i
-- Mathlib/Order/UpperLower/Basic.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
κ : ι → Sort u_5
inst✝ : LE α
S : Set (LowerSet α)
s t : LowerSet α
a : α

⊢ ↑s = univ ↔ s = ⊤
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x : α
p : Filter ι
g : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
h_cover : ∃ I, I.Finite ∧ ⋃ i ∈ I, range (φ i) = univ

⊢ 𝓤 (α →ᵤ β) = 𝓤 (α →ᵤ β)
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x : α
p : Filter ι
g : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
h_cover : ∃ I, I.Finite ∧ ⋃ i ∈ I, range (φ i) = univ

⊢ 𝓤 (α →ᵤ β) = ⨅ i, comap (Prod.map (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun) (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun)) (𝓤 (δ i →ᵤ β))
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x : α
p : Filter ι
g : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
h_cover : ∃ I, I.Finite ∧ ⋃ i ∈ I, range (φ i) = univ

⊢ ⨅ i, comap (Prod.map (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun) (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun)) (𝓤 (δ i →ᵤ β)) ≤ 𝓤 (α →ᵤ β)
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x : α
p : Filter ι
g : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
I : Set ι
I_finite : I.Finite
I_cover : ⋃ i ∈ I, range (φ i) = univ

⊢ ⨅ i, comap (Prod.map (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun) (⇑ofFun ∘ (fun x => x ∘ φ i) ∘ ⇑toFun)) (𝓤 (δ i →ᵤ β)) ≤ 𝓤 (α →ᵤ β)
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x✝¹ : α
p : Filter ι
g✝ : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
I : Set ι
I_finite : I.Finite
I_cover : ⋃ i ∈ I, range (φ i) = univ
U : Set (β × β)
hU : U ∈ 𝓤 β
x✝ : (α →ᵤ β) × (α →ᵤ β)
x : α
f g : α →ᵤ β
hfg : (f, g) ∈ ⋂ i, Prod.map (⇑ofFun ∘ (fun x => x ∘ φ ↑i) ∘ ⇑toFun) (⇑ofFun ∘ (fun x => x ∘ φ ↑i) ∘ ⇑toFun) ⁻¹' UniformFun.gen (δ ↑i) β (⟨I, fun x => U⟩.snd i)

⊢ (toFun (f, g).1 x, toFun (f, g).2 x) ∈ U
-- Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Type u_4
s s' : Set α
x : α
p : Filter ι
g✝ : ι → α
inst✝¹ : UniformSpace β
δ✝ : ι → Type u_5
inst✝ : (i : ι) → UniformSpace (δ✝ i)
δ : ι → Type u_6
φ : (i : ι) → δ i → α
I : Set ι
I_finite : I.Finite
I_cover : ⋃ i ∈ I, range (φ i) = univ
U : Set (β × β)
hU : U ∈ 𝓤 β
x✝ : (α →ᵤ β) × (α →ᵤ β)
f g : α →ᵤ β
hfg : (f, g) ∈ ⋂ i, Prod.map (⇑ofFun ∘ (fun x => x ∘ φ ↑i) ∘ ⇑toFun) (⇑ofFun ∘ (fun x => x ∘ φ ↑i) ∘ ⇑toFun) ⁻¹' UniformFun.gen (δ ↑i) β (⟨I, fun x => U⟩.snd i)
i : ι
hi : i ∈ I
y : δ i

⊢ (toFun (f, g).1 (φ i y), toFun (f, g).2 (φ i y)) ∈ U
-- Mathlib/Topology/Instances/ENNReal.lean
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
xt : x ≠ ⊤

⊢ (𝓝 x).HasBasis (fun x => x ≠ 0) fun ε => Icc (x - ε) (x + ε)
-- Mathlib/Topology/Instances/ENNReal.lean
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
xt : 0 ≠ ⊤

⊢ (𝓝 0).HasBasis (fun x => x ≠ 0) fun ε => Icc (0 - ε) (0 + ε)
-- Mathlib/Topology/Instances/ENNReal.lean
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
xt : x ≠ ⊤
x0 : 0 < x

⊢ (𝓝 x).HasBasis (fun x => x ≠ 0) fun ε => Icc (x - ε) (x + ε)
-- Mathlib/Computability/TMToPartrec.lean
k k' : Cont
v : List ℕ

⊢ (k.then k').eval v = k.eval v >>= k'.eval
-- Mathlib/Computability/TMToPartrec.lean
k' : Cont
a✝¹ : Code
a✝ : Cont
k_ih : ∀ {v : List ℕ}, (a✝.then k').eval v = a✝.eval v >>= k'.eval
v : List ℕ

⊢ a✝¹.eval v >>= (a✝.then k').eval = a✝¹.eval v >>= fun x => a✝.eval x >>= k'.eval
-- Mathlib/Computability/TMToPartrec.lean
k' : Cont
a✝¹ : Code
a✝ : Cont
k_ih : ∀ {v : List ℕ}, (a✝.then k').eval v = a✝.eval v >>= k'.eval
v : List ℕ

⊢ (if v.headI = 0 then a✝.eval v.tail >>= k'.eval else a✝¹.fix.eval v.tail >>= (a✝.then k').eval) = (if v.headI = 0 then a✝.eval v.tail else a✝¹.fix.eval v.tail >>= a✝.eval) >>= k'.eval
-- Mathlib/Analysis/SpecialFunctions/Pow/Real.lean
x y z : ℝ
n : ℕ
hx : 0 ≤ x
hy : y ≠ 0

⊢ (x ^ y⁻¹) ^ y = x
-- Mathlib/Data/Fin/Basic.lean
n m : ℕ
i j : Fin n

⊢ i ≤ j.rev ↔ j ≤ i.rev
-- Mathlib/Topology/MetricSpace/Infsep.lean
α : Type u_1
β : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
s t : Set α

⊢ {x, y}.infsep = dist x y
-- Mathlib/Topology/MetricSpace/Infsep.lean
α : Type u_1
β : Type u_2
inst✝ : PseudoMetricSpace α
x y z : α
s t : Set α

⊢ (ENNReal.ofReal (dist x y)).toReal = dist x y
-- Mathlib/Data/Complex/Exponential.lean
x : ℝ
hx : |x| ≤ 1

⊢ |rexp x - 1 - x| ≤ x ^ 2
-- Mathlib/Data/Complex/Exponential.lean
x : ℝ
hx : |x| ≤ 1

⊢ |rexp x - 1 - x| ≤ |x| ^ 2
-- Mathlib/Data/Complex/Exponential.lean
x : ℝ
hx : |x| ≤ 1
this : Complex.abs ↑x ≤ 1

⊢ |rexp x - 1 - x| ≤ |x| ^ 2
-- Mathlib/Data/Complex/Exponential.lean
x : ℝ
hx : |x| ≤ 1
this✝ : Complex.abs ↑x ≤ 1
this : Complex.abs (cexp ↑x - 1 - ↑x) ≤ Complex.abs ↑x ^ 2

⊢ |rexp x - 1 - x| ≤ |x| ^ 2
-- Mathlib/Data/Complex/Exponential.lean
x : ℝ
hx : |x| ≤ 1
this✝ : Complex.abs ↑x ≤ 1
this : |rexp x - 1 - x| ≤ |x| ^ 2

⊢ |rexp x - 1 - x| ≤ |x| ^ 2
-- Mathlib/Data/List/Infix.lean
α : Type u_1
β : Type u_2
l✝ l₁ l₂ l₃ : List α
a b : α
m n : ℕ
l : List α

⊢ l.reverse.tails = (map reverse l.inits).reverse
-- Mathlib/Data/List/Infix.lean
α : Type u_1
β : Type u_2
l✝ l₁ l₂ l₃ : List α
a b : α
m n : ℕ
l : List α

⊢ l.reverse.tails = (map reverse (map reverse l.reverse.tails).reverse).reverse
-- Mathlib/Order/Filter/Bases.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι✝ : Sort u_4
ι'✝ : Sort u_5
l✝ l' : Filter α
p✝ : ι✝ → Prop
s✝ : ι✝ → Set α
t✝ : Set α
i : ι✝
p' : ι'✝ → Prop
s' : ι'✝ → Set α
i' : ι'✝
ι : Type u_6
ι' : Type u_7
inst✝ : Nonempty ι
l : ι → Filter α
s : ι → ι' → Set α
p : ι → ι' → Prop
hl : ∀ (i : ι), (l i).HasBasis (p i) (s i)
h : Directed (fun x x_1 => x ≥ x_1) l
t : Set α

⊢ t ∈ ⨅ i, l i ↔ ∃ i, p i.1 i.2 ∧ s i.1 i.2 ⊆ t
-- Mathlib/Order/Filter/Bases.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι✝ : Sort u_4
ι'✝ : Sort u_5
l✝ l' : Filter α
p✝ : ι✝ → Prop
s✝ : ι✝ → Set α
t✝ : Set α
i : ι✝
p' : ι'✝ → Prop
s' : ι'✝ → Set α
i' : ι'✝
ι : Type u_6
ι' : Type u_7
inst✝ : Nonempty ι
l : ι → Filter α
s : ι → ι' → Set α
p : ι → ι' → Prop
hl : ∀ (i : ι), (l i).HasBasis (p i) (s i)
h : Directed (fun x x_1 => x ≥ x_1) l
t : Set α

⊢ (∃ i, t ∈ l i) ↔ ∃ a b, p (a, b).1 (a, b).2 ∧ s (a, b).1 (a, b).2 ⊆ t
-- Mathlib/Data/Rat/Lemmas.lean
n d : ℤ

⊢ (n /. d).den = if d = 0 then 1 else d.natAbs / n.gcd d
-- Mathlib/Data/Rat/Lemmas.lean
n d : ℤ
this : ∀ (m : ℕ), (↑m + 1).natAbs = m + 1

⊢ (n /. d).den = if d = 0 then 1 else d.natAbs / n.gcd d
-- Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean
C : Type u₁
inst✝¹⁰ : Category.{v₁, u₁} C
inst✝⁹ : HasZeroMorphisms C
D : Type u₂
inst✝⁸ : Category.{v₂, u₂} D
inst✝⁷ : HasZeroMorphisms D
G : C ⥤ D
inst✝⁶ : G.PreservesZeroMorphisms
X Y Z : C
f : X ⟶ Y
h : Z ⟶ X
w : h ≫ f = 0
inst✝⁵ : HasKernel f
inst✝⁴ : HasKernel (G.map f)
inst✝³ : PreservesLimit (parallelPair f 0) G
X' Y' : C
g : X' ⟶ Y'
inst✝² : HasKernel g
inst✝¹ : HasKernel (G.map g)
inst✝ : PreservesLimit (parallelPair g 0) G
p : X ⟶ X'
q : Y ⟶ Y'
hpq : f ≫ q = p ≫ g

⊢ G.map f ≫ G.map q = G.map p ≫ G.map g
-- Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean
C : Type u₁
inst✝¹⁰ : Category.{v₁, u₁} C
inst✝⁹ : HasZeroMorphisms C
D : Type u₂
inst✝⁸ : Category.{v₂, u₂} D
inst✝⁷ : HasZeroMorphisms D
G : C ⥤ D
inst✝⁶ : G.PreservesZeroMorphisms
X Y Z : C
f : X ⟶ Y
h : Z ⟶ X
w : h ≫ f = 0
inst✝⁵ : HasKernel f
inst✝⁴ : HasKernel (G.map f)
inst✝³ : PreservesLimit (parallelPair f 0) G
X' Y' : C
g : X' ⟶ Y'
inst✝² : HasKernel g
inst✝¹ : HasKernel (G.map g)
inst✝ : PreservesLimit (parallelPair g 0) G
p : X ⟶ X'
q : Y ⟶ Y'
hpq : f ≫ q = p ≫ g

⊢ kernel.map (G.map f) (G.map g) (G.map p) (G.map q) ⋯ ≫ (PreservesKernel.iso G g).inv = (PreservesKernel.iso G f).inv ≫ G.map (kernel.map f g p q hpq)
-- Mathlib/Analysis/Convex/Side.lean
R : Type u_1
V : Type u_2
V' : Type u_3
P : Type u_4
P' : Type u_5
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x p₁ p₂ : P
hx : x ∉ s
hp₁ : p₁ ∈ s
hp₂ : p₂ ∈ s
t : R
ht : 0 < t

⊢ s.SSameSide (t • (x -ᵥ p₁) +ᵥ p₂) x
-- Mathlib/Analysis/Convex/Side.lean
R : Type u_1
V : Type u_2
V' : Type u_3
P : Type u_4
P' : Type u_5
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x p₁ p₂ : P
hx : x ∉ s
hp₁ : p₁ ∈ s
hp₂ : p₂ ∈ s
t : R
ht : 0 < t
h : t • (x -ᵥ p₁) +ᵥ p₂ ∈ s

⊢ x ∈ s
-- Mathlib/RingTheory/Coprime/Basic.lean
R : Type u
inst✝ : CommSemiring R
x y z : R
h : IsCoprime (y * z + x) y

⊢ IsCoprime x y
-- Mathlib/Order/Filter/Curry.lean
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
α : Type u_4
β : Type u_5
l : Filter α
m : Filter β
s : Set α
t : Set β
x✝ : sᶜ ∉ l ∧ tᶜ ∉ m
hs : sᶜ ∉ l
ht : tᶜ ∉ m

⊢ ∃ᶠ (x : α × β) in l.curry m, x ∈ s ×ˢ t
-- Mathlib/Order/Filter/Curry.lean
α✝ : Type u_1
β✝ : Type u_2
γ : Type u_3
α : Type u_4
β : Type u_5
l : Filter α
m : Filter β
s : Set α
t : Set β
x✝ : sᶜ ∉ l ∧ tᶜ ∉ m
hs : sᶜ ∉ l
ht : tᶜ ∉ m

⊢ ∃ᶠ (x : α) in l, ∃ᶠ (y : β) in m, (x, y) ∈ s ×ˢ t
-- Mathlib/Analysis/Calculus/Dslope.lean
𝕜 : Type u_1
E : Type u_2
inst✝² : NontriviallyNormedField 𝕜
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f✝ : 𝕜 → E
a b : 𝕜
s : Set 𝕜
f : 𝕜 → E
h : b ≠ a

⊢ dslope (fun x => (x - a) • f x) a b = f b
-- Mathlib/Data/Set/Lattice.lean
α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
ι' : Sort u_5
ι₂ : Sort u_6
κ : ι → Sort u_7
κ₁ : ι → Sort u_8
κ₂ : ι → Sort u_9
κ' : ι' → Sort u_10
f : ι → α
g : α → Set β

⊢ ⋃ x, ⋃ y, ⋃ (_ : f y = x), g x = ⋃ y, g (f y)
-- Mathlib/Analysis/Normed/Group/Basic.lean
𝓕 : Type u_1
𝕜 : Type u_2
α : Type u_3
ι : Type u_4
κ : Type u_5
E : Type u_6
F : Type u_7
G : Type u_8
inst✝¹ : SeminormedCommGroup E
inst✝ : SeminormedCommGroup F
a a₁ a₂ b b₁ b₂ : E
r r₁ r₂ : ℝ

⊢ a * b ∈ closedBall a r ↔ ‖b‖ ≤ r
-- Mathlib/Algebra/Polynomial/Eval.lean
R : Type u
S : Type v
T : Type w
ι : Type y
a b : R
m n : ℕ
inst✝ : Semiring R
p q r : R[X]

⊢ p.comp 1 = C (eval 1 p)
-- Mathlib/LinearAlgebra/Dual.lean
R : Type u_1
M : Type u_2
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
p : Submodule R M
hp : p < ⊤
hp' : Free R (M ⧸ p)

⊢ ∃ f, f ≠ 0 ∧ map f p = ⊥
-- Mathlib/LinearAlgebra/Dual.lean
R : Type u_1
M : Type u_2
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
p : Submodule R M
hp : p < ⊤
hp' : Free R (M ⧸ p)
x : M
hx : x ∉ p

⊢ ∃ f, f ≠ 0 ∧ map f p = ⊥
-- Mathlib/LinearAlgebra/Dual.lean
R : Type u_1
M : Type u_2
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
p : Submodule R M
hp : p < ⊤
hp' : Free R (M ⧸ p)
x : M
hx : x ∉ p
f : Dual R M
hf : f x ≠ 0
hf' : map f p = ⊥

⊢ ∃ f, f ≠ 0 ∧ map f p = ⊥
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x : ℤ_[p]
m n : ℕ
h : m ≤ n

⊢ (ZMod.castHom ⋯ (ZMod (p ^ m))).comp (toZModPow n) = toZModPow m
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x : ℤ_[p]
m n : ℕ
h : m ≤ n

⊢ RingHom.ker ((ZMod.castHom ⋯ (ZMod (p ^ m))).comp (toZModPow n)) = RingHom.ker (toZModPow m)
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ x ∈ RingHom.ker ((ZMod.castHom ⋯ (ZMod (p ^ m))).comp (toZModPow n)) ↔ x ∈ RingHom.ker (toZModPow m)
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ ((ZMod.castHom ⋯ (ZMod (p ^ m))).comp (toZModPow n)) x = 0 ↔ (toZModPow m) x = 0
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ ((toZModPow n) x).cast = 0 ↔ (toZModPow m) x = 0
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ ({ toFun := fun x => ↑(x.appr n), map_one' := ⋯, map_mul' := ⋯ } x).cast = 0 ↔ { toFun := fun x => ↑(x.appr m), map_one' := ⋯, map_mul' := ⋯ } x = 0
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ (↑(x.appr n)).cast = 0 ↔ ↑(x.appr m) = 0
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ ↑(x.appr n) - ↑(x.appr n) ∈ Ideal.span {↑p ^ m}
-- Mathlib/NumberTheory/Padics/RingHoms.lean
p : ℕ
hp_prime : Fact (Nat.Prime p)
r : ℚ
x✝ : ℤ_[p]
m n : ℕ
h : m ≤ n
x : ℤ_[p]

⊢ ↑(x.appr n) - ↑(x.appr m) ∈ Ideal.span {↑p ^ m}
-- Mathlib/Topology/MetricSpace/Infsep.lean
α : Type u_1
β : Type u_2
inst✝¹ : EMetricSpace α
x y z : α
s t : Set α
C : ℝ≥0∞
sC : Set ℝ≥0∞
inst✝ : Finite ↑s

⊢ ∃ C > 0, ∀ x ∈ s, ∀ y ∈ s, x ≠ y → C ≤ edist x y
-- Mathlib/Topology/MetricSpace/Infsep.lean
α : Type u_1
β : Type u_2
inst✝¹ : EMetricSpace α
x y z : α
s t : Set α
C : ℝ≥0∞
sC : Set ℝ≥0∞
inst✝ : Finite ↑s

⊢ 0 < s.einfsep
-- Mathlib/Order/Interval/Finset/Box.lean
n : ℕ
x✝ x : ℤ × ℤ

⊢ ∃! n, x ∈ box n
-- Mathlib/Order/Interval/Finset/Box.lean
n : ℕ
x✝ x : ℤ × ℤ

⊢ (fun n => x ∈ box n) (max x.1.natAbs x.2.natAbs) ∧ ∀ (y : ℕ), (fun n => x ∈ box n) y → y = max x.1.natAbs x.2.natAbs
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Equitabilise.lean
α : Type u_1
inst✝ : DecidableEq α
s t : Finset α
m n a b : ℕ
P : Finpartition s
h : a * m + b * (m + 1) = s.card
hm : m ≠ 0

⊢ (equitabilise h).parts.card = a + b
-- Mathlib/Combinatorics/SimpleGraph/Regularity/Equitabilise.lean
α : Type u_1
inst✝ : DecidableEq α
s t : Finset α
m n a b : ℕ
P : Finpartition s
h : a * m + b * (m + 1) = s.card
hm : m ≠ 0

⊢ Disjoint (filter (fun x => x.card = m) (equitabilise h).parts) (filter (fun x => x.card = m + 1) (equitabilise h).parts)
-- Mathlib/Data/ENNReal/Operations.lean
a b c d : ℝ≥0∞
r p q : ℝ≥0
h : 0 < b → b < a → c ≠ ⊤

⊢ (a - b) * c = a * c - b * c
-- Mathlib/Data/ENNReal/Operations.lean
a b c d : ℝ≥0∞
r p q : ℝ≥0
h : 0 < b → b < a → c ≠ ⊤
hab : a ≤ b

⊢ (a - b) * c = a * c - b * c
-- Mathlib/Data/ENNReal/Operations.lean
a b c d : ℝ≥0∞
r p q : ℝ≥0
h : 0 < b → b < a → c ≠ ⊤
hab : b < a

⊢ (a - b) * c = a * c - b * c
-- Mathlib/Data/ENNReal/Operations.lean
a c d : ℝ≥0∞
r p q : ℝ≥0
h : 0 < 0 → 0 < a → c ≠ ⊤
hab : 0 < a

⊢ (a - 0) * c = a * c - 0 * c
-- Mathlib/Data/ENNReal/Operations.lean
a b c d : ℝ≥0∞
r p q : ℝ≥0
h : 0 < b → b < a → c ≠ ⊤
hab : b < a
hb : 0 < b

⊢ (a - b) * c = a * c - b * c
-- Mathlib/Analysis/Asymptotics/Asymptotics.lean
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
G : Type u_5
E' : Type u_6
F' : Type u_7
G' : Type u_8
E'' : Type u_9
F'' : Type u_10
G'' : Type u_11
E''' : Type u_12
R : Type u_13
R' : Type u_14
𝕜 : Type u_15
𝕜' : Type u_16
inst✝¹³ : Norm E
inst✝¹² : Norm F
inst✝¹¹ : Norm G
inst✝¹⁰ : SeminormedAddCommGroup E'
inst✝⁹ : SeminormedAddCommGroup F'
inst✝⁸ : SeminormedAddCommGroup G'
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedAddCommGroup F''
inst✝⁵ : NormedAddCommGroup G''
inst✝⁴ : SeminormedRing R
inst✝³ : SeminormedAddGroup E'''
inst✝² : SeminormedRing R'
inst✝¹ : NormedDivisionRing 𝕜
inst✝ : NormedDivisionRing 𝕜'
c c' c₁ c₂ : ℝ
f : α → E
g : α → F
k : α → G
f' : α → E'
g' : α → F'
k' : α → G'
f'' : α → E''
g'' : α → F''
k'' : α → G''
l l' : Filter α
hfg : IsBigOWith c l f g
hgk : IsBigOWith c' l g k
hc : 0 ≤ c

⊢ IsBigOWith (c * c') l f k
-- Mathlib/Analysis/Asymptotics/Asymptotics.lean
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
G : Type u_5
E' : Type u_6
F' : Type u_7
G' : Type u_8
E'' : Type u_9
F'' : Type u_10
G'' : Type u_11
E''' : Type u_12
R : Type u_13
R' : Type u_14
𝕜 : Type u_15
𝕜' : Type u_16
inst✝¹³ : Norm E
inst✝¹² : Norm F
inst✝¹¹ : Norm G
inst✝¹⁰ : SeminormedAddCommGroup E'
inst✝⁹ : SeminormedAddCommGroup F'
inst✝⁸ : SeminormedAddCommGroup G'
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedAddCommGroup F''
inst✝⁵ : NormedAddCommGroup G''
inst✝⁴ : SeminormedRing R
inst✝³ : SeminormedAddGroup E'''
inst✝² : SeminormedRing R'
inst✝¹ : NormedDivisionRing 𝕜
inst✝ : NormedDivisionRing 𝕜'
c c' c₁ c₂ : ℝ
f : α → E
g : α → F
k : α → G
f' : α → E'
g' : α → F'
k' : α → G'
f'' : α → E''
g'' : α → F''
k'' : α → G''
l l' : Filter α
hc : 0 ≤ c
hfg : ∀ᶠ (x : α) in l, ‖f x‖ ≤ c * ‖g x‖
hgk : ∀ᶠ (x : α) in l, ‖g x‖ ≤ c' * ‖k x‖

⊢ ∀ᶠ (x : α) in l, ‖f x‖ ≤ c * c' * ‖k x‖
-- Mathlib/Analysis/Asymptotics/Asymptotics.lean
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
G : Type u_5
E' : Type u_6
F' : Type u_7
G' : Type u_8
E'' : Type u_9
F'' : Type u_10
G'' : Type u_11
E''' : Type u_12
R : Type u_13
R' : Type u_14
𝕜 : Type u_15
𝕜' : Type u_16
inst✝¹³ : Norm E
inst✝¹² : Norm F
inst✝¹¹ : Norm G
inst✝¹⁰ : SeminormedAddCommGroup E'
inst✝⁹ : SeminormedAddCommGroup F'
inst✝⁸ : SeminormedAddCommGroup G'
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedAddCommGroup F''
inst✝⁵ : NormedAddCommGroup G''
inst✝⁴ : SeminormedRing R
inst✝³ : SeminormedAddGroup E'''
inst✝² : SeminormedRing R'
inst✝¹ : NormedDivisionRing 𝕜
inst✝ : NormedDivisionRing 𝕜'
c c' c₁ c₂ : ℝ
f : α → E
g : α → F
k : α → G
f' : α → E'
g' : α → F'
k' : α → G'
f'' : α → E''
g'' : α → F''
k'' : α → G''
l l' : Filter α
hc : 0 ≤ c
hfg : ∀ᶠ (x : α) in l, ‖f x‖ ≤ c * ‖g x‖
hgk : ∀ᶠ (x : α) in l, ‖g x‖ ≤ c' * ‖k x‖
x : α
hx : ‖f x‖ ≤ c * ‖g x‖
hx' : ‖g x‖ ≤ c' * ‖k x‖

⊢ ‖f x‖ ≤ c * c' * ‖k x‖
-- Mathlib/Algebra/Group/Pi/Basic.lean
I : Type u
α : Type u_1
β : Type u_2
γ : Type u_3
f : I → Type v₁
g : I → Type v₂
h : I → Type v₃
x y : (i : I) → f i
i✝ : I
a a' : α → γ
b b' : β → γ
inst✝² : DecidableEq α
inst✝¹ : DecidableEq β
inst✝ : One γ
i : β
c : γ

⊢ Sum.elim 1 (Pi.mulSingle i c) = Pi.mulSingle (inr i) c
-- Mathlib/Order/Interval/Set/Disjoint.lean
ι : Sort u
α : Type v
β : Type w
inst✝ : LinearOrder α
a₁ a₂ b₁ b₂ : α

⊢ Disjoint (Ioc a₁ a₂) (Ioc b₁ b₂) ↔ min a₂ b₂ ≤ max a₁ b₁
-- Mathlib/Order/Interval/Set/Disjoint.lean
ι : Sort u
α : Type v
β : Type w
inst✝ : LinearOrder α
a₁ a₂ b₁ b₂ : α
h : Disjoint (Ico (toDual a₂) (toDual a₁)) (Ico (toDual b₂) (toDual b₁)) ↔ min (toDual a₁) (toDual b₁) ≤ max (toDual a₂) (toDual b₂)

⊢ Disjoint (Ioc a₁ a₂) (Ioc b₁ b₂) ↔ min a₂ b₂ ≤ max a₁ b₁
-- Mathlib/Data/Nat/Factorization/Defs.lean
a b m n p : ℕ
f : ℕ →₀ ℕ
hf : ∀ p ∈ f.support, Prime p

⊢ (f.prod fun x x_1 => x ^ x_1).factorization = f
-- Mathlib/Data/Nat/Factorization/Defs.lean
a b m n p : ℕ
f : ℕ →₀ ℕ
hf : ∀ p ∈ f.support, Prime p
h : ∀ x ∈ f.support, x ^ f x ≠ 0

⊢ (f.prod fun x x_1 => x ^ x_1).factorization = f
-- Mathlib/Data/Nat/Factorization/Defs.lean
a b m n p : ℕ
f : ℕ →₀ ℕ
hf : ∀ p ∈ f.support, Prime p
h : ∀ x ∈ f.support, x ^ f x ≠ 0

⊢ ∑ x ∈ f.support, (x ^ f x).factorization = f
-- Mathlib/Data/Nat/Factorization/Defs.lean
a b m n p : ℕ
f : ℕ →₀ ℕ
hf : ∀ p ∈ f.support, Prime p
h : ∀ x ∈ f.support, x ^ f x ≠ 0

⊢ ∑ x ∈ f.support, (x ^ f x).factorization = f.sum single
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x : Associates M
hx : x ∈ Set.Iic (Associates.mk m)

⊢ associatesEquivOfUniqueUnits ↑⟨x, hx⟩ ∣ m
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x : Associates M
hx : x ∈ Set.Iic (Associates.mk m)

⊢ x ≤ Associates.mk m
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x : Associates N
hx : x ∈ Set.Iic (Associates.mk n)

⊢ associatesEquivOfUniqueUnits ↑⟨x, hx⟩ ∣ n
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x : Associates N
hx : x ∈ Set.Iic (Associates.mk n)

⊢ x ≤ Associates.mk n
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x✝ : ↑(Set.Iic (Associates.mk m))
l : Associates M
hl : l ∈ Set.Iic (Associates.mk m)

⊢ (fun l => ⟨Associates.mk ↑(d.symm ⟨associatesEquivOfUniqueUnits ↑l, ⋯⟩), ⋯⟩) ((fun l => ⟨Associates.mk ↑(d ⟨associatesEquivOfUniqueUnits ↑l, ⋯⟩), ⋯⟩) ⟨l, hl⟩) = ⟨l, hl⟩
-- Mathlib/RingTheory/ChainOfDivisors.lean
M : Type u_1
inst✝³ : CancelCommMonoidWithZero M
N : Type u_2
inst✝² : CancelCommMonoidWithZero N
inst✝¹ : Unique Mˣ
inst✝ : Unique Nˣ
m : M
n : N
d : { l // l ∣ m } ≃ { l // l ∣ n }
hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l'
x✝ : ↑(Set.Iic (Associates.mk n))
l : Associates N
hl : l ∈ Set.Iic (Associates.mk n)

⊢ (fun l => ⟨Associates.mk ↑(d ⟨associatesEquivOfUniqueUnits ↑l, ⋯⟩), ⋯⟩) ((fun l => ⟨Associates.mk ↑(d.symm ⟨associatesEquivOfUniqueUnits ↑l, ⋯⟩), ⋯⟩) ⟨l, hl⟩) = ⟨l, hl⟩