Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit c208a65

Browse files
committed
feat(analysis/mean_inequalities): add Minkowski's inequality for the Lebesgue integral of ennreal functions (#5379)
1 parent 3a997b1 commit c208a65

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed

src/analysis/mean_inequalities.lean

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,9 @@ is the maximum of the inner product $\sum_{i\in s}a_ib_i$ over `b` such that $\|
101101
Minkowski's inequality follows from the fact that the maximum value of the sum of two functions is
102102
less than or equal to the sum of the maximum values of the summands.
103103
104+
Minkowski's inequality for the Lebesgue integral of measurable functions with `ennreal` values:
105+
we prove `(∫ (f + g)^p ∂μ) ^ (1/p) ≤ (∫ f^p ∂μ) ^ (1/p) + (∫ g^p ∂μ) ^ (1/p)` for `1 ≤ p`.
106+
104107
## TODO
105108
106109
- each inequality `A ≤ B` should come with a theorem `A = B ↔ _`; one of the ways to prove them
@@ -799,6 +802,123 @@ begin
799802
end
800803
end
801804

805+
lemma lintegral_mul_rpow_le_lintegral_rpow_mul_lintegral_rpow {p q : ℝ}
806+
(hpq : p.is_conjugate_exponent q) {f g : α → ennreal} (hf : measurable f) (hg : measurable g)
807+
(hf_top : ∫⁻ a, (f a) ^ p ∂μ ≠ ⊤) :
808+
∫⁻ a, (f a) * (g a) ^ (p - 1) ∂μ ≤ (∫⁻ a, (f a)^p ∂μ) ^ (1/p) * (∫⁻ a, (g a)^p ∂μ) ^ (1/q) :=
809+
begin
810+
refine le_trans (ennreal.lintegral_mul_le_Lp_mul_Lq μ hpq hf hg.ennreal_rpow_const) _,
811+
by_cases hf_zero_rpow : (∫⁻ (a : α), (f a) ^ p ∂μ) ^ (1 / p) = 0,
812+
{ rw [hf_zero_rpow, zero_mul],
813+
exact zero_le _, },
814+
have hf_top_rpow : (∫⁻ (a : α), (f a) ^ p ∂μ) ^ (1 / p) ≠ ⊤,
815+
{ by_contra h,
816+
push_neg at h,
817+
refine hf_top _,
818+
have hp_not_neg : ¬ p < 0, by simp [hpq.nonneg],
819+
simpa [hpq.pos, hp_not_neg] using h, },
820+
refine (ennreal.mul_le_mul_left hf_zero_rpow hf_top_rpow).mpr (le_of_eq _),
821+
congr,
822+
ext1 a,
823+
rw [←ennreal.rpow_mul, hpq.sub_one_mul_conj],
824+
end
825+
826+
lemma lintegral_rpow_add_le_add_snorm_mul_lintegral_rpow_add {p q : ℝ}
827+
(hpq : p.is_conjugate_exponent q) {f g : α → ennreal} (hf : measurable f)
828+
(hf_top : ∫⁻ a, (f a) ^ p ∂μ ≠ ⊤) (hg : measurable g) (hg_top : ∫⁻ a, (g a) ^ p ∂μ ≠ ⊤) :
829+
∫⁻ a, ((f + g) a)^p ∂ μ
830+
≤ ((∫⁻ a, (f a)^p ∂μ) ^ (1/p) + (∫⁻ a, (g a)^p ∂μ) ^ (1/p))
831+
* (∫⁻ a, (f a + g a)^p ∂μ) ^ (1/q) :=
832+
begin
833+
calc ∫⁻ a, ((f+g) a) ^ p ∂μ ≤ ∫⁻ a, ((f + g) a) * ((f + g) a) ^ (p - 1) ∂μ :
834+
begin
835+
refine lintegral_mono (λ a, _),
836+
dsimp only,
837+
by_cases h_zero : (f + g) a = 0,
838+
{ rw [h_zero, ennreal.zero_rpow_of_pos hpq.pos],
839+
exact zero_le _, },
840+
by_cases h_top : (f + g) a = ⊤,
841+
{ rw [h_top, ennreal.top_rpow_of_pos hpq.sub_one_pos, ennreal.top_mul_top],
842+
exact le_top, },
843+
refine le_of_eq _,
844+
nth_rewrite 1 ←ennreal.rpow_one ((f + g) a),
845+
rw [←ennreal.rpow_add _ _ h_zero h_top, add_sub_cancel'_right],
846+
end
847+
... = ∫⁻ (a : α), f a * (f + g) a ^ (p - 1) ∂μ + ∫⁻ (a : α), g a * (f + g) a ^ (p - 1) ∂μ :
848+
begin
849+
have h_add_m : measurable (λ (a : α), ((f + g) a) ^ (p-1)), from (hf.add hg).ennreal_rpow_const,
850+
have h_add_apply : ∫⁻ (a : α), (f + g) a * (f + g) a ^ (p - 1) ∂μ
851+
= ∫⁻ (a : α), (f a + g a) * (f + g) a ^ (p - 1) ∂μ,
852+
from rfl,
853+
simp_rw [h_add_apply, add_mul],
854+
rw lintegral_add (hf.ennreal_mul h_add_m) (hg.ennreal_mul h_add_m),
855+
end
856+
... ≤ ((∫⁻ a, (f a)^p ∂μ) ^ (1/p) + (∫⁻ a, (g a)^p ∂μ) ^ (1/p))
857+
* (∫⁻ a, (f a + g a)^p ∂μ) ^ (1/q) :
858+
begin
859+
rw add_mul,
860+
exact add_le_add
861+
(lintegral_mul_rpow_le_lintegral_rpow_mul_lintegral_rpow hpq hf (hf.add hg) hf_top)
862+
(lintegral_mul_rpow_le_lintegral_rpow_mul_lintegral_rpow hpq hg (hf.add hg) hg_top),
863+
end
864+
end
865+
866+
private lemma lintegral_Lp_add_le_aux {p q : ℝ}
867+
(hpq : p.is_conjugate_exponent q) {f g : α → ennreal} (hf : measurable f)
868+
(hf_top : ∫⁻ a, (f a) ^ p ∂μ ≠ ⊤) (hg : measurable g) (hg_top : ∫⁻ a, (g a) ^ p ∂μ ≠ ⊤)
869+
(h_add_zero : ∫⁻ a, ((f+g) a) ^ p ∂ μ ≠ 0) (h_add_top : ∫⁻ a, ((f+g) a) ^ p ∂ μ ≠ ⊤) :
870+
(∫⁻ a, ((f + g) a)^p ∂ μ) ^ (1/p) ≤ (∫⁻ a, (f a)^p ∂μ) ^ (1/p) + (∫⁻ a, (g a)^p ∂μ) ^ (1/p) :=
871+
begin
872+
have hp_not_nonpos : ¬ p ≤ 0, by simp [hpq.pos],
873+
have htop_rpow : (∫⁻ a, ((f+g) a) ^ p ∂μ)^(1/p) ≠ ⊤,
874+
{ by_contra h,
875+
push_neg at h,
876+
exact h_add_top (@ennreal.rpow_eq_top_of_nonneg _ (1/p) (by simp [hpq.nonneg]) h), },
877+
have h0_rpow : (∫⁻ a, ((f+g) a) ^ p ∂ μ) ^ (1/p) ≠ 0,
878+
by simp [h_add_zero, h_add_top, hpq.nonneg, hp_not_nonpos, -pi.add_apply],
879+
suffices h : 1 ≤ (∫⁻ (a : α), ((f+g) a)^p ∂μ) ^ -(1/p)
880+
* ((∫⁻ (a : α), (f a)^p ∂μ) ^ (1/p) + (∫⁻ (a : α), (g a)^p ∂μ) ^ (1/p)),
881+
by rwa [←mul_le_mul_left h0_rpow htop_rpow, ←mul_assoc, ←rpow_add _ _ h_add_zero h_add_top,
882+
←sub_eq_add_neg, _root_.sub_self, rpow_zero, one_mul, mul_one] at h,
883+
have h : ∫⁻ (a : α), ((f+g) a)^p ∂μ
884+
≤ ((∫⁻ (a : α), (f a)^p ∂μ) ^ (1/p) + (∫⁻ (a : α), (g a)^p ∂μ) ^ (1/p))
885+
* (∫⁻ (a : α), ((f+g) a)^p ∂μ) ^ (1/q),
886+
from lintegral_rpow_add_le_add_snorm_mul_lintegral_rpow_add hpq hf hf_top hg hg_top,
887+
have h_one_div_q : 1/q = 1 - 1/p, by { nth_rewrite 1 ←hpq.inv_add_inv_conj, ring, },
888+
simp_rw [h_one_div_q, sub_eq_add_neg 1 (1/p), ennreal.rpow_add _ _ h_add_zero h_add_top,
889+
rpow_one] at h,
890+
nth_rewrite 1 mul_comm at h,
891+
nth_rewrite 0 ←one_mul (∫⁻ (a : α), ((f+g) a) ^ p ∂μ) at h,
892+
rwa [←mul_assoc, ennreal.mul_le_mul_right h_add_zero h_add_top, mul_comm] at h,
893+
end
894+
895+
/-- Minkowski's inequality for functions `α → ennreal`: the `ℒp` seminorm of the sum of two
896+
functions is bounded by the sum of their `ℒp` seminorms. -/
897+
theorem lintegral_Lp_add_le {p : ℝ} {f g : α → ennreal}
898+
(hf : measurable f) (hg : measurable g) (hp1 : 1 ≤ p) :
899+
(∫⁻ a, ((f + g) a)^p ∂ μ) ^ (1/p) ≤ (∫⁻ a, (f a)^p ∂μ) ^ (1/p) + (∫⁻ a, (g a)^p ∂μ) ^ (1/p) :=
900+
begin
901+
have hp_pos : 0 < p, from lt_of_lt_of_le zero_lt_one hp1,
902+
by_cases hf_top : ∫⁻ a, (f a) ^ p ∂μ = ⊤,
903+
{ simp [hf_top, hp_pos], },
904+
by_cases hg_top : ∫⁻ a, (g a) ^ p ∂μ = ⊤,
905+
{ simp [hg_top, hp_pos], },
906+
by_cases h1 : p = 1,
907+
{ refine le_of_eq _,
908+
simp_rw [h1, one_div_one, ennreal.rpow_one],
909+
exact lintegral_add hf hg, },
910+
have hp1_lt : 1 < p, by { refine lt_of_le_of_ne hp1 _, symmetry, exact h1, },
911+
have hpq := real.is_conjugate_exponent_conjugate_exponent hp1_lt,
912+
by_cases h0 : ∫⁻ a, ((f+g) a) ^ p ∂ μ = 0,
913+
{ rw [h0, @ennreal.zero_rpow_of_pos (1/p) (by simp [lt_of_lt_of_le zero_lt_one hp1])],
914+
exact zero_le _, },
915+
have htop : ∫⁻ a, ((f+g) a) ^ p ∂ μ ≠ ⊤,
916+
{ rw ←ne.def at hf_top hg_top,
917+
rw ←ennreal.lt_top_iff_ne_top at hf_top hg_top ⊢,
918+
exact lintegral_rpow_add_lt_top_of_lintegral_rpow_lt_top hf hf_top hg hg_top hp1, },
919+
exact lintegral_Lp_add_le_aux hpq hf hf_top hg hg_top h0 htop,
920+
end
921+
802922
end ennreal
803923

804924
/-- Hölder's inequality for functions `α → nnreal`. The integral of the product of two functions

0 commit comments

Comments
 (0)