1337xyz1337xyz/leandojo-benchmark4-v10 huggingface dataset:
Theorem: norm_fderiv_norm_id_rpow
File: Mathlib/Analysis/InnerProductSpace/NormPow.lean

tactic: rw [fderiv_norm_rpow x hp, norm_smul, norm_mul]
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ ‖fderiv ℝ (fun x => ‖x‖ ^ p) x‖ = p * ‖x‖ ^ (p - 1)
state_after: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ ‖p‖ * ‖‖x‖ ^ (p - 2)‖ * ‖(innerSL ℝ) x‖ = p * ‖x‖ ^ (p - 1)

tactic: simp_rw [norm_rpow_of_nonneg (norm_nonneg _), norm_norm, norm_eq_abs,
  abs_eq_self.mpr <| zero_le_one.trans hp.le, mul_assoc, innerSL_apply_norm]
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ ‖p‖ * ‖‖x‖ ^ (p - 2)‖ * ‖(innerSL ℝ) x‖ = p * ‖x‖ ^ (p - 1)
state_after: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ p * (‖x‖ ^ (p - 2) * ‖x‖) = p * ‖x‖ ^ (p - 1)

tactic: rw [← Real.rpow_add_one' (by positivity) (by linarith)]
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ p * (‖x‖ ^ (p - 2) * ‖x‖) = p * ‖x‖ ^ (p - 1)
state_after: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ p * ‖x‖ ^ (p - 2 + 1) = p * ‖x‖ ^ (p - 1)

tactic: ring_nf
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ p * ‖x‖ ^ (p - 2 + 1) = p * ‖x‖ ^ (p - 1)
state_after: no goals

tactic: positivity
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ 0 ≤ ‖x‖
state_after: no goals

tactic: linarith
state_before: E : Type u_1
inst✝³ : NormedAddCommGroup E
inst✝² : InnerProductSpace ℝ E
F : Type u_2
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace ℝ F
x : E
p : ℝ
hp : 1 < p
⊢ p - 2 + 1 ≠ 0
state_after: no goals
Theorem: LinearIsometryEquiv.toSpanUnitSingleton_apply
File: Mathlib/Analysis/NormedSpace/Span.lean

tactic: aesop
state_before: 𝕜 : Type u_1
E : Type u_2
inst✝³ : NormedDivisionRing 𝕜
inst✝² : SeminormedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : BoundedSMul 𝕜 E
x : E
hx : ‖x‖ = 1
r : 𝕜
⊢ r • x ∈ Submodule.span 𝕜 {x}
state_after: no goals

tactic: rfl
state_before: 𝕜 : Type u_1
E : Type u_2
inst✝³ : NormedDivisionRing 𝕜
inst✝² : SeminormedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : BoundedSMul 𝕜 E
x : E
hx : ‖x‖ = 1
r : 𝕜
⊢ (toSpanUnitSingleton x hx) r = ⟨r • x, ⋯⟩
state_after: no goals
Theorem: MeasureTheory.SigmaFinite.withDensity_of_ne_top'
File: Mathlib/MeasureTheory/Measure/WithDensity.lean

tactic: lift f to (α → ℝ≥0) using hf_ne_top
state_before: α : Type u_1
m0 : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
f : α → ℝ≥0∞
hf : AEMeasurable f μ
hf_ne_top : ∀ (x : α), f x ≠ ⊤
⊢ SigmaFinite (μ.withDensity f)
state_after: case intro
α : Type u_1
m0 : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
f : α → ℝ≥0
hf : AEMeasurable (fun i => ↑(f i)) μ
⊢ SigmaFinite (μ.withDensity fun i => ↑(f i))

tactic: rw [aemeasurable_coe_nnreal_ennreal_iff] at hf
state_before: case intro
α : Type u_1
m0 : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
f : α → ℝ≥0
hf : AEMeasurable (fun i => ↑(f i)) μ
⊢ SigmaFinite (μ.withDensity fun i => ↑(f i))
state_after: case intro
α : Type u_1
m0 : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
f : α → ℝ≥0
hf : AEMeasurable f μ
⊢ SigmaFinite (μ.withDensity fun i => ↑(f i))

tactic: exact SigmaFinite.withDensity hf
state_before: case intro
α : Type u_1
m0 : MeasurableSpace α
μ : Measure α
inst✝ : SigmaFinite μ
f : α → ℝ≥0
hf : AEMeasurable f μ
⊢ SigmaFinite (μ.withDensity fun i => ↑(f i))
state_after: no goals
Theorem: LieIdeal.derivedSeries_map_eq
File: Mathlib/Algebra/Lie/Solvable.lean

tactic: induction' k with k ih
state_before: R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
k : ℕ
h : Function.Surjective ⇑f
⊢ map f (derivedSeries R L' k) = derivedSeries R L k
state_after: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ map f (derivedSeries R L' 0) = derivedSeries R L 0

case succ
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
k : ℕ
ih : map f (derivedSeries R L' k) = derivedSeries R L k
⊢ map f (derivedSeries R L' (k + 1)) = derivedSeries R L (k + 1)

tactic: change (⊤ : LieIdeal R L').map f = ⊤
state_before: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ map f (derivedSeries R L' 0) = derivedSeries R L 0
state_after: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ map f ⊤ = ⊤

tactic: rw [← f.idealRange_eq_map]
state_before: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ map f ⊤ = ⊤
state_after: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ f.idealRange = ⊤

tactic: exact f.idealRange_eq_top_of_surjective h
state_before: case zero
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
⊢ f.idealRange = ⊤
state_after: no goals

tactic: simp only [derivedSeries_def, map_bracket_eq f h, ih, derivedSeriesOfIdeal_succ]
state_before: case succ
R : Type u
L : Type v
M : Type w
L' : Type w₁
inst✝⁴ : CommRing R
inst✝³ : LieRing L
inst✝² : LieAlgebra R L
inst✝¹ : LieRing L'
inst✝ : LieAlgebra R L'
I J : LieIdeal R L
f : L' →ₗ⁅R⁆ L
h : Function.Surjective ⇑f
k : ℕ
ih : map f (derivedSeries R L' k) = derivedSeries R L k
⊢ map f (derivedSeries R L' (k + 1)) = derivedSeries R L (k + 1)
state_after: no goals
Theorem: ContinuousLinearMap.isAdjointPair_inner
File: Mathlib/Analysis/InnerProductSpace/Adjoint.lean

tactic: intro x y
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁹ : RCLike 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : InnerProductSpace 𝕜 E
inst✝⁴ : InnerProductSpace 𝕜 F
inst✝³ : InnerProductSpace 𝕜 G
inst✝² : CompleteSpace E
inst✝¹ : CompleteSpace G
inst✝ : CompleteSpace F
A : E →L[𝕜] F
⊢ sesqFormOfInner.IsAdjointPair sesqFormOfInner ↑A ↑(adjoint A)
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁹ : RCLike 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : InnerProductSpace 𝕜 E
inst✝⁴ : InnerProductSpace 𝕜 F
inst✝³ : InnerProductSpace 𝕜 G
inst✝² : CompleteSpace E
inst✝¹ : CompleteSpace G
inst✝ : CompleteSpace F
A : E →L[𝕜] F
x : E
y : F
⊢ (sesqFormOfInner (↑A x)) y = (sesqFormOfInner x) (↑(adjoint A) y)

tactic: simp only [sesqFormOfInner_apply_apply, adjoint_inner_left, coe_coe]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁹ : RCLike 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : InnerProductSpace 𝕜 E
inst✝⁴ : InnerProductSpace 𝕜 F
inst✝³ : InnerProductSpace 𝕜 G
inst✝² : CompleteSpace E
inst✝¹ : CompleteSpace G
inst✝ : CompleteSpace F
A : E →L[𝕜] F
x : E
y : F
⊢ (sesqFormOfInner (↑A x)) y = (sesqFormOfInner x) (↑(adjoint A) y)
state_after: no goals
Theorem: memℓp_infty_iff
File: Mathlib/Analysis/NormedSpace/lpSpace.lean

tactic: simp [Memℓp]
state_before: α : Type u_1
E : α → Type u_2
p q : ℝ≥0∞
inst✝ : (i : α) → NormedAddCommGroup (E i)
f : (i : α) → E i
⊢ Memℓp f ⊤ ↔ BddAbove (Set.range fun i => ‖f i‖)
state_after: no goals
Theorem: PNat.XgcdType.reduce_isSpecial
File: Mathlib/Data/PNat/Xgcd.lean

tactic: rw [reduce_a h]
state_before: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : u.r = 0
hs : x✝.IsSpecial
⊢ x✝.reduce.IsSpecial
state_after: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : u.r = 0
hs : x✝.IsSpecial
⊢ u.finish.IsSpecial

tactic: exact u.finish_isSpecial hs
state_before: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : u.r = 0
hs : x✝.IsSpecial
⊢ u.finish.IsSpecial
state_after: no goals

tactic: have : SizeOf.sizeOf u.step < SizeOf.sizeOf u := u.step_wf h
state_before: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : ¬u.r = 0
hs : x✝.IsSpecial
⊢ x✝.reduce.IsSpecial
state_after: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : ¬u.r = 0
hs : x✝.IsSpecial
this : sizeOf u.step < sizeOf u
⊢ x✝.reduce.IsSpecial

tactic: rw [reduce_b h]
state_before: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : ¬u.r = 0
hs : x✝.IsSpecial
this : sizeOf u.step < sizeOf u
⊢ x✝.reduce.IsSpecial
state_after: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : ¬u.r = 0
hs : x✝.IsSpecial
this : sizeOf u.step < sizeOf u
⊢ u.step.reduce.flip.IsSpecial

tactic: exact (flip_isSpecial _).mpr (reduce_isSpecial _ (u.step_isSpecial hs))
state_before: u✝ x✝ : XgcdType
u : XgcdType := x✝
h : ¬u.r = 0
hs : x✝.IsSpecial
this : sizeOf u.step < sizeOf u
⊢ u.step.reduce.flip.IsSpecial
state_after: no goals
Theorem: HasDerivWithinAt.iterate
File: Mathlib/Analysis/Calculus/Deriv/Comp.lean

tactic: have := HasFDerivWithinAt.iterate hf hx hs n
state_before: 𝕜 : Type u
inst✝⁸ : NontriviallyNormedField 𝕜
F : Type v
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace 𝕜 F
E : Type w
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
f✝ f₀ f₁ g : 𝕜 → F
f'✝ f₀' f₁' g' : F
x : 𝕜
s t : Set 𝕜
L L₁ L₂ : Filter 𝕜
𝕜' : Type u_1
inst✝³ : NontriviallyNormedField 𝕜'
inst✝² : NormedAlgebra 𝕜 𝕜'
inst✝¹ : NormedSpace 𝕜' F
inst✝ : IsScalarTower 𝕜 𝕜' F
s' t' : Set 𝕜'
h : 𝕜 → 𝕜'
h₁ : 𝕜 → 𝕜
h₂ : 𝕜' → 𝕜'
h' h₂' : 𝕜'
h₁' : 𝕜
g₁ : 𝕜' → F
g₁' : F
L' : Filter 𝕜'
y : 𝕜'
f : 𝕜 → 𝕜
f' : 𝕜
hf : HasDerivWithinAt f f' s x
hx : f x = x
hs : MapsTo f s s
n : ℕ
⊢ HasDerivWithinAt f^[n] (f' ^ n) s x
state_after: 𝕜 : Type u
inst✝⁸ : NontriviallyNormedField 𝕜
F : Type v
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace 𝕜 F
E : Type w
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
f✝ f₀ f₁ g : 𝕜 → F
f'✝ f₀' f₁' g' : F
x : 𝕜
s t : Set 𝕜
L L₁ L₂ : Filter 𝕜
𝕜' : Type u_1
inst✝³ : NontriviallyNormedField 𝕜'
inst✝² : NormedAlgebra 𝕜 𝕜'
inst✝¹ : NormedSpace 𝕜' F
inst✝ : IsScalarTower 𝕜 𝕜' F
s' t' : Set 𝕜'
h : 𝕜 → 𝕜'
h₁ : 𝕜 → 𝕜
h₂ : 𝕜' → 𝕜'
h' h₂' : 𝕜'
h₁' : 𝕜
g₁ : 𝕜' → F
g₁' : F
L' : Filter 𝕜'
y : 𝕜'
f : 𝕜 → 𝕜
f' : 𝕜
hf : HasDerivWithinAt f f' s x
hx : f x = x
hs : MapsTo f s s
n : ℕ
this : HasFDerivWithinAt f^[n] (smulRight 1 f' ^ n) s x
⊢ HasDerivWithinAt f^[n] (f' ^ n) s x

tactic: rwa [ContinuousLinearMap.smulRight_one_pow] at this
state_before: 𝕜 : Type u
inst✝⁸ : NontriviallyNormedField 𝕜
F : Type v
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace 𝕜 F
E : Type w
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
f✝ f₀ f₁ g : 𝕜 → F
f'✝ f₀' f₁' g' : F
x : 𝕜
s t : Set 𝕜
L L₁ L₂ : Filter 𝕜
𝕜' : Type u_1
inst✝³ : NontriviallyNormedField 𝕜'
inst✝² : NormedAlgebra 𝕜 𝕜'
inst✝¹ : NormedSpace 𝕜' F
inst✝ : IsScalarTower 𝕜 𝕜' F
s' t' : Set 𝕜'
h : 𝕜 → 𝕜'
h₁ : 𝕜 → 𝕜
h₂ : 𝕜' → 𝕜'
h' h₂' : 𝕜'
h₁' : 𝕜
g₁ : 𝕜' → F
g₁' : F
L' : Filter 𝕜'
y : 𝕜'
f : 𝕜 → 𝕜
f' : 𝕜
hf : HasDerivWithinAt f f' s x
hx : f x = x
hs : MapsTo f s s
n : ℕ
this : HasFDerivWithinAt f^[n] (smulRight 1 f' ^ n) s x
⊢ HasDerivWithinAt f^[n] (f' ^ n) s x
state_after: no goals
Theorem: ENNReal.half_lt_self
File: Mathlib/Data/ENNReal/Inv.lean

tactic: lift a to ℝ≥0 using ht
state_before: a b c d : ℝ≥0∞
r p q : ℝ≥0
hz : a ≠ 0
ht : a ≠ ⊤
⊢ a / 2 < a
state_after: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : ↑a ≠ 0
⊢ ↑a / 2 < ↑a

tactic: rw [coe_ne_zero] at hz
state_before: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : ↑a ≠ 0
⊢ ↑a / 2 < ↑a
state_after: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ ↑a / 2 < ↑a

tactic: rw [← coe_two, ← coe_div, coe_lt_coe]
state_before: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ ↑a / 2 < ↑a
state_after: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ a / 2 < a

case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ 2 ≠ 0

tactic: exacts [NNReal.half_lt_self hz, two_ne_zero' _]
state_before: case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ a / 2 < a

case intro
b c d : ℝ≥0∞
r p q a : ℝ≥0
hz : a ≠ 0
⊢ 2 ≠ 0
state_after: no goals
Theorem: sub_half
File: Mathlib/Algebra/CharZero/Lemmas.lean

tactic: rw [sub_eq_iff_eq_add, add_halves']
state_before: R : Type u_1
inst✝¹ : DivisionRing R
inst✝ : CharZero R
a : R
⊢ a - a / 2 = a / 2
state_after: no goals
Theorem: ENNReal.tendsto_toReal_iff
File: Mathlib/Topology/Instances/ENNReal.lean

tactic: lift f to ι → ℝ≥0 using hf
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x✝ y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
ι : Type u_4
fi : Filter ι
f : ι → ℝ≥0∞
hf : ∀ (i : ι), f i ≠ ⊤
x : ℝ≥0∞
hx : x ≠ ⊤
⊢ Tendsto (fun n => (f n).toReal) fi (𝓝 x.toReal) ↔ Tendsto f fi (𝓝 x)
state_after: case intro
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x✝ y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
ι : Type u_4
fi : Filter ι
x : ℝ≥0∞
hx : x ≠ ⊤
f : ι → ℝ≥0
⊢ Tendsto (fun n => ((fun i => ↑(f i)) n).toReal) fi (𝓝 x.toReal) ↔ Tendsto (fun i => ↑(f i)) fi (𝓝 x)

tactic: lift x to ℝ≥0 using hx
state_before: case intro
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x✝ y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
ι : Type u_4
fi : Filter ι
x : ℝ≥0∞
hx : x ≠ ⊤
f : ι → ℝ≥0
⊢ Tendsto (fun n => ((fun i => ↑(f i)) n).toReal) fi (𝓝 x.toReal) ↔ Tendsto (fun i => ↑(f i)) fi (𝓝 x)
state_after: case intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x✝ y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
ι : Type u_4
fi : Filter ι
f : ι → ℝ≥0
x : ℝ≥0
⊢ Tendsto (fun n => ((fun i => ↑(f i)) n).toReal) fi (𝓝 (↑x).toReal) ↔ Tendsto (fun i => ↑(f i)) fi (𝓝 ↑x)

tactic: simp [tendsto_coe]
state_before: case intro.intro
α : Type u_1
β : Type u_2
γ : Type u_3
a b c d : ℝ≥0∞
r p q : ℝ≥0
x✝ y z ε ε₁ ε₂ : ℝ≥0∞
s : Set ℝ≥0∞
ι : Type u_4
fi : Filter ι
f : ι → ℝ≥0
x : ℝ≥0
⊢ Tendsto (fun n => ((fun i => ↑(f i)) n).toReal) fi (𝓝 (↑x).toReal) ↔ Tendsto (fun i => ↑(f i)) fi (𝓝 ↑x)
state_after: no goals
Theorem: Set.image_const_sub_Iio
File: Mathlib/Data/Set/Pointwise/Interval.lean

tactic: have := image_comp (fun x => a + x) fun x => -x
state_before: α : Type u_1
inst✝ : OrderedAddCommGroup α
a b c : α
⊢ (fun x => a - x) '' Iio b = Ioi (a - b)
state_after: α : Type u_1
inst✝ : OrderedAddCommGroup α
a b c : α
this : ∀ (a_1 : Set α), ((fun x => a + x) ∘ fun x => -x) '' a_1 = (fun x => a + x) '' ((fun x => -x) '' a_1)
⊢ (fun x => a - x) '' Iio b = Ioi (a - b)

tactic: dsimp [Function.comp_def] at this
state_before: α : Type u_1
inst✝ : OrderedAddCommGroup α
a b c : α
this : ∀ (a_1 : Set α), ((fun x => a + x) ∘ fun x => -x) '' a_1 = (fun x => a + x) '' ((fun x => -x) '' a_1)
⊢ (fun x => a - x) '' Iio b = Ioi (a - b)
state_after: α : Type u_1
inst✝ : OrderedAddCommGroup α
a b c : α
this : ∀ (a_1 : Set α), (fun x => a + -x) '' a_1 = (fun x => a + x) '' ((fun x => -x) '' a_1)
⊢ (fun x => a - x) '' Iio b = Ioi (a - b)

tactic: simp [sub_eq_add_neg, this, add_comm]
state_before: α : Type u_1
inst✝ : OrderedAddCommGroup α
a b c : α
this : ∀ (a_1 : Set α), (fun x => a + -x) '' a_1 = (fun x => a + x) '' ((fun x => -x) '' a_1)
⊢ (fun x => a - x) '' Iio b = Ioi (a - b)
state_after: no goals
Theorem: Nat.gcdB_zero_left
File: Mathlib/Data/Int/GCD.lean

tactic: unfold gcdB
state_before: s : ℕ
⊢ gcdB 0 s = 1
state_after: s : ℕ
⊢ (xgcd 0 s).2 = 1

tactic: rw [xgcd, xgcd_zero_left]
state_before: s : ℕ
⊢ (xgcd 0 s).2 = 1
state_after: no goals
Theorem: MeasureTheory.le_liminf_measure_open_of_forall_tendsto_measure
File: Mathlib/MeasureTheory/Measure/Portmanteau.lean

tactic: apply le_measure_liminf_of_limsup_measure_compl_le G_open.measurableSet
state_before: Ω✝ : Type u_1
inst✝⁸ : PseudoEMetricSpace Ω✝
inst✝⁷ : MeasurableSpace Ω✝
inst✝⁶ : OpensMeasurableSpace Ω✝
Ω : Type u_2
ι : Type u_3
L : Filter ι
inst✝⁵ : L.NeBot
inst✝⁴ : MeasurableSpace Ω
inst✝³ : PseudoEMetricSpace Ω
inst✝² : OpensMeasurableSpace Ω
μ : Measure Ω
inst✝¹ : IsProbabilityMeasure μ
μs : ι → Measure Ω
inst✝ : ∀ (i : ι), IsProbabilityMeasure (μs i)
h : ∀ {E : Set Ω}, MeasurableSet E → μ (frontier E) = 0 → Tendsto (fun i => (μs i) E) L (𝓝 (μ E))
G : Set Ω
G_open : IsOpen G
⊢ μ G ≤ liminf (fun i => (μs i) G) L
state_after: Ω✝ : Type u_1
inst✝⁸ : PseudoEMetricSpace Ω✝
inst✝⁷ : MeasurableSpace Ω✝
inst✝⁶ : OpensMeasurableSpace Ω✝
Ω : Type u_2
ι : Type u_3
L : Filter ι
inst✝⁵ : L.NeBot
inst✝⁴ : MeasurableSpace Ω
inst✝³ : PseudoEMetricSpace Ω
inst✝² : OpensMeasurableSpace Ω
μ : Measure Ω
inst✝¹ : IsProbabilityMeasure μ
μs : ι → Measure Ω
inst✝ : ∀ (i : ι), IsProbabilityMeasure (μs i)
h : ∀ {E : Set Ω}, MeasurableSet E → μ (frontier E) = 0 → Tendsto (fun i => (μs i) E) L (𝓝 (μ E))
G : Set Ω
G_open : IsOpen G
⊢ limsup (fun i => (μs i) Gᶜ) L ≤ μ Gᶜ

tactic: exact limsup_measure_closed_le_of_forall_tendsto_measure h _ (isClosed_compl_iff.mpr G_open)
state_before: Ω✝ : Type u_1
inst✝⁸ : PseudoEMetricSpace Ω✝
inst✝⁷ : MeasurableSpace Ω✝
inst✝⁶ : OpensMeasurableSpace Ω✝
Ω : Type u_2
ι : Type u_3
L : Filter ι
inst✝⁵ : L.NeBot
inst✝⁴ : MeasurableSpace Ω
inst✝³ : PseudoEMetricSpace Ω
inst✝² : OpensMeasurableSpace Ω
μ : Measure Ω
inst✝¹ : IsProbabilityMeasure μ
μs : ι → Measure Ω
inst✝ : ∀ (i : ι), IsProbabilityMeasure (μs i)
h : ∀ {E : Set Ω}, MeasurableSet E → μ (frontier E) = 0 → Tendsto (fun i => (μs i) E) L (𝓝 (μ E))
G : Set Ω
G_open : IsOpen G
⊢ limsup (fun i => (μs i) Gᶜ) L ≤ μ Gᶜ
state_after: no goals
Theorem: MeasureTheory.isProbabilityMeasure_comap
File: Mathlib/MeasureTheory/Measure/Typeclasses.lean

tactic: rw [comap_apply _ hf hf'' _ MeasurableSet.univ,
  ← mem_ae_iff_prob_eq_one (hf'' _ MeasurableSet.univ)]
state_before: α : Type u_1
β : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝¹ : MeasurableSpace β
μ ν ν₁ ν₂ : Measure α
s t : Set α
inst✝ : IsProbabilityMeasure μ
p : α → Prop
f : β → α
hf : Injective f
hf' : ∀ᵐ (a : α) ∂μ, a ∈ range f
hf'' : ∀ (s : Set β), MeasurableSet s → MeasurableSet (f '' s)
⊢ (Measure.comap f μ) univ = 1
state_after: α : Type u_1
β : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝¹ : MeasurableSpace β
μ ν ν₁ ν₂ : Measure α
s t : Set α
inst✝ : IsProbabilityMeasure μ
p : α → Prop
f : β → α
hf : Injective f
hf' : ∀ᵐ (a : α) ∂μ, a ∈ range f
hf'' : ∀ (s : Set β), MeasurableSet s → MeasurableSet (f '' s)
⊢ f '' univ ∈ ae μ

tactic: simpa
state_before: α : Type u_1
β : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝¹ : MeasurableSpace β
μ ν ν₁ ν₂ : Measure α
s t : Set α
inst✝ : IsProbabilityMeasure μ
p : α → Prop
f : β → α
hf : Injective f
hf' : ∀ᵐ (a : α) ∂μ, a ∈ range f
hf'' : ∀ (s : Set β), MeasurableSet s → MeasurableSet (f '' s)
⊢ f '' univ ∈ ae μ
state_after: no goals
Theorem: Sbtw.oangle₃₂₁_eq_pi
File: Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean

tactic: rw [oangle_eq_pi_iff_oangle_rev_eq_pi, ← h.oangle₁₂₃_eq_pi]
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 : Sbtw ℝ p₁ p₂ p₃
⊢ ∡ p₃ p₂ p₁ = ↑π
state_after: no goals
Theorem: ProbabilityTheory.mgf_neg
File: Mathlib/Probability/Moments.lean

tactic: simp_rw [mgf, Pi.neg_apply, mul_neg, neg_mul]
state_before: Ω : Type u_1
ι : Type u_2
m : MeasurableSpace Ω
X : Ω → ℝ
p : ℕ
μ : Measure Ω
t : ℝ
⊢ mgf (-X) μ t = mgf X μ (-t)
state_after: no goals
Theorem: mul_self_mul_inv
File: Mathlib/Algebra/GroupWithZero/Basic.lean

tactic: by_cases h : a = 0
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 a : G₀
⊢ a * a * a⁻¹ = a
state_after: case pos
α : 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 a : G₀
h : a = 0
⊢ a * a * a⁻¹ = a

case neg
α : 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 a : G₀
h : ¬a = 0
⊢ a * a * a⁻¹ = a

tactic: rw [h, inv_zero, mul_zero]
state_before: case pos
α : 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 a : G₀
h : a = 0
⊢ a * a * a⁻¹ = a
state_after: no goals

tactic: rw [mul_assoc, mul_inv_cancel h, mul_one]
state_before: case neg
α : 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 a : G₀
h : ¬a = 0
⊢ a * a * a⁻¹ = a
state_after: no goals
Theorem: Set.Finite.image
File: Mathlib/Data/Set/Finite.lean

tactic: have := hs.to_subtype
state_before: α : Type u
β : Type v
ι : Sort w
γ : Type x
s : Set α
f : α → β
hs : s.Finite
⊢ (f '' s).Finite
state_after: α : Type u
β : Type v
ι : Sort w
γ : Type x
s : Set α
f : α → β
hs : s.Finite
this : Finite ↑s
⊢ (f '' s).Finite

tactic: apply toFinite
state_before: α : Type u
β : Type v
ι : Sort w
γ : Type x
s : Set α
f : α → β
hs : s.Finite
this : Finite ↑s
⊢ (f '' s).Finite
state_after: no goals
Theorem: Int.addSubmonoid_closure_range_pow
File: Mathlib/Data/Int/Star.lean

tactic: refine le_antisymm (closure_le.2 <| range_subset_iff.2 hn.pow_nonneg) fun x hx ↦ ?_
state_before: n : ℕ
hn : Even n
⊢ closure (range fun x => x ^ n) = nonneg ℤ
state_after: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
⊢ x ∈ closure (range fun x => x ^ n)

tactic: have : x = x.natAbs • 1 ^ n := by simpa [eq_comm (a := x)] using hx
state_before: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
⊢ x ∈ closure (range fun x => x ^ n)
state_after: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
this : x = x.natAbs • 1 ^ n
⊢ x ∈ closure (range fun x => x ^ n)

tactic: rw [this]
state_before: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
this : x = x.natAbs • 1 ^ n
⊢ x ∈ closure (range fun x => x ^ n)
state_after: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
this : x = x.natAbs • 1 ^ n
⊢ x.natAbs • 1 ^ n ∈ closure (range fun x => x ^ n)

tactic: exact nsmul_mem (subset_closure $ mem_range_self _) _
state_before: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
this : x = x.natAbs • 1 ^ n
⊢ x.natAbs • 1 ^ n ∈ closure (range fun x => x ^ n)
state_after: no goals

tactic: simpa [eq_comm (a := x)] using hx
state_before: n : ℕ
hn : Even n
x : ℤ
hx : x ∈ nonneg ℤ
⊢ x = x.natAbs • 1 ^ n
state_after: no goals
Theorem: UpperSet.symm_map
File: Mathlib/Order/UpperLower/Basic.lean

tactic: convert Set.preimage_equiv_eq_image_symm s f.toEquiv
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
ι : Sort u_4
κ : ι → Sort u_5
inst✝² : Preorder α
inst✝¹ : Preorder β
inst✝ : Preorder γ
f✝ : α ≃o β
s✝ t : UpperSet α
a : α
b : β
f : α ≃o β
s : UpperSet β
⊢ ↑((map f).symm s) = ↑((map f.symm) s)
state_after: no goals