@@ -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
391391Section HBGeom.
392392
393393Variable (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
403398Theorem 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)).
408401Proof .
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