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

tactic: simp_rw [snorm']
state_before: α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ snorm' (fun x => ‖f x‖ ^ q) p μ = snorm' f (p * q) μ ^ q

tactic: rw [← ENNReal.rpow_mul, ← one_div_mul_one_div]
state_before: α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ (∫⁻ (a : α), ↑‖‖f a‖ ^ q‖₊ ^ p ∂μ) ^ (1 / p) = ((∫⁻ (a : α), ↑‖f a‖₊ ^ (p * q) ∂μ) ^ (1 / (p * q))) ^ q

tactic: simp_rw [one_div]
state_before: α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ (∫⁻ (a : α), ↑‖‖f a‖ ^ q‖₊ ^ p ∂μ) ^ (1 / p) = (∫⁻ (a : α), ↑‖f a‖₊ ^ (p * q) ∂μ) ^ (1 / p * (1 / q) * q)

tactic: rw [mul_assoc, inv_mul_cancel hq_pos.ne.symm, mul_one]
state_before: α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ (∫⁻ (a : α), ↑‖‖f a‖ ^ q‖₊ ^ p ∂μ) ^ p⁻¹ = (∫⁻ (a : α), ↑‖f a‖₊ ^ (p * q) ∂μ) ^ (p⁻¹ * q⁻¹ * q)

tactic: congr
state_before: α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ (∫⁻ (a : α), ↑‖‖f a‖ ^ q‖₊ ^ p ∂μ) ^ p⁻¹ = (∫⁻ (a : α), ↑‖f a‖₊ ^ (p * q) ∂μ) ^ p⁻¹

tactic: ext1 x
state_before: case e_a.e_f
α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
⊢ (fun a => ↑‖‖f a‖ ^ q‖₊ ^ p) = fun a => ↑‖f a‖₊ ^ (p * q)

tactic: simp_rw [← ofReal_norm_eq_coe_nnnorm]
state_before: case e_a.e_f.h
α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
x : α
⊢ ↑‖‖f x‖ ^ q‖₊ ^ p = ↑‖f x‖₊ ^ (p * q)

tactic: rw [Real.norm_eq_abs, abs_eq_self.mpr (Real.rpow_nonneg_of_nonneg (norm_nonneg _) _), mul_comm, ←
  ENNReal.ofReal_rpow_of_nonneg (norm_nonneg _) hq_pos.le, ENNReal.rpow_mul]
state_before: case e_a.e_f.h
α : Type u_1
E : Type ?u.1597979
F : Type u_2
G : Type ?u.1597985
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : α → F
p q : ℝ
hq_pos : 0 < q
x : α
⊢ ENNReal.ofReal ‖‖f x‖ ^ q‖ ^ p = ENNReal.ofReal ‖f x‖ ^ (p * q)