Theorem: MeasureTheory.Lp.snorm'_sum_norm_sub_le_tsum_of_cauchy_snorm'
File: Mathlib/MeasureTheory/Function/LpSpace.lean

tactic: let f_norm_diff i x := ‖f (i + 1) x - f i x‖
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
⊢ snorm' (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) p μ ≤ ∑' (i : ℕ), B i

tactic: have hgf_norm_diff :
  ∀ n,
    (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) =
      ∑ i in Finset.range (n + 1), f_norm_diff i :=
  fun n => funext fun x => by simp
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
⊢ snorm' (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) p μ ≤ ∑' (i : ℕ), B i

tactic: rw [hgf_norm_diff]
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
hgf_norm_diff :
  ∀ (n : ℕ), (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) = ∑ i in Finset.range (n + 1), f_norm_diff i
⊢ snorm' (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) p μ ≤ ∑' (i : ℕ), B i

tactic: refine' (snorm'_sum_le (fun i _ => ((hf (i + 1)).sub (hf i)).norm) hp1).trans _
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
hgf_norm_diff :
  ∀ (n : ℕ), (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) = ∑ i in Finset.range (n + 1), f_norm_diff i
⊢ snorm' (∑ i in Finset.range (n + 1), f_norm_diff i) p μ ≤ ∑' (i : ℕ), B i

tactic: simp_rw [← Pi.sub_apply, snorm'_norm]
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
hgf_norm_diff :
  ∀ (n : ℕ), (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) = ∑ i in Finset.range (n + 1), f_norm_diff i
⊢ ∑ i in Finset.range (n + 1), snorm' (fun x => ‖(f (i + 1) - f i) x‖) p μ ≤ ∑' (i : ℕ), B i

tactic: refine' (Finset.sum_le_sum _).trans (sum_le_tsum _ (fun m _ => zero_le _) ENNReal.summable)
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
hgf_norm_diff :
  ∀ (n : ℕ), (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) = ∑ i in Finset.range (n + 1), f_norm_diff i
⊢ ∑ x in Finset.range (n + 1), snorm' (fun a => (f (x + 1) - f x) a) p μ ≤ ∑' (i : ℕ), B i

tactic: exact fun m _ => (h_cau m (m + 1) m (Nat.le_succ m) (le_refl m)).le
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
hgf_norm_diff :
  ∀ (n : ℕ), (fun x => ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖) = ∑ i in Finset.range (n + 1), f_norm_diff i
⊢ ∀ (i : ℕ), i ∈ Finset.range (n + 1) → snorm' (fun a => (f (i + 1) - f i) a) p μ ≤ B i

tactic: simp
state_before: α : Type u_1
E : Type u_2
F : Type ?u.8147838
G : Type ?u.8147841
m m0 : MeasurableSpace α
p✝ : ℝ≥0∞
q : ℝ
μ ν : Measure α
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedAddCommGroup G
f : ℕ → α → E
hf : ∀ (n : ℕ), AEStronglyMeasurable (f n) μ
p : ℝ
hp1 : 1 ≤ p
B : ℕ → ℝ≥0∞
h_cau : ∀ (N n m : ℕ), N ≤ n → N ≤ m → snorm' (f n - f m) p μ < B N
n✝ : ℕ
f_norm_diff : ℕ → α → ℝ := fun i x => ‖f (i + 1) x - f i x‖
n : ℕ
x : α
⊢ ∑ i in Finset.range (n + 1), ‖f (i + 1) x - f i x‖ = Finset.sum (Finset.range (n + 1)) (fun i => f_norm_diff i) x