Skip to content

Commit 53a72c9

Browse files
committed
Reverted notation to 'N_p[f]
1 parent 0871b72 commit 53a72c9

1 file changed

Lines changed: 12 additions & 50 deletions

File tree

theories/hoelder.v

Lines changed: 12 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ From mathcomp Require Import all_ssreflect ssralg ssrnum ssrint interval finmap.
44
From mathcomp Require Import mathcomp_extra boolp classical_sets functions.
55
From mathcomp Require Import cardinality fsbigop .
66
Require Import signed reals ereal topology normedtype sequences real_interval.
7-
Require Import esum measure lebesgue_measure lebesgue_integral numfun exp.
7+
Require Import esum measure lebesgue_measure lebesgue_integral numfun exp convex itv.
88

99
(******************************************************************************)
1010
(* Hoelder's Inequality *)
@@ -220,10 +220,7 @@ Section lnorm.
220220
Context (R : realType).
221221
Local Open Scope ereal_scope.
222222

223-
Definition lnorm (p : R) (f : R^nat) : \bar R :=
224-
(\sum_(x <oo) (`|f x| `^ p)%:E) `^ p^-1.
225-
226-
Local Notation "`| f |~ p" := (lnorm p f).
223+
Local Notation "'N_ p [ f ]" := 'N[counting]_p[f].
227224

228225
Lemma ge0_integral_count (a : nat -> \bar R) : (forall k, 0 <= a k) ->
229226
\int[counting]_t (a t) = \sum_(k <oo) (a k).
@@ -236,9 +233,9 @@ rewrite (@ge0_integral_measure_series _ _ R (fun n => [the measure _ _ of \d_ n]
236233
by apply: eq_eseriesr=> i _; rewrite integral_dirac//= indicE mem_set// mul1e.
237234
Qed.
238235

239-
Lemma Lnorm_lnorm_eq p (f : R^nat) : 'N[counting]_p [f] = `| f |~p.
236+
Lemma lnormE p (f : R^nat) : 'N_p [f] = (\sum_(k <oo) (`| f k | `^ p)%:E) `^ p^-1.
240237
Proof.
241-
rewrite /lnorm -ge0_integral_count// => k.
238+
rewrite /Lnorm ge0_integral_count// => k.
242239
by rewrite lee_fin powR_ge0.
243240
Qed.
244241

@@ -247,60 +244,23 @@ Proof.
247244
rewrite /poweR. case:x => //. case: ifPn => //.
248245
Qed.
249246

250-
Lemma not_summable_lnorm_ifty p (f : R^nat) : (0 < p)%R ->
251-
~summable [set: nat] (fun t : nat => (`|f t| `^ p)%:E) -> `| f |~p = +oo%E.
252-
Proof.
253-
rewrite /summable /lnorm=>p0.
254-
rewrite ltNge leye_eq => /negP /negPn /eqP.
255-
rewrite nneseries_esum; last first.
256-
move=> n _; rewrite lee_fin powR_ge0//.
257-
rewrite -fun_true.
258-
under eq_esum => i _ do rewrite gee0_abs ?lee_fin ?powR_ge0//.
259-
by move=> ->; rewrite poweRyr// gt_eqF// invr_gt0.
260-
Qed.
261-
262-
Lemma lnorm_ifty_not_summable p (f : R^nat) : (0 < p)%R ->
263-
lnorm p f = +oo%E -> ~summable [set: nat] (fun t : nat => (`|f t| `^ p)%:E).
264-
Proof.
265-
rewrite /summable /lnorm=>p0 /poweRyr_inv.
266-
under eq_esum => i _ do rewrite gee0_abs ?lee_fin ?powR_ge0//.
267-
rewrite nneseries_esum; last first.
268-
move=> n _; rewrite lee_fin powR_ge0//.
269-
rewrite -fun_true => ->//.
270-
Qed.
271-
272-
Lemma lnorm_ge0 (p : R) (f : R^nat) : (0 <= `| f |~p)%E.
273-
Proof.
274-
rewrite /lnorm poweR_ge0//.
275-
Qed.
276-
277247
End lnorm.
278248

279-
Declare Scope lnorm_scope.
280-
Notation "`| f |~ p" := (lnorm p f) : lnorm_scope.
281-
282249
Section hoelder_sums.
283250
Context (R : realType).
284251
Local Open Scope ereal_scope.
285-
Local Open Scope lnorm_scope.
286252

287-
Lemma hoelder_sums (f g : R^nat) (p q : R) :
288-
measurable_fun setT f -> measurable_fun setT g ->
289-
(0 < p)%R -> (0 < q)%R -> (p^-1 + q^-1 = 1)%R ->
290-
`| (f \* g)%R |~(1) <= `| f |~p * `| g |~q.
291-
Proof.
292-
move=> mf mg p0 q0 pq; rewrite -!Lnorm_lnorm_eq hoelder//.
293-
Qed.
253+
Local Notation "'N_ p [ f ]" := 'N[counting]_p[f].
294254

295-
Lemma hoelder_sum2 (a1 a2 b1 b2 : R) (p q : R) : (0 <= a1)%R -> (0 <= a2)%R -> (0 <= b1)%R -> (0 <= b2)%R ->
255+
Lemma hoelder2 (a1 a2 b1 b2 : R) (p q : R) : (0 <= a1)%R -> (0 <= a2)%R -> (0 <= b1)%R -> (0 <= b2)%R ->
296256
(0 < p)%R -> (0 < q)%R -> (p^-1 + q^-1 = 1)%R ->
297257
(a1 * b1 + a2 * b2 <= (a1`^p + a2`^p) `^ (p^-1) * (b1`^q + b2`^q)`^(q^-1))%R.
298258
Proof.
299259
move=> a10 a20 b10 b20 p0 q0 pq.
300260
pose f := fun a b n => match n with 0%nat => a | 1%nat => b | _ => 0%R:R end.
301261
have mf a b : measurable_fun setT (f a b). done.
302-
have := @hoelder_sums (f a1 a2) (f b1 b2) p q (mf a1 a2) (mf b1 b2) p0 q0 pq.
303-
rewrite /lnorm.
262+
have := @hoelder _ _ _ counting (f a1 a2) (f b1 b2) p q (mf a1 a2) (mf b1 b2) p0 q0 pq.
263+
rewrite !lnormE.
304264
rewrite (nneseries_split 2); last by move=> k; rewrite lee_fin powR_ge0.
305265
rewrite ereal_series_cond eseries0 ?adde0; last first.
306266
case=>//; case=>// n n2; rewrite /f /= mulr0 normr0 powR0//.
@@ -332,7 +292,7 @@ Variable mu : {measure set T -> \bar R}.
332292
Local Open Scope ereal_scope.
333293
Local Open Scope convex_scope.
334294

335-
Local Notation "`| f |~ p" := (Lnorm mu p f).
295+
Local Notation "'N_ p [ f ]" := 'N[counting]_p[f].
336296

337297
Lemma ln_le0 (x : R) : (x <= 1 -> ln x <= 0)%R.
338298
Proof.
@@ -358,6 +318,8 @@ rewrite ger_powR//.
358318
apply/andP; split=>//.
359319
Qed.
360320

321+
Local Open Scope convex_scope.
322+
361323
Lemma convex_powR (t : {i01 R}) (x y : R^o) p : (1 <= p)%R ->
362324
(0 <= x)%R -> (0 <= y)%R ->
363325
((x <| t |> y) `^ p <= (x `^ p : R^o) <| t |> y `^ p)%R.
@@ -402,7 +364,7 @@ apply: (le_trans (y:=(w1 *: (x `^ p : R^o) + w2 *: (y `^ p : R^o)) `^ (p^-1) * (
402364
pose b1 := (w1 `^ (q^-1))%R.
403365
pose b2 := (w2 `^ (q^-1))%R.
404366
have : (a1 * b1 + a2 * b2 <= (a1 `^ p + a2 `^ p)`^(p^-1) * (b1 `^ q + b2 `^ q)`^(q^-1))%R.
405-
apply hoelder_sum2 => //.
367+
apply hoelder2 => //.
406368
- by rewrite /a1 mulr_ge0// powR_ge0.
407369
- by rewrite /a2 mulr_ge0// powR_ge0.
408370
- by rewrite /b1 powR_ge0.

0 commit comments

Comments
 (0)