ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
Theorem: Function.Semiconj.comp_right
File: Mathlib/Logic/Function/Conjugate.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
f fab : α → β
fbc : β → γ
ga ga' : α → α
gb gb' : β → β
gc gc' : γ → γ
h : Semiconj f ga gb
h' : Semiconj f ga' gb'
x : α
⊢ f ((ga ∘ ga') x) = (gb ∘ gb') (f x)
state_after: no goals
tactic: simp only [comp_apply, h.eq, h'.eq]
Theorem: isClosedMap_smul₀
File: Mathlib/Topology/Algebra/ConstMulAction.lean

Proof steps:
state_before: M : Type u_1
α : Type u_2
β : Type u_3
G₀ : Type u_4
inst✝⁹ : TopologicalSpace α
inst✝⁸ : GroupWithZero G₀
inst✝⁷ : MulAction G₀ α
inst✝⁶ : ContinuousConstSMul G₀ α
inst✝⁵ : TopologicalSpace β
f : β → α
b : β
c✝ : G₀
s : Set β
E : Type u_5
inst✝⁴ : Zero E
inst✝³ : MulActionWithZero G₀ E
inst✝² : TopologicalSpace E
inst✝¹ : T1Space E
inst✝ : ContinuousConstSMul G₀ E
c : G₀
⊢ IsClosedMap fun x => c • x
state_after: case inl
M : Type u_1
α : Type u_2
β : Type u_3
G₀ : Type u_4
inst✝⁹ : TopologicalSpace α
inst✝⁸ : GroupWithZero G₀
inst✝⁷ : MulAction G₀ α
inst✝⁶ : ContinuousConstSMul G₀ α
inst✝⁵ : TopologicalSpace β
f : β → α
b : β
c : G₀
s : Set β
E : Type u_5
inst✝⁴ : Zero E
inst✝³ : MulActionWithZero G₀ E
inst✝² : TopologicalSpace E
inst✝¹ : T1Space E
inst✝ : ContinuousConstSMul G₀ E
⊢ IsClosedMap fun x => 0 • x

case inr
M : Type u_1
α : Type u_2
β : Type u_3
G₀ : Type u_4
inst✝⁹ : TopologicalSpace α
inst✝⁸ : GroupWithZero G₀
inst✝⁷ : MulAction G₀ α
inst✝⁶ : ContinuousConstSMul G₀ α
inst✝⁵ : TopologicalSpace β
f : β → α
b : β
c✝ : G₀
s : Set β
E : Type u_5
inst✝⁴ : Zero E
inst✝³ : MulActionWithZero G₀ E
inst✝² : TopologicalSpace E
inst✝¹ : T1Space E
inst✝ : ContinuousConstSMul G₀ E
c : G₀
hne : c ≠ 0
⊢ IsClosedMap fun x => c • x
tactic: rcases eq_or_ne c 0 with (rfl | hne)
Theorem: EuclideanGeometry.right_ne_of_oangle_ne_zero
File: Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean

Proof steps:
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
h : ∡ p₁ p₂ p₃ ≠ 0
⊢ p₃ ≠ p₂
state_after: 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
h : ∡ p₁ p₂ p₃ ≠ 0
⊢ p₃ -ᵥ p₂ ≠ 0
tactic: rw [← @vsub_ne_zero V]
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
h : ∡ p₁ p₂ p₃ ≠ 0
⊢ p₃ -ᵥ p₂ ≠ 0
state_after: no goals
tactic: exact o.right_ne_zero_of_oangle_ne_zero h
Theorem: _private.Mathlib.MeasureTheory.Decomposition.SignedHahn.0.MeasureTheory.SignedMeasure.someExistsOneDivLT_subset
File: Mathlib/MeasureTheory/Decomposition/SignedHahn.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
inst✝³ : MeasurableSpace α
M : Type u_3
inst✝² : AddCommMonoid M
inst✝¹ : TopologicalSpace M
inst✝ : OrderedAddCommMonoid M
s : SignedMeasure α
i j : Set α
⊢ MeasureTheory.SignedMeasure.someExistsOneDivLT s i ⊆ i
state_after: case pos
α : Type u_1
β : Type u_2
inst✝³ : MeasurableSpace α
M : Type u_3
inst✝² : AddCommMonoid M
inst✝¹ : TopologicalSpace M
inst✝ : OrderedAddCommMonoid M
s : SignedMeasure α
i j : Set α
hi : ¬restrict s i ≤ restrict 0 i
⊢ MeasureTheory.SignedMeasure.someExistsOneDivLT s i ⊆ i

case neg
α : Type u_1
β : Type u_2
inst✝³ : MeasurableSpace α
M : Type u_3
inst✝² : AddCommMonoid M
inst✝¹ : TopologicalSpace M
inst✝ : OrderedAddCommMonoid M
s : SignedMeasure α
i j : Set α
hi : ¬¬restrict s i ≤ restrict 0 i
⊢ MeasureTheory.SignedMeasure.someExistsOneDivLT s i ⊆ i
tactic: by_cases hi : ¬s ≤[i] 0
Theorem: rootOfSplitsXPowSubC_pow
File: Mathlib/FieldTheory/KummerExtension.lean

Proof steps:
state_before: K : Type u
inst✝³ : Field K
n : ℕ
hζ : (primitiveRoots n K).Nonempty
hn : 0 < n
a : K
H : Irreducible (X ^ n - C a)
L : Type u_1
inst✝² : Field L
inst✝¹ : Algebra K L
inst✝ : IsSplittingField K L (X ^ n - C a)
α : L
hα : α ^ n = (algebraMap K L) a
⊢ rootOfSplitsXPowSubC hn a L ^ n = (algebraMap K L) a
state_after: K : Type u
inst✝³ : Field K
n : ℕ
hζ : (primitiveRoots n K).Nonempty
hn : 0 < n
a : K
H : Irreducible (X ^ n - C a)
L : Type u_1
inst✝² : Field L
inst✝¹ : Algebra K L
inst✝ : IsSplittingField K L (X ^ n - C a)
α : L
hα : α ^ n = (algebraMap K L) a
this :
  ∀ (hfd : (X ^ n - C a).degree ≠ 0), eval₂ (algebraMap K L) (rootOfSplits (algebraMap K L) ⋯ hfd) (X ^ n - C a) = 0
⊢ rootOfSplitsXPowSubC hn a L ^ n = (algebraMap K L) a
tactic: have := map_rootOfSplits _ (IsSplittingField.splits L (X ^ n - C a))
state_before: K : Type u
inst✝³ : Field K
n : ℕ
hζ : (primitiveRoots n K).Nonempty
hn : 0 < n
a : K
H : Irreducible (X ^ n - C a)
L : Type u_1
inst✝² : Field L
inst✝¹ : Algebra K L
inst✝ : IsSplittingField K L (X ^ n - C a)
α : L
hα : α ^ n = (algebraMap K L) a
this :
  ∀ (hfd : (X ^ n - C a).degree ≠ 0), eval₂ (algebraMap K L) (rootOfSplits (algebraMap K L) ⋯ hfd) (X ^ n - C a) = 0
⊢ rootOfSplitsXPowSubC hn a L ^ n = (algebraMap K L) a
state_after: K : Type u
inst✝³ : Field K
n : ℕ
hζ : (primitiveRoots n K).Nonempty
hn : 0 < n
a : K
H : Irreducible (X ^ n - C a)
L : Type u_1
inst✝² : Field L
inst✝¹ : Algebra K L
inst✝ : IsSplittingField K L (X ^ n - C a)
α : L
hα : α ^ n = (algebraMap K L) a
this : ∀ (hfd : (X ^ n - C a).degree ≠ 0), rootOfSplits (algebraMap K L) ⋯ hfd ^ n = (algebraMap K L) a
⊢ rootOfSplitsXPowSubC hn a L ^ n = (algebraMap K L) a
tactic: simp only [eval₂_sub, eval₂_X_pow, eval₂_C, sub_eq_zero] at this
state_before: K : Type u
inst✝³ : Field K
n : ℕ
hζ : (primitiveRoots n K).Nonempty
hn : 0 < n
a : K
H : Irreducible (X ^ n - C a)
L : Type u_1
inst✝² : Field L
inst✝¹ : Algebra K L
inst✝ : IsSplittingField K L (X ^ n - C a)
α : L
hα : α ^ n = (algebraMap K L) a
this : ∀ (hfd : (X ^ n - C a).degree ≠ 0), rootOfSplits (algebraMap K L) ⋯ hfd ^ n = (algebraMap K L) a
⊢ rootOfSplitsXPowSubC hn a L ^ n = (algebraMap K L) a
state_after: no goals
tactic: exact this _
Theorem: List.nil_diff
File: .lake/packages/batteries/Batteries/Data/List/Lemmas.lean

Proof steps:
state_before: α : Type u_1
inst✝¹ : BEq α
inst✝ : LawfulBEq α
l : List α
⊢ [].diff l = []
state_after: no goals
tactic: induction l <;> simp [*, erase_of_not_mem]
Theorem: ENNReal.tendsto_pow_atTop_nhds_zero_iff
File: Mathlib/Analysis/SpecificLimits/Basic.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0∞
⊢ Tendsto (fun n => r ^ n) atTop (𝓝 0) ↔ r < 1
state_after: α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0∞
h : Tendsto (fun n => r ^ n) atTop (𝓝 0)
⊢ r < 1
tactic: refine ⟨fun h ↦ ?_, tendsto_pow_atTop_nhds_zero_of_lt_one⟩
state_before: α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0∞
h : Tendsto (fun n => r ^ n) atTop (𝓝 0)
⊢ r < 1
state_after: α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0∞
h : Tendsto (fun n => r ^ n) atTop (𝓝 0)
⊢ r ≠ ⊤

case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (fun n => ↑r ^ n) atTop (𝓝 0)
⊢ ↑r < 1
tactic: lift r to NNReal
state_before: case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (fun n => ↑r ^ n) atTop (𝓝 0)
⊢ ↑r < 1
state_after: case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (fun n => ↑r ^ n) atTop (𝓝 ↑0)
⊢ ↑r < 1
tactic: rw [← coe_zero] at h
state_before: case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (fun n => ↑r ^ n) atTop (𝓝 ↑0)
⊢ ↑r < 1
state_after: case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (HPow.hPow r) atTop (𝓝 0)
⊢ r < 1
tactic: norm_cast at h ⊢
state_before: case intro
α : Type u_1
β : Type u_2
ι : Type u_3
r : ℝ≥0
h : Tendsto (HPow.hPow r) atTop (𝓝 0)
⊢ r < 1
state_after: no goals
tactic: exact NNReal.tendsto_pow_atTop_nhds_zero_iff.mp h
Theorem: lp.norm_apply_le_of_tendsto
File: Mathlib/Analysis/Normed/Lp/lpSpace.lean

Proof steps:
state_before: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
⊢ ‖f a‖ ≤ C
state_after: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
⊢ ‖f a‖ ≤ C
tactic: have : Tendsto (fun k => ‖F k a‖) l (𝓝 ‖f a‖) :=
    (Tendsto.comp (continuous_apply a).continuousAt hf).norm
state_before: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
⊢ ‖f a‖ ≤ C
state_after: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
⊢ ∀ (x : ι), ‖F x‖ ≤ C → ‖↑(F x) a‖ ≤ C
tactic: refine le_of_tendsto this (hCF.mono ?_)
state_before: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
⊢ ∀ (x : ι), ‖F x‖ ≤ C → ‖↑(F x) a‖ ≤ C
state_after: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
k : ι
hCFk : ‖F k‖ ≤ C
⊢ ‖↑(F k) a‖ ≤ C
tactic: intro k hCFk
state_before: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝¹ : (i : α) → NormedAddCommGroup (E i)
ι : Type u_3
l : Filter ι
inst✝ : l.NeBot
C : ℝ
F : ι → ↥(lp E ⊤)
hCF : ∀ᶠ (k : ι) in l, ‖F k‖ ≤ C
f : (a : α) → E a
hf : Tendsto (id fun i => ↑(F i)) l (𝓝 f)
a : α
this : Tendsto (fun k => ‖↑(F k) a‖) l (𝓝 ‖f a‖)
k : ι
hCFk : ‖F k‖ ≤ C
⊢ ‖↑(F k) a‖ ≤ C
state_after: no goals
tactic: exact (norm_apply_le_norm ENNReal.top_ne_zero (F k) a).trans hCFk
Theorem: Nat.succ_ascFactorial
File: Mathlib/Data/Nat/Factorial/Basic.lean

Proof steps:
state_before: n : ℕ
⊢ n * n.succ.ascFactorial 0 = (n + 0) * n.ascFactorial 0
state_after: no goals
tactic: rw [Nat.add_zero, ascFactorial_zero, ascFactorial_zero]
state_before: n k : ℕ
⊢ n * n.succ.ascFactorial (k + 1) = (n + (k + 1)) * n.ascFactorial (k + 1)
state_after: no goals
tactic: rw [ascFactorial, Nat.mul_left_comm, succ_ascFactorial n k, ascFactorial, succ_add,
    ← Nat.add_assoc]
Theorem: LinearOrderedField.cutMap_self
File: Mathlib/Algebra/Order/CompleteField.lean

Proof steps:
state_before: F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝¹ : LinearOrderedField α
inst✝ : DivisionRing β
a✝ a₁ a₂ : α
b : β
q : ℚ
a : α
⊢ cutMap α a = Iio a ∩ range Rat.cast
state_after: case h
F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝¹ : LinearOrderedField α
inst✝ : DivisionRing β
a✝ a₁ a₂ : α
b : β
q : ℚ
a x✝ : α
⊢ x✝ ∈ cutMap α a ↔ x✝ ∈ Iio a ∩ range Rat.cast
tactic: ext
state_before: case h
F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝¹ : LinearOrderedField α
inst✝ : DivisionRing β
a✝ a₁ a₂ : α
b : β
q : ℚ
a x✝ : α
⊢ x✝ ∈ cutMap α a ↔ x✝ ∈ Iio a ∩ range Rat.cast
state_after: case h.mp
F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝¹ : LinearOrderedField α
inst✝ : DivisionRing β
a✝ a₁ a₂ : α
b : β
q : ℚ
a x✝ : α
⊢ x✝ ∈ cutMap α a → x✝ ∈ Iio a ∩ range Rat.cast

case h.mpr
F : Type u_1
α : Type u_2
β : Type u_3
γ : Type u_4
inst✝¹ : LinearOrderedField α
inst✝ : DivisionRing β
a✝ a₁ a₂ : α
b : β
q : ℚ
a x✝ : α
⊢ x✝ ∈ Iio a ∩ range Rat.cast → x✝ ∈ cutMap α a
tactic: constructor
Theorem: Ideal.Filtration.submodule_closure_single
File: Mathlib/RingTheory/Filtration.lean

Proof steps:
state_before: R M : Type u
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
I : Ideal R
F F' : I.Filtration M
h : F.Stable
⊢ AddSubmonoid.closure (⋃ i, ⇑(single R i) '' ↑(F.N i)) = F.submodule.toAddSubmonoid
state_after: case a
R M : Type u
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
I : Ideal R
F F' : I.Filtration M
h : F.Stable
⊢ AddSubmonoid.closure (⋃ i, ⇑(single R i) '' ↑(F.N i)) ≤ F.submodule.toAddSubmonoid

case a
R M : Type u
inst✝² : CommRing R
inst✝¹ : AddCommGroup M
inst✝ : Module R M
I : Ideal R
F F' : I.Filtration M
h : F.Stable
⊢ F.submodule.toAddSubmonoid ≤ AddSubmonoid.closure (⋃ i, ⇑(single R i) '' ↑(F.N i))
tactic: apply le_antisymm
Theorem: List.length_product
File: Mathlib/Data/List/ProdSigma.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
l₁ : List α
l₂ : List β
⊢ (l₁ ×ˢ l₂).length = l₁.length * l₂.length
state_after: case nil
α : Type u_1
β : Type u_2
l₂ : List β
⊢ ([] ×ˢ l₂).length = [].length * l₂.length

case cons
α : Type u_1
β : Type u_2
l₂ : List β
x : α
l₁ : List α
IH : (l₁ ×ˢ l₂).length = l₁.length * l₂.length
⊢ ((x :: l₁) ×ˢ l₂).length = (x :: l₁).length * l₂.length
tactic: induction' l₁ with x l₁ IH
Theorem: ConvexOn.le_max_of_mem_Icc
File: Mathlib/Analysis/Convex/Jensen.lean

Proof steps:
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
β : Type u_4
ι : Type u_5
inst✝⁵ : LinearOrderedField 𝕜
inst✝⁴ : AddCommGroup E
inst✝³ : LinearOrderedAddCommGroup β
inst✝² : Module 𝕜 E
inst✝¹ : Module 𝕜 β
inst✝ : OrderedSMul 𝕜 β
s : Set E
f✝ : E → β
t : Finset ι
w : ι → 𝕜
p : ι → E
x✝ y✝ z✝ : E
f : 𝕜 → β
x y z : 𝕜
hf : ConvexOn 𝕜 (Set.Icc x y) f
hz : z ∈ Set.Icc x y
⊢ f z ≤ max (f x) (f y)
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
β : Type u_4
ι : Type u_5
inst✝⁵ : LinearOrderedField 𝕜
inst✝⁴ : AddCommGroup E
inst✝³ : LinearOrderedAddCommGroup β
inst✝² : Module 𝕜 E
inst✝¹ : Module 𝕜 β
inst✝ : OrderedSMul 𝕜 β
s : Set E
f✝ : E → β
t : Finset ι
w : ι → 𝕜
p : ι → E
x✝ y✝ z✝ : E
f : 𝕜 → β
x y z : 𝕜
hf : ConvexOn 𝕜 [x-[𝕜]y] f
hz : z ∈ [x-[𝕜]y]
⊢ f z ≤ max (f x) (f y)
tactic: rw [← segment_eq_Icc (hz.1.trans hz.2)] at hf hz
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
β : Type u_4
ι : Type u_5
inst✝⁵ : LinearOrderedField 𝕜
inst✝⁴ : AddCommGroup E
inst✝³ : LinearOrderedAddCommGroup β
inst✝² : Module 𝕜 E
inst✝¹ : Module 𝕜 β
inst✝ : OrderedSMul 𝕜 β
s : Set E
f✝ : E → β
t : Finset ι
w : ι → 𝕜
p : ι → E
x✝ y✝ z✝ : E
f : 𝕜 → β
x y z : 𝕜
hf : ConvexOn 𝕜 [x-[𝕜]y] f
hz : z ∈ [x-[𝕜]y]
⊢ f z ≤ max (f x) (f y)
state_after: no goals
tactic: exact hf.le_max_of_mem_segment hz
Theorem: SimpleGraph.cliqueFreeOn_empty
File: Mathlib/Combinatorics/SimpleGraph/Clique.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
G H : SimpleGraph α
s s₁ s₂ : Set α
t : Finset α
a b : α
m n : ℕ
⊢ G.CliqueFreeOn ∅ n ↔ n ≠ 0
state_after: no goals
tactic: simp [CliqueFreeOn, Set.subset_empty_iff]
Theorem: map_comp_zpow
File: Mathlib/Algebra/Group/Hom/Defs.lean

Proof steps:
state_before: ι : Type u_1
α : Type u_2
β : Type u_3
M : Type u_4
N : Type u_5
P : Type u_6
G : Type u_7
H : Type u_8
F : Type u_9
inst✝⁶ : MulOneClass M
inst✝⁵ : MulOneClass N
inst✝⁴ : FunLike F M N
inst✝³ : FunLike F G H
inst✝² : Group G
inst✝¹ : DivisionMonoid H
inst✝ : MonoidHomClass F G H
f : F
g : ι → G
n : ℤ
⊢ ⇑f ∘ (g ^ n) = ⇑f ∘ g ^ n
state_after: no goals
tactic: simp
Theorem: MeasureTheory.L1.SimpleFunc.norm_eq_integral
File: Mathlib/MeasureTheory/Integral/Bochner.lean

Proof steps:
state_before: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedAddCommGroup F
m : MeasurableSpace α
μ : Measure α
f : ↥(simpleFunc E 1 μ)
⊢ ‖f‖ = SimpleFunc.integral μ (SimpleFunc.map norm (toSimpleFunc f))
state_after: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedAddCommGroup F
m : MeasurableSpace α
μ : Measure α
f : ↥(simpleFunc E 1 μ)
⊢ ∑ x ∈ (toSimpleFunc f).range, (μ (↑(toSimpleFunc f) ⁻¹' {x})).toReal * ‖x‖ =
    ∑ x ∈ (toSimpleFunc f).range, (μ (↑(toSimpleFunc f) ⁻¹' {x})).toReal • ‖x‖
tactic: rw [norm_eq_sum_mul f, (toSimpleFunc f).map_integral norm (SimpleFunc.integrable f) norm_zero]
state_before: α : Type u_1
E : Type u_2
F : Type u_3
𝕜 : Type u_4
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedAddCommGroup F
m : MeasurableSpace α
μ : Measure α
f : ↥(simpleFunc E 1 μ)
⊢ ∑ x ∈ (toSimpleFunc f).range, (μ (↑(toSimpleFunc f) ⁻¹' {x})).toReal * ‖x‖ =
    ∑ x ∈ (toSimpleFunc f).range, (μ (↑(toSimpleFunc f) ⁻¹' {x})).toReal • ‖x‖
state_after: no goals
tactic: simp_rw [smul_eq_mul]
Theorem: MeasureTheory.lintegral_indicator
File: Mathlib/MeasureTheory/Integral/Lebesgue.lean

Proof steps:
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
⊢ ∫⁻ (a : α), s.indicator f a ∂μ = ∫⁻ (a : α) in s, f a ∂μ
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
⊢ ∫⁻ (a : α) in s, f a ∂μ ≤ ∫⁻ (a : α), s.indicator f a ∂μ
tactic: apply le_antisymm (lintegral_indicator_le f s)
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
⊢ ∫⁻ (a : α) in s, f a ∂μ ≤ ∫⁻ (a : α), s.indicator f a ∂μ
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
⊢ ⨆ x, ((↑x).restrict s).lintegral μ ≤ ⨆ x, (↑x).lintegral μ
tactic: simp only [lintegral, ← restrict_lintegral_eq_lintegral_restrict _ hs, iSup_subtype']
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
⊢ ⨆ x, ((↑x).restrict s).lintegral μ ≤ ⨆ x, (↑x).lintegral μ
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
φ : α →ₛ ℝ≥0∞
hφ : ↑φ ≤ fun a => f a
⊢ ∃ i', ((↑⟨φ, hφ⟩).restrict s).lintegral μ ≤ (↑i').lintegral μ
tactic: refine iSup_mono' (Subtype.forall.2 fun φ hφ => ?_)
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
φ : α →ₛ ℝ≥0∞
hφ : ↑φ ≤ fun a => f a
⊢ ∃ i', ((↑⟨φ, hφ⟩).restrict s).lintegral μ ≤ (↑i').lintegral μ
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
φ : α →ₛ ℝ≥0∞
hφ : ↑φ ≤ fun a => f a
x : α
⊢ ↑(φ.restrict s) x ≤ (fun a => s.indicator f a) x
tactic: refine ⟨⟨φ.restrict s, fun x => ?_⟩, le_rfl⟩
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f : α → ℝ≥0∞
s : Set α
hs : MeasurableSet s
φ : α →ₛ ℝ≥0∞
hφ : ↑φ ≤ fun a => f a
x : α
⊢ ↑(φ.restrict s) x ≤ (fun a => s.indicator f a) x
state_after: no goals
tactic: simp [hφ x, hs, indicator_le_indicator]
Theorem: CategoryTheory.Abelian.Ext.comp_add
File: Mathlib/Algebra/Homology/DerivedCategory/Ext.lean

Proof steps:
state_before: C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : Abelian C
inst✝ : HasExt C
X Y Z T : C
n : ℕ
α : Ext X Y n
m : ℕ
β₁ β₂ : Ext Y Z m
p : ℕ
h : n + m = p
⊢ α.comp (β₁ + β₂) h = α.comp β₁ h + α.comp β₂ h
state_after: C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : Abelian C
inst✝ : HasExt C
X Y Z T : C
n : ℕ
α : Ext X Y n
m : ℕ
β₁ β₂ : Ext Y Z m
p : ℕ
h : n + m = p
this : HasDerivedCategory C := HasDerivedCategory.standard C
⊢ α.comp (β₁ + β₂) h = α.comp β₁ h + α.comp β₂ h
tactic: letI := HasDerivedCategory.standard C
state_before: C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : Abelian C
inst✝ : HasExt C
X Y Z T : C
n : ℕ
α : Ext X Y n
m : ℕ
β₁ β₂ : Ext Y Z m
p : ℕ
h : n + m = p
this : HasDerivedCategory C := HasDerivedCategory.standard C
⊢ α.comp (β₁ + β₂) h = α.comp β₁ h + α.comp β₂ h
state_after: case h
C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : Abelian C
inst✝ : HasExt C
X Y Z T : C
n : ℕ
α : Ext X Y n
m : ℕ
β₁ β₂ : Ext Y Z m
p : ℕ
h : n + m = p
this : HasDerivedCategory C := HasDerivedCategory.standard C
⊢ (α.comp (β₁ + β₂) h).hom = (α.comp β₁ h + α.comp β₂ h).hom
tactic: ext
state_before: case h
C : Type u
inst✝² : Category.{v, u} C
inst✝¹ : Abelian C
inst✝ : HasExt C
X Y Z T : C
n : ℕ
α : Ext X Y n
m : ℕ
β₁ β₂ : Ext Y Z m
p : ℕ
h : n + m = p
this : HasDerivedCategory C := HasDerivedCategory.standard C
⊢ (α.comp (β₁ + β₂) h).hom = (α.comp β₁ h + α.comp β₂ h).hom
state_after: no goals
tactic: simp [add_hom']
Theorem: lp.single_apply_ne
File: Mathlib/Analysis/Normed/Lp/lpSpace.lean

Proof steps:
state_before: α : Type u_1
E : α → Type u_2
p✝ q : ℝ≥0∞
inst✝⁴ : (i : α) → NormedAddCommGroup (E i)
𝕜 : Type u_3
inst✝³ : NormedRing 𝕜
inst✝² : (i : α) → Module 𝕜 (E i)
inst✝¹ : ∀ (i : α), BoundedSMul 𝕜 (E i)
inst✝ : DecidableEq α
p : ℝ≥0∞
i : α
a : E i
j : α
hij : j ≠ i
⊢ ↑(lp.single p i a) j = 0
state_after: no goals
tactic: rw [lp.single_apply, dif_neg hij]
Theorem: MeasureTheory.lintegral_le_of_lmarginal_le
File: Mathlib/MeasureTheory/Integral/Marginal.lean

Proof steps:
state_before: δ : Type u_1
δ' : Type u_2
π : δ → Type u_3
inst✝³ : (x : δ) → MeasurableSpace (π x)
μ : (i : δ) → Measure (π i)
inst✝² : ∀ (i : δ), SigmaFinite (μ i)
inst✝¹ : DecidableEq δ
s✝ t : Finset δ
f✝ g✝ : ((i : δ) → π i) → ℝ≥0∞
x y : (i : δ) → π i
i : δ
inst✝ : Fintype δ
s : Finset δ
f g : ((i : δ) → π i) → ℝ≥0∞
hf : Measurable f
hg : Measurable g
hfg : ∫⋯∫⁻_s, f ∂μ ≤ ∫⋯∫⁻_s, g ∂μ
⊢ ∫⁻ (x : (i : δ) → π i), f x ∂Measure.pi μ ≤ ∫⁻ (x : (i : δ) → π i), g x ∂Measure.pi μ
state_after: case inl
δ : Type u_1
δ' : Type u_2
π : δ → Type u_3
inst✝³ : (x : δ) → MeasurableSpace (π x)
μ : (i : δ) → Measure (π i)
inst✝² : ∀ (i : δ), SigmaFinite (μ i)
inst✝¹ : DecidableEq δ
s✝ t : Finset δ
f✝ g✝ : ((i : δ) → π i) → ℝ≥0∞
x y : (i : δ) → π i
i : δ
inst✝ : Fintype δ
s : Finset δ
f g : ((i : δ) → π i) → ℝ≥0∞
hf : Measurable f
hg : Measurable g
hfg : ∫⋯∫⁻_s, f ∂μ ≤ ∫⋯∫⁻_s, g ∂μ
h : IsEmpty ((i : δ) → π i)
⊢ ∫⁻ (x : (i : δ) → π i), f x ∂Measure.pi μ ≤ ∫⁻ (x : (i : δ) → π i), g x ∂Measure.pi μ

case inr.intro
δ : Type u_1
δ' : Type u_2
π : δ → Type u_3
inst✝³ : (x : δ) → MeasurableSpace (π x)
μ : (i : δ) → Measure (π i)
inst✝² : ∀ (i : δ), SigmaFinite (μ i)
inst✝¹ : DecidableEq δ
s✝ t : Finset δ
f✝ g✝ : ((i : δ) → π i) → ℝ≥0∞
x✝ y : (i : δ) → π i
i : δ
inst✝ : Fintype δ
s : Finset δ
f g : ((i : δ) → π i) → ℝ≥0∞
hf : Measurable f
hg : Measurable g
hfg : ∫⋯∫⁻_s, f ∂μ ≤ ∫⋯∫⁻_s, g ∂μ
x : (i : δ) → π i
⊢ ∫⁻ (x : (i : δ) → π i), f x ∂Measure.pi μ ≤ ∫⁻ (x : (i : δ) → π i), g x ∂Measure.pi μ
tactic: rcases isEmpty_or_nonempty (∀ i, π i) with h|⟨⟨x⟩⟩
state_before: case inr.intro
δ : Type u_1
δ' : Type u_2
π : δ → Type u_3
inst✝³ : (x : δ) → MeasurableSpace (π x)
μ : (i : δ) → Measure (π i)
inst✝² : ∀ (i : δ), SigmaFinite (μ i)
inst✝¹ : DecidableEq δ
s✝ t : Finset δ
f✝ g✝ : ((i : δ) → π i) → ℝ≥0∞
x✝ y : (i : δ) → π i
i : δ
inst✝ : Fintype δ
s : Finset δ
f g : ((i : δ) → π i) → ℝ≥0∞
hf : Measurable f
hg : Measurable g
hfg : ∫⋯∫⁻_s, f ∂μ ≤ ∫⋯∫⁻_s, g ∂μ
x : (i : δ) → π i
⊢ ∫⁻ (x : (i : δ) → π i), f x ∂Measure.pi μ ≤ ∫⁻ (x : (i : δ) → π i), g x ∂Measure.pi μ
state_after: no goals
tactic: simp_rw [lintegral_eq_lmarginal_univ x, lmarginal_le_of_subset (Finset.subset_univ s) hf hg hfg x]