Theorem: MeasureTheory.meas_ge_le_mul_pow_snorm
File: Mathlib/MeasureTheory/Function/LpSeminorm.lean

tactic: by_cases ε = ∞
state_before: α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
⊢ ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ ε⁻¹ ^ ENNReal.toReal p * snorm f p μ ^ ENNReal.toReal p

tactic: have hεpow : ε ^ p.toReal ≠ 0 := (ENNReal.rpow_pos (pos_iff_ne_zero.2 hε) h).ne.symm
state_before: case neg
α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
h : ¬ε = ⊤
⊢ ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ ε⁻¹ ^ ENNReal.toReal p * snorm f p μ ^ ENNReal.toReal p

tactic: have hεpow' : ε ^ p.toReal ≠ ∞ := ENNReal.rpow_ne_top_of_nonneg ENNReal.toReal_nonneg h
state_before: case neg
α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
h : ¬ε = ⊤
hεpow : ε ^ ENNReal.toReal p ≠ 0
⊢ ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ ε⁻¹ ^ ENNReal.toReal p * snorm f p μ ^ ENNReal.toReal p

tactic: rw [ENNReal.inv_rpow, ← ENNReal.mul_le_mul_left hεpow hεpow', ← mul_assoc,
  ENNReal.mul_inv_cancel hεpow hεpow', one_mul]
state_before: case neg
α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
h : ¬ε = ⊤
hεpow : ε ^ ENNReal.toReal p ≠ 0
hεpow' : ε ^ ENNReal.toReal p ≠ ⊤
⊢ ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ ε⁻¹ ^ ENNReal.toReal p * snorm f p μ ^ ENNReal.toReal p

tactic: exact mul_meas_ge_le_pow_snorm' μ hp_ne_zero hp_ne_top hf ε
state_before: case neg
α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
h : ¬ε = ⊤
hεpow : ε ^ ENNReal.toReal p ≠ 0
hεpow' : ε ^ ENNReal.toReal p ≠ ⊤
⊢ ε ^ ENNReal.toReal p * ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ snorm f p μ ^ ENNReal.toReal p

tactic: simp [h]
state_before: case pos
α : Type u_1
E : Type u_2
F : Type ?u.4798273
G : Type ?u.4798276
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → E
hp_ne_zero : p ≠ 0
hp_ne_top : p ≠ ⊤
hf : AEStronglyMeasurable f μ
ε : ℝ≥0∞
hε : ε ≠ 0
h : ε = ⊤
⊢ ↑↑μ {x | ε ≤ ↑‖f x‖₊} ≤ ε⁻¹ ^ ENNReal.toReal p * snorm f p μ ^ ENNReal.toReal p