1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: MeasureTheory.pow_mul_meas_ge_le_snorm
File: Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean

tactic: rw [snorm_eq_lintegral_rpow_nnnorm hp_ne_zero hp_ne_top]
state_before: α : Type u_1
E : Type u_2
m0 : MeasurableSpace α
inst✝ : NormedAddCommGroup E
p : ℝ≥0∞
μ : Measure α
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
⊢ (ε * μ {x | ε ≤ ↑‖f x‖₊ ^ p.toReal}) ^ (1 / p.toReal) ≤ snorm f p μ
state_after: α : Type u_1
E : Type u_2
m0 : MeasurableSpace α
inst✝ : NormedAddCommGroup E
p : ℝ≥0∞
μ : Measure α
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
⊢ (ε * μ {x | ε ≤ ↑‖f x‖₊ ^ p.toReal}) ^ (1 / p.toReal) ≤ (∫⁻ (x : α), ↑‖f x‖₊ ^ p.toReal ∂μ) ^ (1 / p.toReal)

tactic: gcongr
state_before: α : Type u_1
E : Type u_2
m0 : MeasurableSpace α
inst✝ : NormedAddCommGroup E
p : ℝ≥0∞
μ : Measure α
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
⊢ (ε * μ {x | ε ≤ ↑‖f x‖₊ ^ p.toReal}) ^ (1 / p.toReal) ≤ (∫⁻ (x : α), ↑‖f x‖₊ ^ p.toReal ∂μ) ^ (1 / p.toReal)
state_after: case h₁
α : Type u_1
E : Type u_2
m0 : MeasurableSpace α
inst✝ : NormedAddCommGroup E
p : ℝ≥0∞
μ : Measure α
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
⊢ ε * μ {x | ε ≤ ↑‖f x‖₊ ^ p.toReal} ≤ ∫⁻ (x : α), ↑‖f x‖₊ ^ p.toReal ∂μ

tactic: exact mul_meas_ge_le_lintegral₀ (hf.ennnorm.pow_const _) ε
state_before: case h₁
α : Type u_1
E : Type u_2
m0 : MeasurableSpace α
inst✝ : NormedAddCommGroup E
p : ℝ≥0∞
μ : Measure α
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
⊢ ε * μ {x | ε ≤ ↑‖f x‖₊ ^ p.toReal} ≤ ∫⁻ (x : α), ↑‖f x‖₊ ^ p.toReal ∂μ
state_after: no goals
Theorem: Filter.map_atTop_eq_of_gc
File: Mathlib/Order/Filter/AtTopBot.lean

tactic: refine
  le_antisymm
    (hf.tendsto_atTop_atTop fun b => ⟨g (b ⊔ b'), le_sup_left.trans <| hgi _ le_sup_right⟩) ?_
state_before: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
⊢ map f atTop = atTop
state_after: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
⊢ atTop ≤ map f atTop

tactic: rw [@map_atTop_eq _ _ ⟨g b'⟩]
state_before: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
⊢ atTop ≤ map f atTop
state_after: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
⊢ atTop ≤ ⨅ a, 𝓟 (f '' {a' | a ≤ a'})

tactic: refine le_iInf fun a => iInf_le_of_le (f a ⊔ b') <| principal_mono.2 fun b hb => ?_
state_before: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
⊢ atTop ≤ ⨅ a, 𝓟 (f '' {a' | a ≤ a'})
state_after: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
a : α
b : β
hb : b ∈ Ici (f a ⊔ b')
⊢ b ∈ f '' {a' | a ≤ a'}

tactic: rw [mem_Ici, sup_le_iff] at hb
state_before: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
a : α
b : β
hb : b ∈ Ici (f a ⊔ b')
⊢ b ∈ f '' {a' | a ≤ a'}
state_after: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
a : α
b : β
hb : f a ≤ b ∧ b' ≤ b
⊢ b ∈ f '' {a' | a ≤ a'}

tactic: exact ⟨g b, (gc _ _ hb.2).1 hb.1, le_antisymm ((gc _ _ hb.2).2 le_rfl) (hgi _ hb.2)⟩
state_before: ι : Type u_1
ι' : Type u_2
α : Type u_3
β : Type u_4
γ : Type u_5
inst✝¹ : SemilatticeSup α
inst✝ : SemilatticeSup β
f : α → β
g : β → α
b' : β
hf : Monotone f
gc : ∀ (a : α), ∀ b ≥ b', f a ≤ b ↔ a ≤ g b
hgi : ∀ b ≥ b', b ≤ f (g b)
a : α
b : β
hb : f a ≤ b ∧ b' ≤ b
⊢ b ∈ f '' {a' | a ≤ a'}
state_after: no goals
Theorem: Set.projIcc_of_le_left
File: Mathlib/Order/Interval/Set/ProjIcc.lean

tactic: simp [projIcc, hx, hx.trans h]
state_before: α : Type u_1
β : Type u_2
inst✝ : LinearOrder α
a b : α
h : a ≤ b
x : α
hx : x ≤ a
⊢ projIcc a b h x = ⟨a, ⋯⟩
state_after: no goals
Theorem: abs_min_sub_min_le_max
File: Mathlib/Algebra/Order/Group/MinMax.lean

tactic: simpa only [max_neg_neg, neg_sub_neg, abs_sub_comm] using
  abs_max_sub_max_le_max (-a) (-b) (-c) (-d)
state_before: α : Type u_1
inst✝ : LinearOrderedAddCommGroup α
a✝ b✝ c✝ a b c d : α
⊢ |min a b - min c d| ≤ max |a - c| |b - d|
state_after: no goals
Theorem: StrictConvexOn.translate_right
File: Mathlib/Analysis/Convex/Function.lean

tactic: rw [smul_add, smul_add, add_add_add_comm, Convex.combo_self hab]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
α : Type u_4
β : Type u_5
ι : Type u_6
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCancelCommMonoid E
inst✝² : OrderedAddCommMonoid β
inst✝¹ : Module 𝕜 E
inst✝ : SMul 𝕜 β
s : Set E
f : E → β
hf : StrictConvexOn 𝕜 s f
c x : E
hx : x ∈ (fun z => c + z) ⁻¹' s
y : E
hy : y ∈ (fun z => c + z) ⁻¹' s
hxy : x ≠ y
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ f (c + (a • x + b • y)) = f (a • (c + x) + b • (c + y))
state_after: no goals
Theorem: supPrime_iff_supIrred
File: Mathlib/Order/Irreducible.lean

tactic: simp_rw [← inf_eq_left, inf_sup_left]
state_before: ι : Type u_1
α : Type u_2
inst✝ : DistribLattice α
a b✝ c✝ : α
h : ∀ ⦃b c : α⦄, b ⊔ c = a → b = a ∨ c = a
b c : α
⊢ a ≤ b ⊔ c → a ≤ b ∨ a ≤ c
state_after: ι : Type u_1
α : Type u_2
inst✝ : DistribLattice α
a b✝ c✝ : α
h : ∀ ⦃b c : α⦄, b ⊔ c = a → b = a ∨ c = a
b c : α
⊢ a ⊓ b ⊔ a ⊓ c = a → a ⊓ b = a ∨ a ⊓ c = a

tactic: exact @h _ _
state_before: ι : Type u_1
α : Type u_2
inst✝ : DistribLattice α
a b✝ c✝ : α
h : ∀ ⦃b c : α⦄, b ⊔ c = a → b = a ∨ c = a
b c : α
⊢ a ⊓ b ⊔ a ⊓ c = a → a ⊓ b = a ∨ a ⊓ c = a
state_after: no goals
Theorem: exists_compact_superset
File: Mathlib/Topology/Compactness/LocallyCompact.lean

tactic: choose s hc hmem using fun x : X ↦ exists_compact_mem_nhds x
state_before: X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
⊢ ∃ K', IsCompact K' ∧ K ⊆ interior K'
state_after: X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
⊢ ∃ K', IsCompact K' ∧ K ⊆ interior K'

tactic: rcases hK.elim_nhds_subcover _ fun x _ ↦ interior_mem_nhds.2 (hmem x) with ⟨I, -, hIK⟩
state_before: X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
⊢ ∃ K', IsCompact K' ∧ K ⊆ interior K'
state_after: case intro.intro
X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
I : Finset X
hIK : K ⊆ ⋃ x ∈ I, interior (s x)
⊢ ∃ K', IsCompact K' ∧ K ⊆ interior K'

tactic: refine ⟨⋃ x ∈ I, s x, I.isCompact_biUnion fun _ _ ↦ hc _, hIK.trans ?_⟩
state_before: case intro.intro
X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
I : Finset X
hIK : K ⊆ ⋃ x ∈ I, interior (s x)
⊢ ∃ K', IsCompact K' ∧ K ⊆ interior K'
state_after: case intro.intro
X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
I : Finset X
hIK : K ⊆ ⋃ x ∈ I, interior (s x)
⊢ ⋃ x ∈ I, interior (s x) ⊆ interior (⋃ x ∈ I, s x)

tactic: exact iUnion₂_subset fun x hx ↦ interior_mono <| subset_iUnion₂ (s := fun x _ ↦ s x) x hx
state_before: case intro.intro
X : Type u_1
Y : Type u_2
ι : Type u_3
inst✝² : TopologicalSpace X
inst✝¹ : TopologicalSpace Y
s✝ t : Set X
inst✝ : WeaklyLocallyCompactSpace X
K : Set X
hK : IsCompact K
s : X → Set X
hc : ∀ (x : X), IsCompact (s x)
hmem : ∀ (x : X), s x ∈ 𝓝 x
I : Finset X
hIK : K ⊆ ⋃ x ∈ I, interior (s x)
⊢ ⋃ x ∈ I, interior (s x) ⊆ interior (⋃ x ∈ I, s x)
state_after: no goals
Theorem: Subalgebra.fg_of_fg_toSubmodule
File: Mathlib/RingTheory/Adjoin/FG.lean

tactic: rw [ht]
state_before: R : Type u
A : Type v
B : Type w
inst✝⁴ : CommSemiring R
inst✝³ : Semiring A
inst✝² : Algebra R A
inst✝¹ : Semiring B
inst✝ : Algebra R B
S : Subalgebra R A
x✝ : (toSubmodule S).FG
t : Finset A
ht : span R ↑t = toSubmodule S
x : A
hx : x ∈ toSubmodule S
⊢ x ∈ span R ↑t
state_after: R : Type u
A : Type v
B : Type w
inst✝⁴ : CommSemiring R
inst✝³ : Semiring A
inst✝² : Algebra R A
inst✝¹ : Semiring B
inst✝ : Algebra R B
S : Subalgebra R A
x✝ : (toSubmodule S).FG
t : Finset A
ht : span R ↑t = toSubmodule S
x : A
hx : x ∈ toSubmodule S
⊢ x ∈ toSubmodule S

tactic: exact hx
state_before: R : Type u
A : Type v
B : Type w
inst✝⁴ : CommSemiring R
inst✝³ : Semiring A
inst✝² : Algebra R A
inst✝¹ : Semiring B
inst✝ : Algebra R B
S : Subalgebra R A
x✝ : (toSubmodule S).FG
t : Finset A
ht : span R ↑t = toSubmodule S
x : A
hx : x ∈ toSubmodule S
⊢ x ∈ toSubmodule S
state_after: no goals
Theorem: MeasurableEmbedding.essSup_map_measure
File: Mathlib/MeasureTheory/Function/EssSup.lean

tactic: refine le_antisymm ?_ (essSup_comp_le_essSup_map_measure hf.measurable.aemeasurable)
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
⊢ essSup g (Measure.map f μ) = essSup (g ∘ f) μ
state_after: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
⊢ essSup g (Measure.map f μ) ≤ essSup (g ∘ f) μ

tactic: refine limsSup_le_limsSup (by isBoundedDefault) (by isBoundedDefault) (fun c h_le => ?_)
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
⊢ essSup g (Measure.map f μ) ≤ essSup (g ∘ f) μ
state_after: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
c : β
h_le : ∀ᶠ (n : β) in map (g ∘ f) (ae μ), n ≤ c
⊢ ∀ᶠ (n : β) in map g (ae (Measure.map f μ)), n ≤ c

tactic: rw [eventually_map] at h_le ⊢
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
c : β
h_le : ∀ᶠ (n : β) in map (g ∘ f) (ae μ), n ≤ c
⊢ ∀ᶠ (n : β) in map g (ae (Measure.map f μ)), n ≤ c
state_after: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
c : β
h_le : ∀ᵐ (a : α) ∂μ, (g ∘ f) a ≤ c
⊢ ∀ᵐ (a : γ) ∂Measure.map f μ, g a ≤ c

tactic: exact hf.ae_map_iff.mpr h_le
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
c : β
h_le : ∀ᵐ (a : α) ∂μ, (g ∘ f) a ≤ c
⊢ ∀ᵐ (a : γ) ∂Measure.map f μ, g a ≤ c
state_after: no goals

tactic: isBoundedDefault
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
⊢ IsCobounded (fun x x_1 => x ≤ x_1) (map g (ae (Measure.map f μ)))
state_after: no goals

tactic: isBoundedDefault
state_before: α : Type u_1
β : Type u_2
m : MeasurableSpace α
μ ν : Measure α
inst✝ : CompleteLattice β
γ : Type u_3
mγ : MeasurableSpace γ
f : α → γ
g : γ → β
hf : MeasurableEmbedding f
⊢ IsBounded (fun x x_1 => x ≤ x_1) (map (g ∘ f) (ae μ))
state_after: no goals
Theorem: AlgebraicGeometry.affine_cancel_right_isIso
File: Mathlib/AlgebraicGeometry/Morphisms/Basic.lean

tactic: rw [← P.toProperty_apply, ← P.toProperty_apply, hP.cancel_right_isIso]
state_before: P : AffineTargetMorphismProperty
hP : P.toProperty.RespectsIso
X Y Z : Scheme
f : X ⟶ Y
g : Y ⟶ Z
inst✝² : IsIso g
inst✝¹ : IsAffine Z
inst✝ : IsAffine Y
⊢ P (f ≫ g) ↔ P f
state_after: no goals
Theorem: Irreducible.natDegree_pos
File: Mathlib/Algebra/Polynomial/FieldDivision.lean

tactic: obtain ⟨x, hf⟩ := natDegree_eq_zero.1 H
state_before: F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
⊢ False
state_after: case intro
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
⊢ False

tactic: by_cases hx : x = 0
state_before: case intro
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
⊢ False
state_after: case pos
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
hx : x = 0
⊢ False

case neg
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
hx : ¬x = 0
⊢ False

tactic: exact h.1 (hf ▸ isUnit_C.2 (Ne.isUnit hx))
state_before: case neg
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
hx : ¬x = 0
⊢ False
state_after: no goals

tactic: rw [← hf, hx, map_zero] at h
state_before: case pos
F : Type u_1
inst✝ : Field F
f : F[X]
h : Irreducible f
H : f.natDegree = 0
x : F
hf : C x = f
hx : x = 0
⊢ False
state_after: case pos
F : Type u_1
inst✝ : Field F
f : F[X]
H : f.natDegree = 0
x : F
h : Irreducible 0
hf : C x = f
hx : x = 0
⊢ False

tactic: exact not_irreducible_zero h
state_before: case pos
F : Type u_1
inst✝ : Field F
f : F[X]
H : f.natDegree = 0
x : F
h : Irreducible 0
hf : C x = f
hx : x = 0
⊢ False
state_after: no goals
Theorem: FormalMultilinearSeries.summable_norm_mul_pow
File: Mathlib/Analysis/Analytic/Basic.lean

tactic: obtain ⟨a, ha : a ∈ Ioo (0 : ℝ) 1, C, - : 0 < C, hp⟩ := p.norm_mul_pow_le_mul_pow_of_lt_radius h
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
p✝ : FormalMultilinearSeries 𝕜 E F
r✝ : ℝ≥0
p : FormalMultilinearSeries 𝕜 E F
r : ℝ≥0
h : ↑r < p.radius
⊢ Summable fun n => ‖p n‖ * ↑r ^ n
state_after: case intro.intro.intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
p✝ : FormalMultilinearSeries 𝕜 E F
r✝ : ℝ≥0
p : FormalMultilinearSeries 𝕜 E F
r : ℝ≥0
h : ↑r < p.radius
a : ℝ
ha : a ∈ Ioo 0 1
C : ℝ
hp : ∀ (n : ℕ), ‖p n‖ * ↑r ^ n ≤ C * a ^ n
⊢ Summable fun n => ‖p n‖ * ↑r ^ n

tactic: exact .of_nonneg_of_le (fun n => mul_nonneg (norm_nonneg _) (pow_nonneg r.coe_nonneg _))
  hp ((summable_geometric_of_lt_one ha.1.le ha.2).mul_left _)
state_before: case intro.intro.intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
p✝ : FormalMultilinearSeries 𝕜 E F
r✝ : ℝ≥0
p : FormalMultilinearSeries 𝕜 E F
r : ℝ≥0
h : ↑r < p.radius
a : ℝ
ha : a ∈ Ioo 0 1
C : ℝ
hp : ∀ (n : ℕ), ‖p n‖ * ↑r ^ n ≤ C * a ^ n
⊢ Summable fun n => ‖p n‖ * ↑r ^ n
state_after: no goals
Theorem: ZMod.val_add_le
File: Mathlib/Data/ZMod/Basic.lean

tactic: cases n
state_before: n : ℕ
a b : ZMod n
⊢ (a + b).val ≤ a.val + b.val
state_after: case zero
a b : ZMod 0
⊢ (a + b).val ≤ a.val + b.val

case succ
n✝ : ℕ
a b : ZMod (n✝ + 1)
⊢ (a + b).val ≤ a.val + b.val

tactic: simp [ZMod.val]
state_before: case zero
a b : ZMod 0
⊢ (a + b).val ≤ a.val + b.val
state_after: case zero
a b : ZMod 0
⊢ Int.natAbs (a + b) ≤ Int.natAbs a + Int.natAbs b

tactic: apply Int.natAbs_add_le
state_before: case zero
a b : ZMod 0
⊢ Int.natAbs (a + b) ≤ Int.natAbs a + Int.natAbs b
state_after: no goals

tactic: simp [ZMod.val_add]
state_before: case succ
n✝ : ℕ
a b : ZMod (n✝ + 1)
⊢ (a + b).val ≤ a.val + b.val
state_after: case succ
n✝ : ℕ
a b : ZMod (n✝ + 1)
⊢ (a.val + b.val) % (n✝ + 1) ≤ a.val + b.val

tactic: apply Nat.mod_le
state_before: case succ
n✝ : ℕ
a b : ZMod (n✝ + 1)
⊢ (a.val + b.val) % (n✝ + 1) ≤ a.val + b.val
state_after: no goals
Theorem: Matrix.dotProduct_add
File: Mathlib/Data/Matrix/Basic.lean

tactic: simp [dotProduct, mul_add, Finset.sum_add_distrib]
state_before: l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
m' : o → Type u_5
n' : o → Type u_6
R : Type u_7
S : Type u_8
α : Type v
β : Type w
γ : Type u_9
inst✝² : Fintype m
inst✝¹ : Fintype n
inst✝ : NonUnitalNonAssocSemiring α
u v w : m → α
x y : n → α
⊢ u ⬝ᵥ (v + w) = u ⬝ᵥ v + u ⬝ᵥ w
state_after: no goals
Theorem: MvPolynomial.pderiv_X_self
File: Mathlib/Algebra/MvPolynomial/PDeriv.lean

tactic: classical simp
state_before: R : Type u
σ : Type v
a a' a₁ a₂ : R
s : σ →₀ ℕ
inst✝ : CommSemiring R
i : σ
⊢ (pderiv i) (X i) = 1
state_after: no goals

tactic: simp
state_before: R : Type u
σ : Type v
a a' a₁ a₂ : R
s : σ →₀ ℕ
inst✝ : CommSemiring R
i : σ
⊢ (pderiv i) (X i) = 1
state_after: no goals
Theorem: Set.nontrivial_of_infsep_pos
File: Mathlib/Topology/MetricSpace/Infsep.lean

tactic: contrapose hs
state_before: α : Type u_1
β : Type u_2
inst✝ : EDist α
x y : α
s : Set α
hs : 0 < s.infsep
⊢ s.Nontrivial
state_after: α : Type u_1
β : Type u_2
inst✝ : EDist α
x y : α
s : Set α
hs : ¬s.Nontrivial
⊢ ¬0 < s.infsep

tactic: rw [not_nontrivial_iff] at hs
state_before: α : Type u_1
β : Type u_2
inst✝ : EDist α
x y : α
s : Set α
hs : ¬s.Nontrivial
⊢ ¬0 < s.infsep
state_after: α : Type u_1
β : Type u_2
inst✝ : EDist α
x y : α
s : Set α
hs : s.Subsingleton
⊢ ¬0 < s.infsep

tactic: exact hs.infsep_zero ▸ lt_irrefl _
state_before: α : Type u_1
β : Type u_2
inst✝ : EDist α
x y : α
s : Set α
hs : s.Subsingleton
⊢ ¬0 < s.infsep
state_after: no goals
Theorem: self_sub_toIcoMod
File: Mathlib/Algebra/Order/ToIntervalMod.lean

tactic: rw [toIcoMod, sub_sub_cancel]
state_before: α : Type u_1
inst✝ : LinearOrderedAddCommGroup α
hα : Archimedean α
p : α
hp : 0 < p
a✝ b✝ c : α
n : ℤ
a b : α
⊢ b - toIcoMod hp a b = toIcoDiv hp a b • p
state_after: no goals
Theorem: ENNReal.log_zero
File: Mathlib/Analysis/SpecialFunctions/Log/ENNReal.lean

tactic: simp [log]
state_before: ⊢ log 0 = ⊥
state_after: no goals
Theorem: ENNReal.inv_two_add_inv_two
File: Mathlib/Data/ENNReal/Inv.lean

tactic: rw [← two_mul, ← div_eq_mul_inv, ENNReal.div_self two_ne_zero two_ne_top]
state_before: a b c d : ℝ≥0∞
r p q : ℝ≥0
⊢ 2⁻¹ + 2⁻¹ = 1
state_after: no goals
Theorem: EuclideanGeometry.oangle_eq_pi_iff_sbtw
File: Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean

tactic: rw [oangle_eq_pi_iff_angle_eq_pi, angle_eq_pi_iff_sbtw]
state_before: V : Type u_1
P : Type u_2
inst✝⁴ : NormedAddCommGroup V
inst✝³ : InnerProductSpace ℝ V
inst✝² : MetricSpace P
inst✝¹ : NormedAddTorsor V P
hd2 : Fact (finrank ℝ V = 2)
inst✝ : Module.Oriented ℝ V (Fin 2)
p₁ p₂ p₃ : P
⊢ ∡ p₁ p₂ p₃ = ↑π ↔ Sbtw ℝ p₁ p₂ p₃
state_after: no goals
Theorem: Matrix.blockDiagonal'_zero
File: Mathlib/Data/Matrix/Block.lean

tactic: ext
state_before: l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
inst✝² : DecidableEq o
inst✝¹ : Zero α
inst✝ : Zero β
⊢ blockDiagonal' 0 = 0
state_after: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
inst✝² : DecidableEq o
inst✝¹ : Zero α
inst✝ : Zero β
i✝ : (i : o) × m' i
j✝ : (i : o) × n' i
⊢ blockDiagonal' 0 i✝ j✝ = 0 i✝ j✝

tactic: simp [blockDiagonal'_apply]
state_before: case a
l : Type u_1
m : Type u_2
n : Type u_3
o : Type u_4
p : Type u_5
q : Type u_6
m' : o → Type u_7
n' : o → Type u_8
p' : o → Type u_9
R : Type u_10
S : Type u_11
α : Type u_12
β : Type u_13
inst✝² : DecidableEq o
inst✝¹ : Zero α
inst✝ : Zero β
i✝ : (i : o) × m' i
j✝ : (i : o) × n' i
⊢ blockDiagonal' 0 i✝ j✝ = 0 i✝ j✝
state_after: no goals
Theorem: WeierstrassCurve.Affine.CoordinateRing.XClass_ne_zero
File: Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean

tactic: rw [natDegree_polynomial, natDegree_C]
state_before: R : Type u
S : Type v
inst✝² : CommRing R
inst✝¹ : CommRing S
W : Affine R
f : R →+* S
inst✝ : Nontrivial R
x : R
⊢ (C (X - C x)).natDegree < W.polynomial.natDegree
state_after: R : Type u
S : Type v
inst✝² : CommRing R
inst✝¹ : CommRing S
W : Affine R
f : R →+* S
inst✝ : Nontrivial R
x : R
⊢ 0 < 2

tactic: norm_num1
state_before: R : Type u
S : Type v
inst✝² : CommRing R
inst✝¹ : CommRing S
W : Affine R
f : R →+* S
inst✝ : Nontrivial R
x : R
⊢ 0 < 2
state_after: no goals
Theorem: Matroid.basis_ground_iff
File: Mathlib/Data/Matroid/Basic.lean

tactic: rw [base_iff_maximal_indep, basis_iff', and_assoc, and_congr_right]
state_before: α : Type u_1
M : Matroid α
B : Set α
⊢ M.Basis B M.E ↔ M.Base B
state_after: α : Type u_1
M : Matroid α
B : Set α
⊢ M.Indep B →
    ((B ⊆ M.E ∧ ∀ (J : Set α), M.Indep J → B ⊆ J → J ⊆ M.E → B = J) ∧ M.E ⊆ M.E ↔
      ∀ (I : Set α), M.Indep I → B ⊆ I → B = I)

tactic: rw [and_iff_left (rfl.subset : M.E ⊆ M.E)]
state_before: α : Type u_1
M : Matroid α
B : Set α
⊢ M.Indep B →
    ((B ⊆ M.E ∧ ∀ (J : Set α), M.Indep J → B ⊆ J → J ⊆ M.E → B = J) ∧ M.E ⊆ M.E ↔
      ∀ (I : Set α), M.Indep I → B ⊆ I → B = I)
state_after: α : Type u_1
M : Matroid α
B : Set α
⊢ M.Indep B →
    ((B ⊆ M.E ∧ ∀ (J : Set α), M.Indep J → B ⊆ J → J ⊆ M.E → B = J) ↔ ∀ (I : Set α), M.Indep I → B ⊆ I → B = I)

tactic: exact fun h ↦ ⟨fun h' I hI hBI ↦ h'.2 _ hI hBI hI.subset_ground,
  fun h' ↦ ⟨h.subset_ground,fun J hJ hBJ _ ↦ h' J hJ hBJ⟩⟩
state_before: α : Type u_1
M : Matroid α
B : Set α
⊢ M.Indep B →
    ((B ⊆ M.E ∧ ∀ (J : Set α), M.Indep J → B ⊆ J → J ⊆ M.E → B = J) ↔ ∀ (I : Set α), M.Indep I → B ⊆ I → B = I)
state_after: no goals