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

tactic: by_cases hp_zero : p = 0
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: have hq_ne_zero : q ≠ 0 := by
  intro hq_zero
  simp only [hq_zero, hp_zero, one_div, ENNReal.inv_zero, top_add, ENNReal.inv_eq_top] at hpqr
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: have hr_ne_zero : r ≠ 0 := by
  intro hr_zero
  simp only [hr_zero, hp_zero, one_div, ENNReal.inv_zero, add_top, ENNReal.inv_eq_top] at hpqr
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: by_cases hq_top : q = ∞
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: by_cases hr_top : r = ∞
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: rw [snorm_eq_snorm' hp_zero (hpq.trans_le le_top).ne, snorm_eq_snorm' hq_ne_zero hq_top,
  snorm_eq_snorm' hr_ne_zero hr_top]
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: refine' snorm'_le_snorm'_mul_snorm' hf hg _ h _ _ _
state_before: case neg
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ snorm' (fun x => b (f x) (g x)) (ENNReal.toReal p) μ ≤ snorm' f (ENNReal.toReal q) μ * snorm' g (ENNReal.toReal r) μ

tactic: rw [← ENNReal.one_toReal, ← ENNReal.toReal_div, ← ENNReal.toReal_div, ← ENNReal.toReal_div, hpqr,
  ENNReal.toReal_add]
state_before: case neg.refine'_3
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ 1 / ENNReal.toReal p = 1 / ENNReal.toReal q + 1 / ENNReal.toReal r

tactic: simp [hp_zero]
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : p = 0
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: intro hq_zero
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
⊢ q ≠ 0

tactic: simp only [hq_zero, hp_zero, one_div, ENNReal.inv_zero, top_add, ENNReal.inv_eq_top] at hpqr
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_zero : q = 0
⊢ False

tactic: intro hr_zero
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
⊢ r ≠ 0

tactic: simp only [hr_zero, hp_zero, one_div, ENNReal.inv_zero, add_top, ENNReal.inv_eq_top] at hpqr
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_zero : r = 0
⊢ False

tactic: have hpr : p = r := by
  simpa only [hq_top, one_div, ENNReal.inv_top, zero_add, inv_inj] using hpqr
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : q = ⊤
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: rw [← hpr, hq_top]
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : q = ⊤
hpr : p = r
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: exact snorm_le_snorm_top_mul_snorm p f hg b h
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : q = ⊤
hpr : p = r
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f ⊤ μ * snorm g p μ

tactic: simpa only [hq_top, one_div, ENNReal.inv_top, zero_add, inv_inj] using hpqr
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : q = ⊤
⊢ p = r

tactic: have hpq : p = q := by
  simpa only [hr_top, one_div, ENNReal.inv_top, add_zero, inv_inj] using hpqr
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : r = ⊤
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: rw [← hpq, hr_top]
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : r = ⊤
hpq : p = q
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f q μ * snorm g r μ

tactic: exact snorm_le_snorm_mul_snorm_top p hf g b h
state_before: case pos
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : r = ⊤
hpq : p = q
⊢ snorm (fun x => b (f x) (g x)) p μ ≤ snorm f p μ * snorm g ⊤ μ

tactic: simpa only [hr_top, one_div, ENNReal.inv_top, add_zero, inv_inj] using hpqr
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : r = ⊤
⊢ p = q

tactic: suffices 1 / q < 1 / p by rwa [one_div, one_div, ENNReal.inv_lt_inv] at this
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
⊢ p < q

tactic: rw [hpqr]
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
⊢ 1 / q < 1 / p

tactic: refine' ENNReal.lt_add_right _ _
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
⊢ 1 / q < 1 / q + 1 / r

tactic: rwa [one_div, one_div, ENNReal.inv_lt_inv] at this
state_before: α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
this : 1 / q < 1 / p
⊢ p < q

tactic: simp only [hq_ne_zero, one_div, Ne.def, ENNReal.inv_eq_top, not_false_iff]
state_before: case refine'_1
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
⊢ 1 / q ≠ ⊤

tactic: simp only [hr_top, one_div, Ne.def, ENNReal.inv_eq_zero, not_false_iff]
state_before: case refine'_2
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
⊢ 1 / r ≠ 0

tactic: exact ENNReal.toReal_pos hp_zero (hpq.trans_le le_top).ne
state_before: case neg.refine'_1
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ 0 < ENNReal.toReal p

tactic: exact ENNReal.toReal_strict_mono hq_top hpq
state_before: case neg.refine'_2
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ ENNReal.toReal p < ENNReal.toReal q

tactic: simp only [hq_ne_zero, one_div, Ne.def, ENNReal.inv_eq_top, not_false_iff]
state_before: case neg.refine'_3.ha
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ 1 / q ≠ ⊤

tactic: simp only [hr_ne_zero, one_div, Ne.def, ENNReal.inv_eq_top, not_false_iff]
state_before: case neg.refine'_3.hb
α : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q✝ : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
p q r : ℝ≥0∞
f : α → E
hf : AEStronglyMeasurable f μ
g : α → F
hg : AEStronglyMeasurable g μ
b : E → F → G
h : ∀ᵐ (x : α) ∂μ, ‖b (f x) (g x)‖₊ ≤ ‖f x‖₊ * ‖g x‖₊
hpqr : 1 / p = 1 / q + 1 / r
hp_zero : ¬p = 0
hq_ne_zero : q ≠ 0
hr_ne_zero : r ≠ 0
hq_top : ¬q = ⊤
hr_top : ¬r = ⊤
hpq : p < q
⊢ 1 / r ≠ ⊤