ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
Theorem: CompleteLattice.sSup_continuous'
File: Mathlib/Order/OmegaCompletePartialOrder.lean

Proof steps:
state_before: α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α → β)
hc : ∀ f ∈ s, Continuous' f
⊢ Continuous' (sSup s)
state_after: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ f ∈ DFunLike.coe '' s, Continuous' f
⊢ Continuous' (sSup (DFunLike.coe '' s))
tactic: lift s to Set (α →o β) using fun f hf => (hc f hf).to_monotone
state_before: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ f ∈ DFunLike.coe '' s, Continuous' f
⊢ Continuous' (sSup (DFunLike.coe '' s))
state_after: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous' (sSup (DFunLike.coe '' s))
tactic: simp only [Set.forall_mem_image, continuous'_coe] at hc
state_before: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous' (sSup (DFunLike.coe '' s))
state_after: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous' (⨆ a ∈ s, ⇑a)
tactic: rw [sSup_image]
state_before: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous' (⨆ a ∈ s, ⇑a)
state_after: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous (⨆ i ∈ s, i)
tactic: norm_cast
state_before: case intro
α : Type u
β : Type v
inst✝¹ : OmegaCompletePartialOrder α
inst✝ : CompleteLattice β
s : Set (α →o β)
hc : ∀ ⦃x : α →o β⦄, x ∈ s → Continuous x
⊢ Continuous (⨆ i ∈ s, i)
state_after: no goals
tactic: exact iSup_continuous fun f ↦ iSup_continuous fun hf ↦ hc hf
Theorem: not_fermatLastTheoremFor_two
File: Mathlib/NumberTheory/FLT/Basic.lean

Proof steps:
state_before: h : FermatLastTheoremFor 2
⊢ 3 ≠ 0
state_after: no goals
tactic: norm_num
state_before: h : FermatLastTheoremFor 2
⊢ 4 ≠ 0
state_after: no goals
tactic: norm_num
state_before: h : FermatLastTheoremFor 2
⊢ 5 ≠ 0
state_after: no goals
tactic: norm_num
state_before: h : FermatLastTheoremFor 2
⊢ 3 ^ 2 + 4 ^ 2 = 5 ^ 2
state_after: no goals
tactic: norm_num
Theorem: Submodule.piQuotientLift_mk
File: Mathlib/LinearAlgebra/QuotientPi.lean

Proof steps:
state_before: ι : Type u_1
R : Type u_2
inst✝⁸ : CommRing R
Ms : ι → Type u_3
inst✝⁷ : (i : ι) → AddCommGroup (Ms i)
inst✝⁶ : (i : ι) → Module R (Ms i)
N : Type u_4
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R N
Ns : ι → Type u_5
inst✝³ : (i : ι) → AddCommGroup (Ns i)
inst✝² : (i : ι) → Module R (Ns i)
inst✝¹ : Fintype ι
inst✝ : DecidableEq ι
p : (i : ι) → Submodule R (Ms i)
q : Submodule R N
f : (i : ι) → Ms i →ₗ[R] N
hf : ∀ (i : ι), p i ≤ comap (f i) q
x : (i : ι) → Ms i
⊢ ((piQuotientLift p q f hf) fun i => Quotient.mk (x i)) = Quotient.mk (((lsum R Ms R) f) x)
state_after: ι : Type u_1
R : Type u_2
inst✝⁸ : CommRing R
Ms : ι → Type u_3
inst✝⁷ : (i : ι) → AddCommGroup (Ms i)
inst✝⁶ : (i : ι) → Module R (Ms i)
N : Type u_4
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R N
Ns : ι → Type u_5
inst✝³ : (i : ι) → AddCommGroup (Ns i)
inst✝² : (i : ι) → Module R (Ns i)
inst✝¹ : Fintype ι
inst✝ : DecidableEq ι
p : (i : ι) → Submodule R (Ms i)
q : Submodule R N
f : (i : ι) → Ms i →ₗ[R] N
hf : ∀ (i : ι), p i ≤ comap (f i) q
x : (i : ι) → Ms i
⊢ (∑ d : ι, ((p d).mapQ q (f d) ⋯ ∘ₗ proj d) fun i => Quotient.mk (x i)) = ∑ x_1 : ι, q.mkQ ((f x_1 ∘ₗ proj x_1) x)
tactic: rw [piQuotientLift, lsum_apply, sum_apply, ← mkQ_apply, lsum_apply, sum_apply, _root_.map_sum]
state_before: ι : Type u_1
R : Type u_2
inst✝⁸ : CommRing R
Ms : ι → Type u_3
inst✝⁷ : (i : ι) → AddCommGroup (Ms i)
inst✝⁶ : (i : ι) → Module R (Ms i)
N : Type u_4
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R N
Ns : ι → Type u_5
inst✝³ : (i : ι) → AddCommGroup (Ns i)
inst✝² : (i : ι) → Module R (Ns i)
inst✝¹ : Fintype ι
inst✝ : DecidableEq ι
p : (i : ι) → Submodule R (Ms i)
q : Submodule R N
f : (i : ι) → Ms i →ₗ[R] N
hf : ∀ (i : ι), p i ≤ comap (f i) q
x : (i : ι) → Ms i
⊢ (∑ d : ι, ((p d).mapQ q (f d) ⋯ ∘ₗ proj d) fun i => Quotient.mk (x i)) = ∑ x_1 : ι, q.mkQ ((f x_1 ∘ₗ proj x_1) x)
state_after: no goals
tactic: simp only [coe_proj, mapQ_apply, mkQ_apply, comp_apply]
Theorem: Nat.primesBelow_succ
File: Mathlib/NumberTheory/SmoothNumbers.lean

Proof steps:
state_before: n : ℕ
⊢ n.succ.primesBelow = if Prime n then insert n n.primesBelow else n.primesBelow
state_after: no goals
tactic: rw [primesBelow, primesBelow, Finset.range_succ, Finset.filter_insert]
Theorem: PrimeSpectrum.zeroLocus_span
File: Mathlib/RingTheory/PrimeSpectrum.lean

Proof steps:
state_before: R : Type u
S : Type v
inst✝¹ : CommSemiring R
inst✝ : CommSemiring S
s : Set R
⊢ zeroLocus ↑(Ideal.span s) = zeroLocus s
state_after: case h
R : Type u
S : Type v
inst✝¹ : CommSemiring R
inst✝ : CommSemiring S
s : Set R
x : PrimeSpectrum R
⊢ x ∈ zeroLocus ↑(Ideal.span s) ↔ x ∈ zeroLocus s
tactic: ext x
state_before: case h
R : Type u
S : Type v
inst✝¹ : CommSemiring R
inst✝ : CommSemiring S
s : Set R
x : PrimeSpectrum R
⊢ x ∈ zeroLocus ↑(Ideal.span s) ↔ x ∈ zeroLocus s
state_after: no goals
tactic: exact (Submodule.gi R R).gc s x.asIdeal
Theorem: GroupWithZero.mul_right_injective
File: Mathlib/Algebra/GroupWithZero/Basic.lean

Proof steps:
state_before: α : Type u_1
M₀ : Type u_2
G₀ : Type u_3
M₀' : Type u_4
G₀' : Type u_5
F : Type u_6
F' : Type u_7
inst✝ : GroupWithZero G₀
a b c g h✝ x : G₀
h : x ≠ 0
y y' : G₀
w : (fun y => y * x) y = (fun y => y * x) y'
⊢ y = y'
state_after: no goals
tactic: simpa only [mul_assoc, mul_inv_cancel h, mul_one] using congr_arg (fun y => y * x⁻¹) w
Theorem: mulIndicator_thickening_eventually_eq_mulIndicator_closure
File: Mathlib/Topology/MetricSpace/ThickenedIndicator.lean

Proof steps:
state_before: α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: case pos
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∈ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

case neg
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
tactic: by_cases x_mem_closure : x ∈ closure E
Theorem: connectedComponentIn_mem_nhds
File: Mathlib/Topology/Connected/LocallyConnected.lean

Proof steps:
state_before: α : Type u
β : Type v
ι : Type u_1
π : ι → Type u_2
inst✝¹ : TopologicalSpace α
s t u v : Set α
inst✝ : LocallyConnectedSpace α
F : Set α
x : α
h : F ∈ 𝓝 x
⊢ connectedComponentIn F x ∈ 𝓝 x
state_after: α : Type u
β : Type v
ι : Type u_1
π : ι → Type u_2
inst✝¹ : TopologicalSpace α
s t u v : Set α
inst✝ : LocallyConnectedSpace α
F : Set α
x : α
h : ∃ i, (IsOpen i ∧ x ∈ i ∧ IsConnected i) ∧ id i ⊆ F
⊢ connectedComponentIn F x ∈ 𝓝 x
tactic: rw [(LocallyConnectedSpace.open_connected_basis x).mem_iff] at h
state_before: α : Type u
β : Type v
ι : Type u_1
π : ι → Type u_2
inst✝¹ : TopologicalSpace α
s t u v : Set α
inst✝ : LocallyConnectedSpace α
F : Set α
x : α
h : ∃ i, (IsOpen i ∧ x ∈ i ∧ IsConnected i) ∧ id i ⊆ F
⊢ connectedComponentIn F x ∈ 𝓝 x
state_after: case intro.intro.intro.intro
α : Type u
β : Type v
ι : Type u_1
π : ι → Type u_2
inst✝¹ : TopologicalSpace α
s✝ t u v : Set α
inst✝ : LocallyConnectedSpace α
F : Set α
x : α
s : Set α
hsF : id s ⊆ F
h1s : IsOpen s
hxs : x ∈ s
h2s : IsConnected s
⊢ connectedComponentIn F x ∈ 𝓝 x
tactic: rcases h with ⟨s, ⟨h1s, hxs, h2s⟩, hsF⟩
state_before: case intro.intro.intro.intro
α : Type u
β : Type v
ι : Type u_1
π : ι → Type u_2
inst✝¹ : TopologicalSpace α
s✝ t u v : Set α
inst✝ : LocallyConnectedSpace α
F : Set α
x : α
s : Set α
hsF : id s ⊆ F
h1s : IsOpen s
hxs : x ∈ s
h2s : IsConnected s
⊢ connectedComponentIn F x ∈ 𝓝 x
state_after: no goals
tactic: exact mem_nhds_iff.mpr ⟨s, h2s.isPreconnected.subset_connectedComponentIn hxs hsF, h1s, hxs⟩
Theorem: PEquiv.refl_trans
File: Mathlib/Data/PEquiv.lean

Proof steps:
state_before: α : Type u
β : Type v
γ : Type w
δ : Type x
f : α ≃. β
⊢ (PEquiv.refl α).trans f = f
state_after: case h.a
α : Type u
β : Type v
γ : Type w
δ : Type x
f : α ≃. β
x✝ : α
a✝ : β
⊢ a✝ ∈ ((PEquiv.refl α).trans f) x✝ ↔ a✝ ∈ f x✝
tactic: ext
state_before: case h.a
α : Type u
β : Type v
γ : Type w
δ : Type x
f : α ≃. β
x✝ : α
a✝ : β
⊢ a✝ ∈ ((PEquiv.refl α).trans f) x✝ ↔ a✝ ∈ f x✝
state_after: case h.a
α : Type u
β : Type v
γ : Type w
δ : Type x
f : α ≃. β
x✝ : α
a✝ : β
⊢ a✝ ∈ f x✝ ↔ a✝ ∈ f x✝
tactic: dsimp [PEquiv.trans]
state_before: case h.a
α : Type u
β : Type v
γ : Type w
δ : Type x
f : α ≃. β
x✝ : α
a✝ : β
⊢ a✝ ∈ f x✝ ↔ a✝ ∈ f x✝
state_after: no goals
tactic: rfl
Theorem: ModuleCat.MonoidalCategory.hexagon_forward
File: Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean

Proof steps:
state_before: R : Type u
inst✝ : CommRing R
X Y Z : ModuleCat R
⊢ (α_ X Y Z).hom ≫ (X.braiding (Y ⊗ Z)).hom ≫ (α_ Y Z X).hom =
    (X.braiding Y).hom ▷ Z ≫ (α_ Y X Z).hom ≫ Y ◁ (X.braiding Z).hom
state_after: case H
R : Type u
inst✝ : CommRing R
X Y Z : ModuleCat R
⊢ ∀ (x : ↑X) (y : ↑Y) (z : ↑Z),
    ((α_ X Y Z).hom ≫ (X.braiding (Y ⊗ Z)).hom ≫ (α_ Y Z X).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z) =
      ((X.braiding Y).hom ▷ Z ≫ (α_ Y X Z).hom ≫ Y ◁ (X.braiding Z).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z)
tactic: apply TensorProduct.ext_threefold
state_before: case H
R : Type u
inst✝ : CommRing R
X Y Z : ModuleCat R
⊢ ∀ (x : ↑X) (y : ↑Y) (z : ↑Z),
    ((α_ X Y Z).hom ≫ (X.braiding (Y ⊗ Z)).hom ≫ (α_ Y Z X).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z) =
      ((X.braiding Y).hom ▷ Z ≫ (α_ Y X Z).hom ≫ Y ◁ (X.braiding Z).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z)
state_after: case H
R : Type u
inst✝ : CommRing R
X Y Z : ModuleCat R
x : ↑X
y : ↑Y
z : ↑Z
⊢ ((α_ X Y Z).hom ≫ (X.braiding (Y ⊗ Z)).hom ≫ (α_ Y Z X).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z) =
    ((X.braiding Y).hom ▷ Z ≫ (α_ Y X Z).hom ≫ Y ◁ (X.braiding Z).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z)
tactic: intro x y z
state_before: case H
R : Type u
inst✝ : CommRing R
X Y Z : ModuleCat R
x : ↑X
y : ↑Y
z : ↑Z
⊢ ((α_ X Y Z).hom ≫ (X.braiding (Y ⊗ Z)).hom ≫ (α_ Y Z X).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z) =
    ((X.braiding Y).hom ▷ Z ≫ (α_ Y X Z).hom ≫ Y ◁ (X.braiding Z).hom) ((x ⊗ₜ[R] y) ⊗ₜ[R] z)
state_after: no goals
tactic: rfl
Theorem: Filter.disjoint_cocompact_left
File: Mathlib/Topology/Compactness/Compact.lean

Proof steps:
state_before: X : Type u
Y : Type v
ι : Type u_1
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s t : Set X
f : Filter X
⊢ Disjoint (cocompact X) f ↔ ∃ K ∈ f, IsCompact K
state_after: X : Type u
Y : Type v
ι : Type u_1
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s t : Set X
f : Filter X
⊢ (∃ i, IsCompact i ∧ i ∈ f) ↔ ∃ K ∈ f, IsCompact K
tactic: simp_rw [hasBasis_cocompact.disjoint_iff_left, compl_compl]
state_before: X : Type u
Y : Type v
ι : Type u_1
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s t : Set X
f : Filter X
⊢ (∃ i, IsCompact i ∧ i ∈ f) ↔ ∃ K ∈ f, IsCompact K
state_after: no goals
tactic: tauto
Theorem: BddAbove.convolutionExistsAt
File: Mathlib/Analysis/Convolution.lean

Proof steps:
state_before: 𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
P : Type uP
inst✝¹⁴ : NormedAddCommGroup E
inst✝¹³ : NormedAddCommGroup E'
inst✝¹² : NormedAddCommGroup E''
inst✝¹¹ : NormedAddCommGroup F
f f' : G → E
g g' : G → E'
x x' : G
y y' : E
inst✝¹⁰ : NontriviallyNormedField 𝕜
inst✝⁹ : NormedSpace 𝕜 E
inst✝⁸ : NormedSpace 𝕜 E'
inst✝⁷ : NormedSpace 𝕜 E''
inst✝⁶ : NormedSpace 𝕜 F
L : E →L[𝕜] E' →L[𝕜] F
inst✝⁵ : MeasurableSpace G
μ ν : Measure G
inst✝⁴ : AddCommGroup G
inst✝³ : MeasurableNeg G
inst✝² : μ.IsAddLeftInvariant
inst✝¹ : MeasurableAdd₂ G
inst✝ : SFinite μ
x₀ : G
s : Set G
hbg : BddAbove ((fun i => ‖g i‖) '' ((fun t => x₀ - t) ⁻¹' s))
hs : MeasurableSet s
h2s : (support fun t => (L (f t)) (g (x₀ - t))) ⊆ s
hf : IntegrableOn f s μ
hmg : AEStronglyMeasurable g μ
⊢ ConvolutionExistsAt f g x₀ L μ
state_after: case refine_1
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
P : Type uP
inst✝¹⁴ : NormedAddCommGroup E
inst✝¹³ : NormedAddCommGroup E'
inst✝¹² : NormedAddCommGroup E''
inst✝¹¹ : NormedAddCommGroup F
f f' : G → E
g g' : G → E'
x x' : G
y y' : E
inst✝¹⁰ : NontriviallyNormedField 𝕜
inst✝⁹ : NormedSpace 𝕜 E
inst✝⁸ : NormedSpace 𝕜 E'
inst✝⁷ : NormedSpace 𝕜 E''
inst✝⁶ : NormedSpace 𝕜 F
L : E →L[𝕜] E' →L[𝕜] F
inst✝⁵ : MeasurableSpace G
μ ν : Measure G
inst✝⁴ : AddCommGroup G
inst✝³ : MeasurableNeg G
inst✝² : μ.IsAddLeftInvariant
inst✝¹ : MeasurableAdd₂ G
inst✝ : SFinite μ
x₀ : G
s : Set G
hbg : BddAbove ((fun i => ‖g i‖) '' ((fun t => x₀ - t) ⁻¹' s))
hs : MeasurableSet s
h2s : (support fun t => (L (f t)) (g (x₀ - t))) ⊆ s
hf : IntegrableOn f s μ
hmg : AEStronglyMeasurable g μ
⊢ BddAbove ((fun i => ‖g i‖) '' ((fun t => -t + x₀) ⁻¹' s))

case refine_2
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
P : Type uP
inst✝¹⁴ : NormedAddCommGroup E
inst✝¹³ : NormedAddCommGroup E'
inst✝¹² : NormedAddCommGroup E''
inst✝¹¹ : NormedAddCommGroup F
f f' : G → E
g g' : G → E'
x x' : G
y y' : E
inst✝¹⁰ : NontriviallyNormedField 𝕜
inst✝⁹ : NormedSpace 𝕜 E
inst✝⁸ : NormedSpace 𝕜 E'
inst✝⁷ : NormedSpace 𝕜 E''
inst✝⁶ : NormedSpace 𝕜 F
L : E →L[𝕜] E' →L[𝕜] F
inst✝⁵ : MeasurableSpace G
μ ν : Measure G
inst✝⁴ : AddCommGroup G
inst✝³ : MeasurableNeg G
inst✝² : μ.IsAddLeftInvariant
inst✝¹ : MeasurableAdd₂ G
inst✝ : SFinite μ
x₀ : G
s : Set G
hbg : BddAbove ((fun i => ‖g i‖) '' ((fun t => x₀ - t) ⁻¹' s))
hs : MeasurableSet s
h2s : (support fun t => (L (f t)) (g (x₀ - t))) ⊆ s
hf : IntegrableOn f s μ
hmg : AEStronglyMeasurable g μ
⊢ AEStronglyMeasurable g (Measure.map (fun t => x₀ - t) (μ.restrict s))
tactic: refine BddAbove.convolutionExistsAt' L ?_ hs h2s hf ?_
Theorem: Isometry.diam_image
File: Mathlib/Topology/MetricSpace/Isometry.lean

Proof steps:
state_before: ι : Type u_1
α : Type u
β : Type v
γ : Type w
inst✝¹ : PseudoMetricSpace α
inst✝ : PseudoMetricSpace β
f : α → β
hf : Isometry f
s : Set α
⊢ Metric.diam (f '' s) = Metric.diam s
state_after: no goals
tactic: rw [Metric.diam, Metric.diam, hf.ediam_image]
Theorem: Real.hasStrictDerivAt_tan
File: Mathlib/Analysis/SpecialFunctions/Trigonometric/ArctanDeriv.lean

Proof steps:
state_before: x : ℝ
h : cos x ≠ 0
⊢ Complex.cos ↑x ≠ 0
state_after: no goals
tactic: exact mod_cast h
Theorem: gauge_closedBall
File: Mathlib/Analysis/Convex/Gauge.lean

Proof steps:
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝¹ : SeminormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set E
r : ℝ
x✝ : E
hr : 0 ≤ r
x : E
⊢ gauge (closedBall 0 r) x = ‖x‖ / r
state_after: case inl
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝¹ : SeminormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set E
x✝ x : E
hr : 0 ≤ 0
⊢ gauge (closedBall 0 0) x = ‖x‖ / 0

case inr
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝¹ : SeminormedAddCommGroup E
inst✝ : NormedSpace ℝ E
s : Set E
r : ℝ
x✝ : E
hr : 0 ≤ r
x : E
hr' : 0 < r
⊢ gauge (closedBall 0 r) x = ‖x‖ / r
tactic: rcases hr.eq_or_lt with rfl | hr'
Theorem: PartENat.ne_top_iff
File: Mathlib/Data/Nat/PartENat.lean

Proof steps:
state_before: x : PartENat
⊢ x ≠ ⊤ ↔ ∃ n, x = ↑n
state_after: no goals
tactic: simpa only [← some_eq_natCast] using Part.ne_none_iff
Theorem: Ideal.span_singleton_mul_left_inj
File: Mathlib/RingTheory/Ideal/Operations.lean

Proof steps:
state_before: R : Type u
ι : Type u_1
inst✝¹ : CommSemiring R
I J K L : Ideal R
inst✝ : IsDomain R
x : R
hx : x ≠ 0
⊢ I * span {x} = J * span {x} ↔ I = J
state_after: no goals
tactic: simp only [le_antisymm_iff, span_singleton_mul_left_mono hx]
Theorem: WeierstrassCurve.Affine.C_addPolynomial
File: Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean

Proof steps:
state_before: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ C (W.addPolynomial x y L) =
    (Y - C (linePolynomial x y L)) * (W.negPolynomial - C (linePolynomial x y L)) + W.polynomial
state_after: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ C
      (eval (C L * (X - C x) + C y)
        (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))) =
    (Y - C (C L * (X - C x) + C y)) * (-Y - C (C W.a₁ * X + C W.a₃) - C (C L * (X - C x) + C y)) +
      (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))
tactic: rw [addPolynomial, linePolynomial, polynomial, negPolynomial]
state_before: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ C
      (eval (C L * (X - C x) + C y)
        (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))) =
    (Y - C (C L * (X - C x) + C y)) * (-Y - C (C W.a₁ * X + C W.a₃) - C (C L * (X - C x) + C y)) +
      (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))
state_after: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ C
      ((C L * (X - C x) + C y) ^ 2 + (C W.a₁ * X + C W.a₃) * (C L * (X - C x) + C y) -
        (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆)) =
    (Y - C (C L * (X - C x) + C y)) * (-Y - C (C W.a₁ * X + C W.a₃) - C (C L * (X - C x) + C y)) +
      (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))
tactic: eval_simp
state_before: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ C
      ((C L * (X - C x) + C y) ^ 2 + (C W.a₁ * X + C W.a₃) * (C L * (X - C x) + C y) -
        (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆)) =
    (Y - C (C L * (X - C x) + C y)) * (-Y - C (C W.a₁ * X + C W.a₃) - C (C L * (X - C x) + C y)) +
      (Y ^ 2 + C (C W.a₁ * X + C W.a₃) * Y - C (X ^ 3 + C W.a₂ * X ^ 2 + C W.a₄ * X + C W.a₆))
state_after: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ (C (C L) * (C X - C (C x)) + C (C y)) ^ 2 + (C (C W.a₁) * C X + C (C W.a₃)) * (C (C L) * (C X - C (C x)) + C (C y)) -
      (C X ^ 3 + C (C W.a₂) * C X ^ 2 + C (C W.a₄) * C X + C (C W.a₆)) =
    (Y - (C (C L) * (C X - C (C x)) + C (C y))) *
        (-Y - (C (C W.a₁) * C X + C (C W.a₃)) - (C (C L) * (C X - C (C x)) + C (C y))) +
      (Y ^ 2 + (C (C W.a₁) * C X + C (C W.a₃)) * Y - (C X ^ 3 + C (C W.a₂) * C X ^ 2 + C (C W.a₄) * C X + C (C W.a₆)))
tactic: C_simp
state_before: R : Type u
inst✝ : CommRing R
W : Affine R
x y L : R
⊢ (C (C L) * (C X - C (C x)) + C (C y)) ^ 2 + (C (C W.a₁) * C X + C (C W.a₃)) * (C (C L) * (C X - C (C x)) + C (C y)) -
      (C X ^ 3 + C (C W.a₂) * C X ^ 2 + C (C W.a₄) * C X + C (C W.a₆)) =
    (Y - (C (C L) * (C X - C (C x)) + C (C y))) *
        (-Y - (C (C W.a₁) * C X + C (C W.a₃)) - (C (C L) * (C X - C (C x)) + C (C y))) +
      (Y ^ 2 + (C (C W.a₁) * C X + C (C W.a₃)) * Y - (C X ^ 3 + C (C W.a₂) * C X ^ 2 + C (C W.a₄) * C X + C (C W.a₆)))
state_after: no goals
tactic: ring1
Theorem: NormedCommGroup.nhds_basis_norm_lt
File: Mathlib/Analysis/Normed/Group/Basic.lean

Proof steps:
state_before: 𝓕 : 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✝² : SeminormedGroup E
inst✝¹ : SeminormedGroup F
inst✝ : SeminormedGroup G
s : Set E
a a₁ a₂ b b₁ b₂ : E
r r₁ r₂ : ℝ
x : E
⊢ (𝓝 x).HasBasis (fun ε => 0 < ε) fun ε => {y | ‖y / x‖ < ε}
state_after: 𝓕 : 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✝² : SeminormedGroup E
inst✝¹ : SeminormedGroup F
inst✝ : SeminormedGroup G
s : Set E
a a₁ a₂ b b₁ b₂ : E
r r₁ r₂ : ℝ
x : E
⊢ (𝓝 x).HasBasis (fun ε => 0 < ε) fun ε => ball x ε
tactic: simp_rw [← ball_eq']
state_before: 𝓕 : 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✝² : SeminormedGroup E
inst✝¹ : SeminormedGroup F
inst✝ : SeminormedGroup G
s : Set E
a a₁ a₂ b b₁ b₂ : E
r r₁ r₂ : ℝ
x : E
⊢ (𝓝 x).HasBasis (fun ε => 0 < ε) fun ε => ball x ε
state_after: no goals
tactic: exact Metric.nhds_basis_ball
Theorem: CategoryTheory.Functor.map_comp_assoc
File: Mathlib/CategoryTheory/Functor/Basic.lean

Proof steps:
state_before: C : Type u₁
inst✝¹ : Category.{u_1, u₁} C
D : Type u₂
inst✝ : Category.{u_2, u₂} D
F : C ⥤ D
X Y Z : C
f : X ⟶ Y
g : Y ⟶ Z
W : D
h : F.obj Z ⟶ W
⊢ F.map (f ≫ g) ≫ h = F.map f ≫ F.map g ≫ h
state_after: no goals
tactic: rw [F.map_comp, Category.assoc]
Theorem: MeasureTheory.Lp.norm_constL_le
File: Mathlib/MeasureTheory/Function/LpSpace.lean

Proof steps:
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedAddCommGroup F
inst✝⁴ : NormedAddCommGroup G
inst✝³ : IsFiniteMeasure μ
c : E
𝕜 : Type u_5
inst✝² : NontriviallyNormedField 𝕜
inst✝¹ : NormedSpace 𝕜 E
inst✝ : Fact (1 ≤ p)
⊢ 0 ≤ (μ Set.univ).toReal ^ (1 / p.toReal)
state_after: no goals
tactic: positivity
Theorem: dist_smul₀
File: Mathlib/Analysis/Normed/MulAction.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
inst✝³ : NormedDivisionRing α
inst✝² : SeminormedAddCommGroup β
inst✝¹ : Module α β
inst✝ : BoundedSMul α β
s : α
x y : β
⊢ dist (s • x) (s • y) = ‖s‖ * dist x y
state_after: no goals
tactic: simp_rw [dist_eq_norm, (norm_smul s (x - y)).symm, smul_sub]
Theorem: card_eq_pow_finrank
File: Mathlib/FieldTheory/Finite/Basic.lean

Proof steps:
state_before: K : Type u_1
R : Type u_2
V : Type u_3
inst✝⁴ : Fintype K
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : Fintype V
⊢ Fintype.card V = q ^ FiniteDimensional.finrank K V
state_after: K : Type u_1
R : Type u_2
V : Type u_3
inst✝⁴ : Fintype K
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : Fintype V
b : Basis { x // x ∈ IsNoetherian.finsetBasisIndex K V } K V := IsNoetherian.finsetBasis K V
⊢ Fintype.card V = q ^ FiniteDimensional.finrank K V
tactic: let b := IsNoetherian.finsetBasis K V
state_before: K : Type u_1
R : Type u_2
V : Type u_3
inst✝⁴ : Fintype K
inst✝³ : DivisionRing K
inst✝² : AddCommGroup V
inst✝¹ : Module K V
inst✝ : Fintype V
b : Basis { x // x ∈ IsNoetherian.finsetBasisIndex K V } K V := IsNoetherian.finsetBasis K V
⊢ Fintype.card V = q ^ FiniteDimensional.finrank K V
state_after: no goals
tactic: rw [Module.card_fintype b, ← FiniteDimensional.finrank_eq_card_basis b]
Theorem: toIocDiv_zsmul_add
File: Mathlib/Algebra/Order/ToIntervalMod.lean

Proof steps:
state_before: α : Type u_1
inst✝ : LinearOrderedAddCommGroup α
hα : Archimedean α
p : α
hp : 0 < p
a✝ b✝ c : α
n : ℤ
a b : α
m : ℤ
⊢ toIocDiv hp a (m • p + b) = m + toIocDiv hp a b
state_after: no goals
tactic: rw [add_comm, toIocDiv_add_zsmul, add_comm]
Theorem: SimpleGraph.adj_replaceVertex_iff_of_ne_left
File: Mathlib/Combinatorics/SimpleGraph/Operations.lean

Proof steps:
state_before: V : Type u_1
inst✝ : DecidableEq V
G : SimpleGraph V
s t w : V
hw : w ≠ t
⊢ (G.replaceVertex s t).Adj s w ↔ G.Adj s w
state_after: no goals
tactic: simp [replaceVertex, hw]
Theorem: Int.testBit_lnot
File: Mathlib/Data/Int/Bitwise.lean

Proof steps:
state_before: n k : ℕ
⊢ (↑n).lnot.testBit k = !(↑n).testBit k
state_after: no goals
tactic: simp [lnot, testBit]
state_before: n k : ℕ
⊢ -[n+1].lnot.testBit k = !-[n+1].testBit k
state_after: no goals
tactic: simp [lnot, testBit]
Theorem: WithTop.image_coe_Ioc
File: Mathlib/Order/Interval/Set/WithBotTop.lean

Proof steps:
state_before: α : Type u_1
inst✝ : Preorder α
a b : α
⊢ some '' Ioc a b = Ioc ↑a ↑b
state_after: no goals
tactic: rw [← preimage_coe_Ioc, image_preimage_eq_inter_range, range_coe,
    inter_eq_self_of_subset_left
      (Subset.trans Ioc_subset_Iic_self <| Iic_subset_Iio.2 <| coe_lt_top b)]