Skip to content

Commit 8df0315

Browse files
mkerjeanaffeldt-aist
authored andcommitted
wip bornology
1 parent f399342 commit 8df0315

1 file changed

Lines changed: 69 additions & 17 deletions

File tree

theories/tvs.v

Lines changed: 69 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -982,20 +982,13 @@ End test.
982982
(* TODO : define bornology and topology of uniform convergence, show it's a
983983
tvstype *)
984984
(* Not used in the following *)
985-
(* Class Bornology {T : Type} (B : set_system T) := { *)
986-
(* bornoC : forall x, exists b, (B b) /\ (b x) ; *)
987-
(* bornoU : forall P Q : set T, B P -> B Q -> B (P `|` Q) ; *)
988-
(* bornoS : forall P Q : set T, P `<=` Q -> B Q -> B P *)
989-
(* }. *)
990-
991-
(* Global Hint Mode Bornology - ! : typeclass_instances. *)
992985

993986
(* (*why with typeclasses and not with HB ? *) *)
994987

995988
(*What follows is adapted from {family fam, U -> V} in
996989
function_space.v. Should we copy instances from family fam to family_lcfun fam ? *)
997-
Definition uniform_lcfun_family R {E : ctvsType R} (F : ctvsType R) (fam : set E -> Prop) : Type :=
998-
{linear_continuous E -> F}.
990+
Definition uniform_lcfun_family R {E : ctvsType R} (F : ctvsType R) (fam : set E -> Prop) : Type :=
991+
{linear_continuous E -> F}.
999992

1000993
(* Reserved Notation "'{' 'family_lcfun' fam , U '->' V '|' s '}'" *)
1001994
(* (at level 0, U at level 98, V at level 99, *)
@@ -1019,21 +1012,79 @@ Notation "{ 'family_lcfun' fam , F --> f }" :=
10191012

10201013
(* we can´t use unfiorm, it is defined on E -> F and not on our space. We need to define it on {linear_continuous E -> F} , inducing its topology from uniform` E- > F *)
10211014

1022-
Locate sup_topology.
1023-
Search (continuousType _ _). Locate continuousEP.
1024-
10251015

10261016
(*md
10271017
Define bounded
1028-
Define bornology
1018+
TODO generalize bounded_fun_norm in sequence.v
1019+
Define bornology and bounded function - prove continuous -> bounded
1020+
Generalize bounded_near in normedtype.v
10291021
Define uniform convergence on bornology
10301022
Prove continuous embedding into topologies already defined on spaces of functions.
1031-
*)
10321023
1033-
(*First lemma to formalize : Prop 1 in 2.10 Jarchow *)
1024+
Pour E_{sigma} : utiliser des tags, ie des identité annotées
1025+
*)
1026+
1027+
1028+
Reserved Notation "'{' 'linear_continuous_' B , U '->' V '}'"
1029+
(at level 0, U at level 98, V at level 99,
1030+
format "{ 'linear_continuous_' B , U -> V }").
1031+
Reserved Notation "'{' 'linear_continuous_' B , F '-->' f '}'"
1032+
(at level 0, F at level 98, f at level 99,
1033+
format "{ 'linear_continuous_' B , F --> f }").
1034+
1035+
1036+
Definition bounded (R : numFieldType) (E : ctvsType R) (b : set E) := forall (V : set E), (nbhs 0 V -> exists r, b `<=` ((fun x => r *: x )@` V)).
1037+
1038+
Notation "{ 'linear_continuous_' fam , U -> V }" := (@uniform_lcfun_family _ U V fam).
1039+
Notation "{ 'linear_continuous_' fam , F --> f }" :=
1040+
(cvg_to F (@nbhs _ {linear_continuous_ fam, _ -> _ } f)) : type_scope.
1041+
1042+
Definition nbhs_lineartopology (R : numFieldType) (E : ctvsType R) (F : ctvsType R) b U :=
1043+
[set f : {linear_continuous E -> F}| f @` b `<=` U ].
1044+
1045+
1046+
HB.mixin Record isBornology (R : numFieldType) (E : ctvsType R) (B : set_system E) := {
1047+
bornoC : forall x, exists b, (B b) /\ (b x) ;
1048+
bornoS : forall P Q : set E, P `<=` Q -> B Q -> B P;
1049+
bornoI : forall P Q : set E, B P -> B Q -> B (P `&` Q); (*wikipedia*)
1050+
(* bornoZ : forall r : R, forall Q : set E, B Q -> exists P, (B P /\ (((fun x => r *: x )@`Q `<=` P))) (*why ??*) In Jarchow*)
1051+
}.
1052+
1053+
#[short(type="bornologyType")]
1054+
HB.structure Definition Bornology R E := {B of @isBornology R E B}.
1055+
1056+
(*
1057+
Pointed Type on linear_continuous, filteredtype, nbhsType, topologicaltype
1058+
1059+
*)
1060+
1061+
(* Reco Cyril: copier / généraliser les defs de function_space.v, puis montrer que la prebase c ést nbhs_lineartopology. Compliqué parce que
1062+
Notation "{ 'uniform`' A -> V }" := (@uniform_fun _ A V) : type_scope.
1063+
ne se généralise pas facilement en
1064+
Notation "{ 'linear_continuous` `' A -> V }" := (linear_continuous A -> V) : type_scope.
1065+
1066+
(* HB.instance Definition _ {R} {U V : tvsType R} (fam : set U -> Prop) := *)
1067+
(* Uniform.copy {family_lcfun fam, U -> V} (sup_topology (fun k : sigT fam => *)
1068+
(* Uniform.class {uniform` projT1 k -> V})). *)
1069+
1070+
(* HB.factory Record UniformLinCont_isTvs (R : numDomainType) (E : tvsType R) (F : tvsType R) (B : set_system E) of Topological {family_lcfun B , E -> F} & GRing.Lmodule {linear_continuous E -> F } := { *)
1071+
(* bornoC : forall x : E, exists b : set E, (B b) /\ (b x) ; *)
1072+
(* bornoU : forall P Q : set E, B P -> B Q -> B (P `|` Q) ; *)
1073+
(* bornoS : forall P Q : set E, P `<=` Q -> B Q -> B P *)
1074+
(* }. *)
1075+
1076+
(* HB.builders Context R E F B of UniformLinCont_isTvs R E F B. *)
1077+
1078+
1079+
1080+
1081+
(*First lemmas to formalize :
1082+
- Prop 1 in 2.10 Jarchow (* W is a 0-basis for a linear topology 3~aonG iff 38 consists ofG-bounded
1083+
sets only. In that case, if F is Hausdorff and 38 covers X, then J~a is Hausdorf *)
1084+
- Prop 2 in 8.4 Jarchow
1085+
1086+
Then define notations and prove compatibility with function_spaces.v notations*)
10341087
1035-
(* W is a 0-basis for a linear topology 3~aonG iff 38 consists ofG-bounded
1036-
sets only. In that case, if F is Hausdorff and 38 covers X, then J~a is Hausdorff*)
10371088
10381089
(** examples **)
10391090
(* HB.instance Definition _ (U : Type) (T : U -> topologicalType) := *)
@@ -1087,3 +1138,4 @@ Check (E)'.
10871138
Notation " E ''' ":= {linear_continuous E -> R^o} (at level 80).
10881139
10891140
End dual.
1141+
*)

0 commit comments

Comments
 (0)