Skip to content

Commit 542a778

Browse files
committed
wip subnormed
1 parent 4060814 commit 542a778

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

theories/hahn_banach_theorem.v

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@ Import Lingraph.
343343

344344
Variables (R : realType) (V : lmodType R) (F : pred V).
345345

346-
Variables (F' : subLmodType F) (f : {linear F' -> R}) (p : V -> R).
346+
Variables (F' : subLmodType F) (f : {linear F -> R}) (p : V -> R).
347347

348348

349349
(* MathComp seems to lack of an interface for submodules of V, so for now
@@ -378,35 +378,28 @@ End HahnBanach.
378378

379379

380380
(* To add once this is rebased over linear_continuous *)
381-
(* Section Substructures. *)
382-
(* Context (R: numFieldType) (V : normedModType R). *)
383-
(* Variable (A : pred V). *)
381+
Section Substructures.
382+
Context (R: numFieldType) (V : normedModType R).
383+
Variable (A : pred V).
384384

385-
(* HB.instance Definition _ := NormedModule.on (subspace A). *)
385+
HB.instance Definition _ := NormedModule.on (subspace A).
386386

387-
(* Check {linear_continuous (subspace A) -> R^o}. *)
387+
Check {linear_continuous (subspace A) -> R^o}.
388388

389-
(* End Substructures. *)
389+
End Substructures.
390390

391391
Section HBGeom.
392392

393393
Variable (R : realType) (V : normedModType R) (F : pred V)
394-
(F' : subLmodType F) (f : {linear F' -> R}).
394+
(f : {linear_continuous (subspace F) -> R}).
395395

396-
(* once this is rebased over linear_continuous
397-
Variable (R : realType) (V : normedModType R) (F : pred V)
398-
(f : {linear_continuous (subspace F) -> R}).
399-
*)
400-
401-
Let setF := [set x : V | exists (z : F'), val z = x].
396+
(* Let setF := [set x : V | exists (z : F'), val z = x]. *)
402397

403398
Theorem HB_geom_normed :
404-
exists r , (r > 0 ) /\ (forall (z : F'), (`|f z| ) <= `|(val z)| * r)) ->
405-
(* hypothesis to delete once this is rebased over linear_continuous
406-
and obtain through continuous_linear_bounded *)
399+
(* exists r , (r > 0 ) /\ (forall (z : F'), (`|f z| ) <= `|(val z)| * r)) -> *)
407400
exists g: {linear_continuous V -> R}, (forall x : V, F x -> (g x = f x)).
408401
Proof.
409-
move=> [r [ltr0 fxrx]].
402+
have [r [ltr0 fxrx]] : exists2 r , (r > 0 ) & (forall z, `|f z| <= `| z| * r). admit.
410403
pose p:= fun x : V => `|x|*r.
411404
have convp: (@convex_function _ _ [set: V] p).
412405
rewrite /convex_function /conv => l v1 v2 _ _ /=.
@@ -419,7 +412,7 @@ Proof.
419412
have -> : `|l%:num| = l%:num by apply/normr_idP.
420413
have -> : `|(l%:num).~| = (l%:num).~ by apply/normr_idP; apply: onem_ge0.
421414
by rewrite !mulrA.
422-
have majfp : forall z : F', f z <= p (\val z).
415+
have majfp : forall z, f z <= p ( z).
423416
move => z; rewrite /(p _) ; apply : le_trans; last by [].
424417
by apply : ler_norm.
425418
move: (HahnBanach convp majfp) => [ g [majgp F_eqgf] ] {majfp}.

0 commit comments

Comments
 (0)