Theorem: MeasureTheory.snorm'_le_snormEssSup_mul_rpow_measure_univ
File: Mathlib/MeasureTheory/Function/LpSeminorm.lean

tactic: have h_le : (∫⁻ a : α, (‖f a‖₊ : ℝ≥0∞) ^ q ∂μ) ≤ ∫⁻ _ : α, snormEssSup f μ ^ q ∂μ := by
  refine' lintegral_mono_ae _
  have h_nnnorm_le_snorm_ess_sup := coe_nnnorm_ae_le_snormEssSup f μ
  refine' h_nnnorm_le_snorm_ess_sup.mono fun x hx => ENNReal.rpow_le_rpow hx (le_of_lt hq_pos)
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
⊢ snorm' f q μ ≤ snormEssSup f μ * ↑↑μ Set.univ ^ (1 / q)

tactic: rw [snorm', ← ENNReal.rpow_one (snormEssSup f μ)]
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ snorm' f q μ ≤ snormEssSup f μ * ↑↑μ Set.univ ^ (1 / q)

tactic: nth_rw 2 [← mul_inv_cancel (ne_of_lt hq_pos).symm]
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ^ (1 / q) ≤ snormEssSup f μ ^ 1 * ↑↑μ Set.univ ^ (1 / q)

tactic: rw [ENNReal.rpow_mul, one_div, ← ENNReal.mul_rpow_of_nonneg _ _ (by simp [hq_pos.le] : 0 ≤ q⁻¹)]
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ^ (1 / q) ≤ snormEssSup f μ ^ (q * q⁻¹) * ↑↑μ Set.univ ^ (1 / q)

tactic: refine' ENNReal.rpow_le_rpow _ (by simp [hq_pos.le])
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ^ q⁻¹ ≤ (snormEssSup f μ ^ q * ↑↑μ Set.univ) ^ q⁻¹

tactic: rwa [lintegral_const] at h_le
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ snormEssSup f μ ^ q * ↑↑μ Set.univ

tactic: refine' lintegral_mono_ae _
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
⊢ (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ

tactic: have h_nnnorm_le_snorm_ess_sup := coe_nnnorm_ae_le_snormEssSup f μ
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
⊢ ∀ᵐ (a : α) ∂μ, ↑‖f a‖₊ ^ q ≤ snormEssSup f μ ^ q

tactic: refine' h_nnnorm_le_snorm_ess_sup.mono fun x hx => ENNReal.rpow_le_rpow hx (le_of_lt hq_pos)
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_nnnorm_le_snorm_ess_sup : ∀ᵐ (x : α) ∂μ, ↑‖f x‖₊ ≤ snormEssSup f μ
⊢ ∀ᵐ (a : α) ∂μ, ↑‖f a‖₊ ^ q ≤ snormEssSup f μ ^ q

tactic: simp [hq_pos.le]
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ 0 ≤ q⁻¹

tactic: simp [hq_pos.le]
state_before: α : Type u_1
E : Type ?u.3876297
F : Type u_2
G : Type ?u.3876303
m m0 : MeasurableSpace α
p : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
hq_pos : 0 < q
f : α → F
h_le : (∫⁻ (a : α), ↑‖f a‖₊ ^ q ∂μ) ≤ ∫⁻ (x : α), snormEssSup f μ ^ q ∂μ
⊢ 0 ≤ q⁻¹