ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
Theorem: OmegaCompletePartialOrder.continuous_comp
File: Mathlib/Order/OmegaCompletePartialOrder.lean

Proof steps:
state_before: α : Type u
β : Type v
γ : Type u_1
inst✝² : OmegaCompletePartialOrder α
inst✝¹ : OmegaCompletePartialOrder β
inst✝ : OmegaCompletePartialOrder γ
f : α →o β
g : β →o γ
hfc : Continuous f
hgc : Continuous g
⊢ Continuous (g.comp f)
state_after: α : Type u
β : Type v
γ : Type u_1
inst✝² : OmegaCompletePartialOrder α
inst✝¹ : OmegaCompletePartialOrder β
inst✝ : OmegaCompletePartialOrder γ
f : α →o β
g : β →o γ
hfc : ∀ (c : Chain α), f (ωSup c) = ωSup (c.map f)
hgc : ∀ (c : Chain β), g (ωSup c) = ωSup (c.map g)
⊢ ∀ (c : Chain α), g (f (ωSup c)) = ωSup (c.map (g.comp f))
tactic: dsimp [Continuous] at *
state_before: α : Type u
β : Type v
γ : Type u_1
inst✝² : OmegaCompletePartialOrder α
inst✝¹ : OmegaCompletePartialOrder β
inst✝ : OmegaCompletePartialOrder γ
f : α →o β
g : β →o γ
hfc : ∀ (c : Chain α), f (ωSup c) = ωSup (c.map f)
hgc : ∀ (c : Chain β), g (ωSup c) = ωSup (c.map g)
⊢ ∀ (c : Chain α), g (f (ωSup c)) = ωSup (c.map (g.comp f))
state_after: α : Type u
β : Type v
γ : Type u_1
inst✝² : OmegaCompletePartialOrder α
inst✝¹ : OmegaCompletePartialOrder β
inst✝ : OmegaCompletePartialOrder γ
f : α →o β
g : β →o γ
hfc : ∀ (c : Chain α), f (ωSup c) = ωSup (c.map f)
hgc : ∀ (c : Chain β), g (ωSup c) = ωSup (c.map g)
c✝ : Chain α
⊢ g (f (ωSup c✝)) = ωSup (c✝.map (g.comp f))
tactic: intro
state_before: α : Type u
β : Type v
γ : Type u_1
inst✝² : OmegaCompletePartialOrder α
inst✝¹ : OmegaCompletePartialOrder β
inst✝ : OmegaCompletePartialOrder γ
f : α →o β
g : β →o γ
hfc : ∀ (c : Chain α), f (ωSup c) = ωSup (c.map f)
hgc : ∀ (c : Chain β), g (ωSup c) = ωSup (c.map g)
c✝ : Chain α
⊢ g (f (ωSup c✝)) = ωSup (c✝.map (g.comp f))
state_after: no goals
tactic: rw [hfc, hgc, Chain.map_comp]
Theorem: Subring.toNonUnitalSubring_toSubring
File: Mathlib/Algebra/Algebra/Subalgebra/Unitization.lean

Proof steps:
state_before: R : Type u_1
inst✝ : Ring R
S : Subring R
⊢ S.toNonUnitalSubring.toSubring ⋯ = S
state_after: case mk
R : Type u_1
inst✝ : Ring R
toSubsemiring✝ : Subsemiring R
neg_mem'✝ : ∀ {x : R}, x ∈ toSubsemiring✝.carrier → -x ∈ toSubsemiring✝.carrier
⊢ { toSubsemiring := toSubsemiring✝, neg_mem' := neg_mem'✝ }.toNonUnitalSubring.toSubring ⋯ =
    { toSubsemiring := toSubsemiring✝, neg_mem' := neg_mem'✝ }
tactic: cases S
state_before: case mk
R : Type u_1
inst✝ : Ring R
toSubsemiring✝ : Subsemiring R
neg_mem'✝ : ∀ {x : R}, x ∈ toSubsemiring✝.carrier → -x ∈ toSubsemiring✝.carrier
⊢ { toSubsemiring := toSubsemiring✝, neg_mem' := neg_mem'✝ }.toNonUnitalSubring.toSubring ⋯ =
    { toSubsemiring := toSubsemiring✝, neg_mem' := neg_mem'✝ }
state_after: no goals
tactic: rfl
Theorem: CategoryTheory.Limits.BinaryBicone.toBiconeFunctor_map_hom
File: Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean

Proof steps:
state_before: J : Type w
C : Type u
inst✝³ : Category.{v, u} C
inst✝² : HasZeroMorphisms C
D : Type uD
inst✝¹ : Category.{uD', uD} D
inst✝ : HasZeroMorphisms D
P Q X Y : C
b : BinaryBicone X Y
j j' : WalkingPair
⊢ (fun j => WalkingPair.casesOn j b.inl b.inr) j ≫ (fun j => WalkingPair.casesOn j b.fst b.snd) j' =
    if h : j = j' then eqToHom ⋯ else 0
state_after: no goals
tactic: rcases j with ⟨⟩ <;> rcases j' with ⟨⟩ <;> simp
Theorem: zero_isRadical_iff
File: Mathlib/RingTheory/Nilpotent/Basic.lean

Proof steps:
state_before: R : Type u_1
S : Type u_2
x y : R
inst✝ : MonoidWithZero R
⊢ IsRadical 0 ↔ IsReduced R
state_after: R : Type u_1
S : Type u_2
x y : R
inst✝ : MonoidWithZero R
⊢ IsRadical 0 ↔ ∀ (x : R) (x_1 : ℕ), 0 ∣ x ^ x_1 → 0 ∣ x
tactic: simp_rw [isReduced_iff, IsNilpotent, exists_imp, ← zero_dvd_iff]
state_before: R : Type u_1
S : Type u_2
x y : R
inst✝ : MonoidWithZero R
⊢ IsRadical 0 ↔ ∀ (x : R) (x_1 : ℕ), 0 ∣ x ^ x_1 → 0 ∣ x
state_after: no goals
tactic: exact forall_swap
Theorem: Module.End.ker_pow_eq_ker_pow_finrank_of_le
File: Mathlib/LinearAlgebra/FiniteDimensional.lean

Proof steps:
state_before: K : Type u
V : Type v
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : FiniteDimensional K V
f : End K V
m : ℕ
hm : finrank K V ≤ m
⊢ LinearMap.ker (f ^ m) = LinearMap.ker (f ^ finrank K V)
state_after: case intro.intro
K : Type u
V : Type v
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : FiniteDimensional K V
f : End K V
m : ℕ
hm : finrank K V ≤ m
k : ℕ
h_k_le : k ≤ finrank K V
hk : LinearMap.ker (f ^ k) = LinearMap.ker (f ^ k.succ)
⊢ LinearMap.ker (f ^ m) = LinearMap.ker (f ^ finrank K V)
tactic: obtain ⟨k, h_k_le, hk⟩ :
    ∃ k, k ≤ finrank K V ∧ LinearMap.ker (f ^ k) = LinearMap.ker (f ^ k.succ) :=
    exists_ker_pow_eq_ker_pow_succ f
state_before: case intro.intro
K : Type u
V : Type v
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : FiniteDimensional K V
f : End K V
m : ℕ
hm : finrank K V ≤ m
k : ℕ
h_k_le : k ≤ finrank K V
hk : LinearMap.ker (f ^ k) = LinearMap.ker (f ^ k.succ)
⊢ LinearMap.ker (f ^ m) = LinearMap.ker (f ^ finrank K V)
state_after: no goals
tactic: calc
    LinearMap.ker (f ^ m) = LinearMap.ker (f ^ (k + (m - k))) := by
      rw [add_tsub_cancel_of_le (h_k_le.trans hm)]
    _ = LinearMap.ker (f ^ k) := by rw [ker_pow_constant hk _]
    _ = LinearMap.ker (f ^ (k + (finrank K V - k))) := ker_pow_constant hk (finrank K V - k)
    _ = LinearMap.ker (f ^ finrank K V) := by rw [add_tsub_cancel_of_le h_k_le]
Theorem: Cardinal.not_irreducible_of_aleph0_le
File: Mathlib/SetTheory/Cardinal/Divisibility.lean

Proof steps:
state_before: a b : Cardinal.{u}
n m : ℕ
ha : ℵ₀ ≤ a
⊢ ¬Irreducible a
state_after: a b : Cardinal.{u}
n m : ℕ
ha : ℵ₀ ≤ a
⊢ ¬¬IsUnit a ∨ ¬∀ (a_1 b : Cardinal.{u}), a = a_1 * b → IsUnit a_1 ∨ IsUnit b
tactic: rw [irreducible_iff, not_and_or]
state_before: a b : Cardinal.{u}
n m : ℕ
ha : ℵ₀ ≤ a
⊢ ¬¬IsUnit a ∨ ¬∀ (a_1 b : Cardinal.{u}), a = a_1 * b → IsUnit a_1 ∨ IsUnit b
state_after: a b : Cardinal.{u}
n m : ℕ
ha : ℵ₀ ≤ a
h : ∀ (a_1 b : Cardinal.{u}), a = a_1 * b → IsUnit a_1 ∨ IsUnit b
⊢ False
tactic: refine Or.inr fun h => ?_
state_before: a b : Cardinal.{u}
n m : ℕ
ha : ℵ₀ ≤ a
h : ∀ (a_1 b : Cardinal.{u}), a = a_1 * b → IsUnit a_1 ∨ IsUnit b
⊢ False
state_after: no goals
tactic: simpa [mul_aleph0_eq ha, isUnit_iff, (one_lt_aleph0.trans_le ha).ne', one_lt_aleph0.ne'] using
    h a ℵ₀
Theorem: MDifferentiableOn.eqOn_of_isPreconnected_of_isMaxOn_norm
File: Mathlib/Geometry/Manifold/Complex.lean

Proof steps:
state_before: E : Type u_1
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
F : Type u_2
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
H : Type u_3
inst✝⁶ : TopologicalSpace H
I : ModelWithCorners ℂ E H
inst✝⁵ : I.Boundaryless
M : Type u_4
inst✝⁴ : TopologicalSpace M
inst✝³ : CompactSpace M
inst✝² : ChartedSpace H M
inst✝¹ : SmoothManifoldWithCorners I M
inst✝ : StrictConvexSpace ℝ F
f : M → F
U : Set M
c : M
hd : MDifferentiableOn I 𝓘(ℂ, F) f U
hc : IsPreconnected U
ho : IsOpen U
hcU : c ∈ U
hm : IsMaxOn (norm ∘ f) U c
x : M
hx : x ∈ U
H₁ : ‖f x‖ = ‖f c‖
hd' : MDifferentiableOn I 𝓘(ℂ, F) (fun x => f x + f c) U
H₂ : ‖f x + f c‖ = ‖f c + f c‖
⊢ ‖f x + const M (f c) x‖ = ‖f x‖ + ‖const M (f c) x‖
state_after: no goals
tactic: simp only [H₂, SameRay.rfl.norm_add, H₁, Function.const]
Theorem: CliffordAlgebra.commute_map_mul_map_of_isOrtho_of_mem_evenOdd_zero_right
File: Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean

Proof steps:
state_before: R : Type u_1
M₁ : Type u_2
M₂ : Type u_3
N : Type u_4
inst✝⁶ : CommRing R
inst✝⁵ : AddCommGroup M₁
inst✝⁴ : AddCommGroup M₂
inst✝³ : AddCommGroup N
inst✝² : Module R M₁
inst✝¹ : Module R M₂
inst✝ : Module R N
Q₁ : QuadraticForm R M₁
Q₂ : QuadraticForm R M₂
Qₙ : QuadraticForm R N
f₁ : Q₁ →qᵢ Qₙ
f₂ : Q₂ →qᵢ Qₙ
hf : ∀ (x : M₁) (y : M₂), QuadraticMap.IsOrtho Qₙ (f₁ x) (f₂ y)
m₁ : CliffordAlgebra Q₁
m₂ : CliffordAlgebra Q₂
i₁ : ZMod 2
hm₁ : m₁ ∈ evenOdd Q₁ i₁
hm₂ : m₂ ∈ evenOdd Q₂ 0
⊢ (-1) ^ (0 * i₁) • ((map f₂) m₂ * (map f₁) m₁) = (map f₂) m₂ * (map f₁) m₁
state_after: no goals
tactic: simp
Theorem: List.sublist_orderedInsert
File: Mathlib/Data/List/Sort.lean

Proof steps:
state_before: α : Type u
r : α → α → Prop
inst✝ : DecidableRel r
x : α
xs : List α
⊢ xs <+ orderedInsert r x xs
state_after: α : Type u
r : α → α → Prop
inst✝ : DecidableRel r
x : α
xs : List α
⊢ xs <+ takeWhile (fun b => decide ¬r x b) xs ++ x :: dropWhile (fun b => decide ¬r x b) xs
tactic: rw [orderedInsert_eq_take_drop]
state_before: α : Type u
r : α → α → Prop
inst✝ : DecidableRel r
x : α
xs : List α
⊢ xs <+ takeWhile (fun b => decide ¬r x b) xs ++ x :: dropWhile (fun b => decide ¬r x b) xs
state_after: α : Type u
r : α → α → Prop
inst✝ : DecidableRel r
x : α
xs : List α
⊢ xs <+ takeWhile (fun b => decide ¬r x b) xs ++ dropWhile (fun b => decide ¬r x b) xs
tactic: refine Sublist.trans ?_ (.append_left (.cons _ (.refl _)) _)
state_before: α : Type u
r : α → α → Prop
inst✝ : DecidableRel r
x : α
xs : List α
⊢ xs <+ takeWhile (fun b => decide ¬r x b) xs ++ dropWhile (fun b => decide ¬r x b) xs
state_after: no goals
tactic: rw [takeWhile_append_dropWhile]
Theorem: Stonean.pullbackIsoPullback_inv
File: Mathlib/Topology/Category/Stonean/Limits.lean

Proof steps:
state_before: X Y Z : Stonean
f : X ⟶ Z
i : Y ⟶ Z
hi : OpenEmbedding ⇑i
this : HasPullback f i
⊢ (Limits.pullback.lift (pullback.fst f hi) (pullback.snd f hi) ⋯ ≫
        pullback.lift f hi (Limits.pullback.fst f i) (Limits.pullback.snd f i) ⋯) ≫
      pullback.fst f hi =
    𝟙 (pullback f hi) ≫ pullback.fst f hi
state_after: no goals
tactic: simp only [pullback.cone_pt, Category.assoc, pullback.lift_fst,
        limit.lift_π, PullbackCone.mk_pt, PullbackCone.mk_π_app, Category.id_comp]
state_before: X Y Z : Stonean
f : X ⟶ Z
i : Y ⟶ Z
hi : OpenEmbedding ⇑i
this : HasPullback f i
⊢ pullback.lift f hi (Limits.pullback.fst f i) (Limits.pullback.snd f i) ⋯ ≫
      Limits.pullback.lift (pullback.fst f hi) (pullback.snd f hi) ⋯ =
    𝟙 (Limits.pullback f i)
state_after: case refine_1
X Y Z : Stonean
f : X ⟶ Z
i : Y ⟶ Z
hi : OpenEmbedding ⇑i
this : HasPullback f i
⊢ (pullback.lift f hi (Limits.pullback.fst f i) (Limits.pullback.snd f i) ⋯ ≫
        Limits.pullback.lift (pullback.fst f hi) (pullback.snd f hi) ⋯) ≫
      Limits.pullback.fst f i =
    𝟙 (Limits.pullback f i) ≫ Limits.pullback.fst f i

case refine_2
X Y Z : Stonean
f : X ⟶ Z
i : Y ⟶ Z
hi : OpenEmbedding ⇑i
this : HasPullback f i
⊢ (pullback.lift f hi (Limits.pullback.fst f i) (Limits.pullback.snd f i) ⋯ ≫
        Limits.pullback.lift (pullback.fst f hi) (pullback.snd f hi) ⋯) ≫
      Limits.pullback.snd f i =
    𝟙 (Limits.pullback f i) ≫ Limits.pullback.snd f i
tactic: refine Limits.pullback.hom_ext (k := (pullback.lift f hi (Limits.pullback.fst _ _)
        (Limits.pullback.snd _ _) Limits.pullback.condition ≫ Limits.pullback.lift
        (pullback.fst _ hi) (pullback.snd _ hi) (pullback.condition f hi))) ?_ ?_
Theorem: Filter.map_mapsTo_Iic_iff_mapsTo
File: Mathlib/Order/Filter/Basic.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
F : Filter α
G : Filter β
s : Set α
t : Set β
m : α → β
⊢ MapsTo (map m) (Iic (𝓟 s)) (Iic (𝓟 t)) ↔ MapsTo m s t
state_after: no goals
tactic: rw [map_mapsTo_Iic_iff_tendsto, tendsto_principal_principal, MapsTo]
Theorem: convexHull_union
File: Mathlib/Analysis/Convex/Join.lean

Proof steps:
state_before: ι : Sort u_1
𝕜 : Type u_2
E : Type u_3
inst✝² : LinearOrderedField 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s t u : Set E
x y : E
hs : s.Nonempty
ht : t.Nonempty
⊢ (convexHull 𝕜) (s ∪ t) = convexJoin 𝕜 ((convexHull 𝕜) s) ((convexHull 𝕜) t)
state_after: ι : Sort u_1
𝕜 : Type u_2
E : Type u_3
inst✝² : LinearOrderedField 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s t u : Set E
x y : E
hs : s.Nonempty
ht : t.Nonempty
⊢ (convexHull 𝕜) ((convexHull 𝕜) s ∪ (convexHull 𝕜) t) = convexJoin 𝕜 ((convexHull 𝕜) s) ((convexHull 𝕜) t)
tactic: rw [← convexHull_convexHull_union_left, ← convexHull_convexHull_union_right]
state_before: ι : Sort u_1
𝕜 : Type u_2
E : Type u_3
inst✝² : LinearOrderedField 𝕜
inst✝¹ : AddCommGroup E
inst✝ : Module 𝕜 E
s t u : Set E
x y : E
hs : s.Nonempty
ht : t.Nonempty
⊢ (convexHull 𝕜) ((convexHull 𝕜) s ∪ (convexHull 𝕜) t) = convexJoin 𝕜 ((convexHull 𝕜) s) ((convexHull 𝕜) t)
state_after: no goals
tactic: exact (convex_convexHull 𝕜 s).convexHull_union (convex_convexHull 𝕜 t) hs.convexHull ht.convexHull
Theorem: Multiset.disjoint_union_left
File: Mathlib/Data/Multiset/Basic.lean

Proof steps:
state_before: α : Type u_1
β : Type v
γ : Type u_2
inst✝ : DecidableEq α
s t u : Multiset α
⊢ (s ∪ t).Disjoint u ↔ s.Disjoint u ∧ t.Disjoint u
state_after: no goals
tactic: simp [Disjoint, or_imp, forall_and]
Theorem: MeasureTheory.IntegrableAtFilter.add
File: Mathlib/MeasureTheory/Integral/IntegrableOn.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s t : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
hf : IntegrableAtFilter f l μ
hg : IntegrableAtFilter g l μ
⊢ IntegrableAtFilter (f + g) l μ
state_after: case intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
hg : IntegrableAtFilter g l μ
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
⊢ IntegrableAtFilter (f + g) l μ
tactic: rcases hf with ⟨s, sl, hs⟩
state_before: case intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
hg : IntegrableAtFilter g l μ
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
⊢ IntegrableAtFilter (f + g) l μ
state_after: case intro.intro.intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t✝ : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
t : Set α
tl : t ∈ l
ht : IntegrableOn g t μ
⊢ IntegrableAtFilter (f + g) l μ
tactic: rcases hg with ⟨t, tl, ht⟩
state_before: case intro.intro.intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t✝ : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
t : Set α
tl : t ∈ l
ht : IntegrableOn g t μ
⊢ IntegrableAtFilter (f + g) l μ
state_after: case intro.intro.intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t✝ : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
t : Set α
tl : t ∈ l
ht : IntegrableOn g t μ
⊢ IntegrableOn (f + g) (s ∩ t) μ
tactic: refine ⟨s ∩ t, inter_mem sl tl, ?_⟩
state_before: case intro.intro.intro.intro
α : Type u_1
β : Type u_2
E : Type u_3
F : Type u_4
inst✝¹ : MeasurableSpace α
inst✝ : NormedAddCommGroup E
f✝ g✝ : α → E
s✝ t✝ : Set α
μ ν : Measure α
l l' : Filter α
f g : α → E
s : Set α
sl : s ∈ l
hs : IntegrableOn f s μ
t : Set α
tl : t ∈ l
ht : IntegrableOn g t μ
⊢ IntegrableOn (f + g) (s ∩ t) μ
state_after: no goals
tactic: exact (hs.mono_set inter_subset_left).add (ht.mono_set inter_subset_right)
Theorem: Algebra.adjoin.powerBasis_gen
File: Mathlib/RingTheory/Adjoin/PowerBasis.lean

Proof steps:
state_before: K : Type u_1
S : Type u_2
inst✝² : Field K
inst✝¹ : CommRing S
inst✝ : Algebra K S
x : S
hx : IsIntegral K x
i : Fin (minpoly K x).natDegree
⊢ (powerBasisAux hx) i = ⟨x, ⋯⟩ ^ ↑i
state_after: no goals
tactic: rw [adjoin.powerBasisAux, Basis.mk_apply]
Theorem: Matrix.updateColumn_subsingleton
File: Mathlib/Data/Matrix/RowCol.lean

Proof steps:
state_before: l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
R : Type u_5
α : Type v
β : Type w
ι : Type u_6
M : Matrix m n α
i✝ : m
j : n
b✝ : n → α
c : m → α
inst✝ : Subsingleton n
A : Matrix m n R
i : n
b : m → R
⊢ A.updateColumn i b = (col (Fin 1) b).submatrix id (Function.const n 0)
state_after: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
R : Type u_5
α : Type v
β : Type w
ι : Type u_6
M : Matrix m n α
i✝ : m
j : n
b✝ : n → α
c : m → α
inst✝ : Subsingleton n
A : Matrix m n R
i : n
b : m → R
x : m
y : n
⊢ A.updateColumn i b x y = (col (Fin 1) b).submatrix id (Function.const n 0) x y
tactic: ext x y
state_before: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
R : Type u_5
α : Type v
β : Type w
ι : Type u_6
M : Matrix m n α
i✝ : m
j : n
b✝ : n → α
c : m → α
inst✝ : Subsingleton n
A : Matrix m n R
i : n
b : m → R
x : m
y : n
⊢ A.updateColumn i b x y = (col (Fin 1) b).submatrix id (Function.const n 0) x y
state_after: no goals
tactic: simp [updateColumn_apply, Subsingleton.elim i y]
Theorem: dist_partial_sum'
File: Mathlib/Analysis/SpecificLimits/Normed.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
inst✝ : SeminormedAddCommGroup α
r C : ℝ
f u : ℕ → α
n : ℕ
⊢ dist (∑ k ∈ Finset.range n, u k) (∑ k ∈ Finset.range (n + 1), u k) = ‖u n‖
state_after: no goals
tactic: simp [dist_eq_norm', sum_range_succ]
Theorem: Set.biUnion_insert
File: Mathlib/Data/Set/Lattice.lean

Proof steps:
state_before: α : 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
a : α
s : Set α
t : α → Set β
⊢ ⋃ x ∈ insert a s, t x = t a ∪ ⋃ x ∈ s, t x
state_after: no goals
tactic: simp
Theorem: Finset.cons_subset_cons
File: Mathlib/Data/Finset/Basic.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
s t : Finset α
a b : α
hs : a ∉ s
ht : a ∉ t
⊢ cons a s hs ⊆ cons a t ht ↔ s ⊆ t
state_after: no goals
tactic: rwa [← coe_subset, coe_cons, coe_cons, Set.insert_subset_insert_iff, coe_subset]
Theorem: FormalMultilinearSeries.removeZero_applyComposition
File: Mathlib/Analysis/Analytic/Composition.lean

Proof steps:
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
p : FormalMultilinearSeries 𝕜 E F
n : ℕ
c : Composition n
⊢ p.removeZero.applyComposition c = p.applyComposition c
state_after: case h.h
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
p : FormalMultilinearSeries 𝕜 E F
n : ℕ
c : Composition n
v : Fin n → E
i : Fin c.length
⊢ p.removeZero.applyComposition c v i = p.applyComposition c v i
tactic: ext v i
state_before: case h.h
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
H : Type u_5
inst✝¹⁵ : CommRing 𝕜
inst✝¹⁴ : AddCommGroup E
inst✝¹³ : AddCommGroup F
inst✝¹² : AddCommGroup G
inst✝¹¹ : Module 𝕜 E
inst✝¹⁰ : Module 𝕜 F
inst✝⁹ : Module 𝕜 G
inst✝⁸ : TopologicalSpace E
inst✝⁷ : TopologicalSpace F
inst✝⁶ : TopologicalSpace G
inst✝⁵ : TopologicalAddGroup E
inst✝⁴ : ContinuousConstSMul 𝕜 E
inst✝³ : TopologicalAddGroup F
inst✝² : ContinuousConstSMul 𝕜 F
inst✝¹ : TopologicalAddGroup G
inst✝ : ContinuousConstSMul 𝕜 G
p : FormalMultilinearSeries 𝕜 E F
n : ℕ
c : Composition n
v : Fin n → E
i : Fin c.length
⊢ p.removeZero.applyComposition c v i = p.applyComposition c v i
state_after: no goals
tactic: simp [applyComposition, zero_lt_one.trans_le (c.one_le_blocksFun i), removeZero_of_pos]
Theorem: ProjectiveSpectrum.gc_set
File: Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean

Proof steps:
state_before: R : Type u_1
A : Type u_2
inst✝³ : CommSemiring R
inst✝² : CommRing A
inst✝¹ : Algebra R A
𝒜 : ℕ → Submodule R A
inst✝ : GradedAlgebra 𝒜
⊢ GaloisConnection (fun s => zeroLocus 𝒜 s) fun t => ↑(vanishingIdeal t)
state_after: R : Type u_1
A : Type u_2
inst✝³ : CommSemiring R
inst✝² : CommRing A
inst✝¹ : Algebra R A
𝒜 : ℕ → Submodule R A
inst✝ : GradedAlgebra 𝒜
ideal_gc : GaloisConnection Ideal.span SetLike.coe
⊢ GaloisConnection (fun s => zeroLocus 𝒜 s) fun t => ↑(vanishingIdeal t)
tactic: have ideal_gc : GaloisConnection Ideal.span _ := (Submodule.gi A _).gc
state_before: R : Type u_1
A : Type u_2
inst✝³ : CommSemiring R
inst✝² : CommRing A
inst✝¹ : Algebra R A
𝒜 : ℕ → Submodule R A
inst✝ : GradedAlgebra 𝒜
ideal_gc : GaloisConnection Ideal.span SetLike.coe
⊢ GaloisConnection (fun s => zeroLocus 𝒜 s) fun t => ↑(vanishingIdeal t)
state_after: no goals
tactic: simpa [zeroLocus_span, Function.comp] using GaloisConnection.compose ideal_gc (gc_ideal 𝒜)
Theorem: Filter.HasBasis.lebesgue_number_lemma
File: Mathlib/Topology/UniformSpace/Basic.lean

Proof steps:
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι✝ : Sort u_1
inst✝ : UniformSpace α
K : Set α
ι' : Sort u_2
ι : Sort u_3
p : ι' → Prop
V : ι' → Set (α × α)
U : ι → Set α
hbasis : (𝓤 α).HasBasis p V
hK : IsCompact K
hopen : ∀ (j : ι), IsOpen (U j)
hcover : K ⊆ ⋃ j, U j
⊢ ∃ i, p i ∧ ∀ x ∈ K, ∃ j, ball x (V i) ⊆ U j
state_after: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι✝ : Sort u_1
inst✝ : UniformSpace α
K : Set α
ι' : Sort u_2
ι : Sort u_3
p : ι' → Prop
V : ι' → Set (α × α)
U : ι → Set α
hbasis : (𝓤 α).HasBasis p V
hK : IsCompact K
hopen : ∀ (j : ι), IsOpen (U j)
hcover : K ⊆ ⋃ j, U j
⊢ ∀ ⦃s t : Set (α × α)⦄, s ⊆ t → (∀ x ∈ K, ∃ i, ball x t ⊆ U i) → ∀ x ∈ K, ∃ i, ball x s ⊆ U i
tactic: refine (hbasis.exists_iff ?_).1 (lebesgue_number_lemma hK hopen hcover)
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι✝ : Sort u_1
inst✝ : UniformSpace α
K : Set α
ι' : Sort u_2
ι : Sort u_3
p : ι' → Prop
V : ι' → Set (α × α)
U : ι → Set α
hbasis : (𝓤 α).HasBasis p V
hK : IsCompact K
hopen : ∀ (j : ι), IsOpen (U j)
hcover : K ⊆ ⋃ j, U j
⊢ ∀ ⦃s t : Set (α × α)⦄, s ⊆ t → (∀ x ∈ K, ∃ i, ball x t ⊆ U i) → ∀ x ∈ K, ∃ i, ball x s ⊆ U i
state_after: no goals
tactic: exact fun s t hst ht x hx ↦ (ht x hx).imp fun i hi ↦ Subset.trans (ball_mono hst _) hi
Theorem: CategoryTheory.Endofunctor.Coalgebra.functorOfNatTrans_obj_V
File: Mathlib/CategoryTheory/Endofunctor/Algebra.lean

Proof steps:
state_before: C : Type u
inst✝ : Category.{v, u} C
F✝ : C ⥤ C
V V₀ V₁ V₂ : Coalgebra F✝
f✝ : V₀ ⟶ V₁
g : V₁ ⟶ V₂
F G : C ⥤ C
α : F ⟶ G
X✝ Y✝ : Coalgebra F
f : X✝ ⟶ Y✝
⊢ ((fun V => { V := V.V, str := V.str ≫ α.app V.V }) X✝).str ≫ G.map f.f =
    f.f ≫ ((fun V => { V := V.V, str := V.str ≫ α.app V.V }) Y✝).str
state_after: no goals
tactic: rw [Category.assoc, ← α.naturality, ← Category.assoc, f.h, Category.assoc]