@@ -377,6 +377,51 @@ begin
377
377
((is_greatest_Lp s g hpq).2 ⟨φ, hφ, rfl⟩)
378
378
end
379
379
380
+ /-- Minkowski inequality: the `L_p` seminorm of the infinite sum of two vectors is less than or
381
+ equal to the infinite sum of the `L_p`-seminorms of the summands, if these infinite sums both
382
+ exist. A version for `nnreal`-valued functions. For an alternative version, convenient if the
383
+ infinite sums are already expressed as `p`-th powers, see `Lp_add_le_has_sum_of_nonneg`. -/
384
+ theorem Lp_add_le_tsum {f g : ι → ℝ≥0 } {p : ℝ} (hp : 1 ≤ p) (hf : summable (λ i, (f i) ^ p))
385
+ (hg : summable (λ i, (g i) ^ p)) :
386
+ summable (λ i, (f i + g i) ^ p) ∧
387
+ (∑' i, (f i + g i) ^ p) ^ (1 / p) ≤ (∑' i, (f i) ^ p) ^ (1 / p) + (∑' i, (g i) ^ p) ^ (1 / p) :=
388
+ begin
389
+ have pos : 0 < p := lt_of_lt_of_le zero_lt_one hp,
390
+ have H₁ : ∀ s : finset ι, ∑ i in s, (f i + g i) ^ p
391
+ ≤ ((∑' i, (f i)^p) ^ (1 /p) + (∑' i, (g i)^p) ^ (1 /p)) ^ p,
392
+ { intros s,
393
+ rw ← nnreal.rpow_one_div_le_iff pos,
394
+ refine le_trans (Lp_add_le s f g hp) (add_le_add _ _);
395
+ rw nnreal.rpow_le_rpow_iff (one_div_pos.mpr pos);
396
+ refine sum_le_tsum _ (λ _ _, zero_le _) _,
397
+ exacts [hf, hg] },
398
+ have bdd : bdd_above (set.range (λ s, ∑ i in s, (f i + g i) ^ p)),
399
+ { refine ⟨((∑' i, (f i)^p) ^ (1 /p) + (∑' i, (g i)^p) ^ (1 /p)) ^ p, _⟩,
400
+ rintros a ⟨s, rfl⟩,
401
+ exact H₁ s },
402
+ have H₂ : summable _ := (has_sum_of_is_lub _ (is_lub_csupr bdd)).summable,
403
+ refine ⟨H₂, _⟩,
404
+ rw nnreal.rpow_one_div_le_iff pos,
405
+ refine tsum_le_of_sum_le H₂ H₁,
406
+ end
407
+
408
+ /-- Minkowski inequality: the `L_p` seminorm of the infinite sum of two vectors is less than or
409
+ equal to the infinite sum of the `L_p`-seminorms of the summands, if these infinite sums both
410
+ exist. A version for `nnreal`-valued functions. For an alternative version, convenient if the
411
+ infinite sums are not already expressed as `p`-th powers, see `Lp_add_le_tsum_of_nonneg`. -/
412
+ theorem Lp_add_le_has_sum {f g : ι → ℝ≥0 } {A B : ℝ≥0 } {p : ℝ} (hp : 1 ≤ p)
413
+ (hf : has_sum (λ i, (f i) ^ p) (A ^ p)) (hg : has_sum (λ i, (g i) ^ p) (B ^ p)) :
414
+ ∃ C, C ≤ A + B ∧ has_sum (λ i, (f i + g i) ^ p) (C ^ p) :=
415
+ begin
416
+ have hp' : p ≠ 0 := (lt_of_lt_of_le zero_lt_one hp).ne',
417
+ obtain ⟨H₁, H₂⟩ := Lp_add_le_tsum hp hf.summable hg.summable,
418
+ have hA : A = (∑' (i : ι), f i ^ p) ^ (1 / p) := by rw [hf.tsum_eq, rpow_inv_rpow_self hp'],
419
+ have hB : B = (∑' (i : ι), g i ^ p) ^ (1 / p) := by rw [hg.tsum_eq, rpow_inv_rpow_self hp'],
420
+ refine ⟨(∑' i, (f i + g i) ^ p) ^ (1 / p), _, _⟩,
421
+ { simpa [hA, hB] using H₂ },
422
+ { simpa only [rpow_self_rpow_inv hp'] using H₁.has_sum }
423
+ end
424
+
380
425
end nnreal
381
426
382
427
namespace real
@@ -441,14 +486,49 @@ by convert rpow_sum_le_const_mul_sum_rpow s f hp using 2; apply sum_congr rfl; i
441
486
simp only [abs_of_nonneg, hf i hi]
442
487
443
488
/-- Minkowski inequality: the `L_p` seminorm of the sum of two vectors is less than or equal
444
- to the sum of the `L_p`-seminorms of the summands. A version for `real `-valued nonnegative
489
+ to the sum of the `L_p`-seminorms of the summands. A version for `ℝ `-valued nonnegative
445
490
functions. -/
446
491
theorem Lp_add_le_of_nonneg (hp : 1 ≤ p) (hf : ∀ i ∈ s, 0 ≤ f i) (hg : ∀ i ∈ s, 0 ≤ g i) :
447
492
(∑ i in s, (f i + g i) ^ p) ^ (1 / p) ≤
448
493
(∑ i in s, (f i) ^ p) ^ (1 / p) + (∑ i in s, (g i) ^ p) ^ (1 / p) :=
449
494
by convert Lp_add_le s f g hp using 2 ; [skip, congr' 1 , congr' 1 ];
450
495
apply sum_congr rfl; intros i hi; simp only [abs_of_nonneg, hf i hi, hg i hi, add_nonneg]
451
496
497
+ /-- Minkowski inequality: the `L_p` seminorm of the infinite sum of two vectors is less than or
498
+ equal to the infinite sum of the `L_p`-seminorms of the summands, if these infinite sums both
499
+ exist. A version for `ℝ`-valued functions. For an alternative version, convenient if the infinite
500
+ sums are already expressed as `p`-th powers, see `Lp_add_le_has_sum_of_nonneg`. -/
501
+ theorem Lp_add_le_tsum_of_nonneg (hp : 1 ≤ p) (hf : ∀ i, 0 ≤ f i) (hg : ∀ i, 0 ≤ g i)
502
+ (hf_sum : summable (λ i, (f i) ^ p)) (hg_sum : summable (λ i, (g i) ^ p)) :
503
+ summable (λ i, (f i + g i) ^ p) ∧
504
+ (∑' i, (f i + g i) ^ p) ^ (1 / p) ≤ (∑' i, (f i) ^ p) ^ (1 / p) + (∑' i, (g i) ^ p) ^ (1 / p) :=
505
+ begin
506
+ lift f to (ι → ℝ≥0 ) using hf,
507
+ lift g to (ι → ℝ≥0 ) using hg,
508
+ norm_cast at *,
509
+ exact nnreal.Lp_add_le_tsum hp hf_sum hg_sum,
510
+ end
511
+
512
+ /-- Minkowski inequality: the `L_p` seminorm of the infinite sum of two vectors is less than or
513
+ equal to the infinite sum of the `L_p`-seminorms of the summands, if these infinite sums both
514
+ exist. A version for `ℝ`-valued functions. For an alternative version, convenient if the infinite
515
+ sums are not already expressed as `p`-th powers, see `Lp_add_le_tsum_of_nonneg`. -/
516
+ theorem Lp_add_le_has_sum_of_nonneg (hp : 1 ≤ p) (hf : ∀ i, 0 ≤ f i) (hg : ∀ i, 0 ≤ g i) {A B : ℝ}
517
+ (hA : 0 ≤ A) (hB : 0 ≤ B) (hfA : has_sum (λ i, (f i) ^ p) (A ^ p))
518
+ (hgB : has_sum (λ i, (g i) ^ p) (B ^ p)) :
519
+ ∃ C, 0 ≤ C ∧ C ≤ A + B ∧ has_sum (λ i, (f i + g i) ^ p) (C ^ p) :=
520
+ begin
521
+ lift f to (ι → ℝ≥0 ) using hf,
522
+ lift g to (ι → ℝ≥0 ) using hg,
523
+ lift A to ℝ≥0 using hA,
524
+ lift B to ℝ≥0 using hB,
525
+ norm_cast at hfA hgB,
526
+ obtain ⟨C, hC₁, hC₂⟩ := nnreal.Lp_add_le_has_sum hp hfA hgB,
527
+ use C,
528
+ norm_cast,
529
+ exact ⟨zero_le _, hC₁, hC₂⟩,
530
+ end
531
+
452
532
end real
453
533
454
534
namespace ennreal
0 commit comments