Skip to content

Commit e743b1e

Browse files
committed
missing join ?
1 parent 09a318c commit e743b1e

1 file changed

Lines changed: 14 additions & 39 deletions

File tree

theories/hahn_banach_theorem.v

Lines changed: 14 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -222,48 +222,23 @@ split.
222222
apply: open_comp; first by move => x _ ;apply: continuous_valE.
223223
by apply: openB.
224224
(* the following should be simpler *)
225-
move=> /= x A nxA.
226-
pose t:= nxA.
227-
move: t => -[] /= /= b; rewrite /wopen => -[] /= [] c openc cA bx bA.
228-
have H: nbhs (val x) (val @` A). rewrite nbhsE /=.
229-
exists (val @` (b: set topU)); last by move => z //= [] z0 bz valz; exists z0; first by apply: bA.
230-
split => //=; last by exists x. have ob: open (b : set topU). (*should be true as val_continuous*) admit.
231-
Fail apply: (@initial_subspace_open V ( (initial_topology \val)) (\val) b ob). (*why ??*) admit.
225+
move=> /= x A [] /= /= b; rewrite /wopen => -[] /= [] c openc cA bx bA.
226+
have H: nbhs (val x) (val @` A).
227+
rewrite nbhsE /=; exists (val @` (b: set topU)); last first.
228+
by move => z //= [] z0 bz valz; exists z0; first by apply: bA.
229+
split => //=; last by exists x.
230+
have ob: open (b : set topU) by rewrite /open /= /wopen; exists c.
231+
move: (@initial_subspace_open V ( (initial_topology \val)) (\val) b ob).
232+
Fail exact.
233+
Set Printing Implicit.
234+
(*why ?? Set Printing Implicit shows that intermediate instances might be missing *)
235+
admit.
232236
move: (genB (\val x) _ H).
233-
rewrite /filter_from /=.
234-
move => [] d [] Bd dx dC /=.
237+
rewrite /filter_from /= => - [] d [] Bd dx dC /=.
235238
exists (\val @^-1` d); last by move => y /= Cy; move: (dC (\val y) Cy) => /= [] t + /val_inj <-.
236-
split => //=.
237-
suff -> : [set \val (x : topU) | x in \val @^-1` d] = d by [].
239+
split => //=;suff -> : [set \val (x : topU) | x in \val @^-1` d] = d by [].
238240
rewrite eqEsubset; split => y; first by move=> [z + <-].
239-
move=> dy /=.
240-
by move: (dC y dy) => /= [] t At valt; exists t; rewrite valt.
241-
242-
(*exists [set a | B(\val @` a)].
243-
move=> /= a; rewrite inE /=; rewrite -inE => H /= r s l ra sa.
244-
suff : \val(r <|l|> s) \in \val @` a by rewrite !inE /= => -[] x ax /val_inj <-.
245-
have valr : \val r \in \val @` a by rewrite inE => /=; exists r; first by rewrite -inE.
246-
have vals : \val s \in \val @` a by rewrite inE => /=; exists s; first by rewrite -inE.
247-
move: (convexB (\val @` a) H (\val r) (\val s) l valr vals) => /=.
248-
by rewrite !GRing.valD !GRing.valZ //.
249-
split.
250-
move => A /= H.
251-
have -> : A = \val @^-1`(\val @` A ).
252-
apply/seteqP; split => x /=; first by exists x.
253-
by move => -[y Ay] /val_inj <-.
254-
apply: open_comp; first by move => x _ ;apply: continuous_valE.
255-
by apply: openB.
256-
(* the following should be simpler *)
257-
move=> /= x A [] A' []; rewrite /wopen => -[]/= C openC CA Ax AA'.
258-
have H : nbhs (\val x) C by rewrite nbhsE /=; exists C =>//; split => //=; move: Ax; rewrite -CA /=.
259-
move: (genB (\val x) C H); rewrite /filter_from /=.
260-
move => [] c [] Bc cx cC /=.
261-
exists (\val @^-1` c); last by move => y Cy; apply: AA'; rewrite -CA /=; apply:cC.
262-
split => //=.
263-
suff -> : [set \val x | x in \val @^-1` c] = c by [].
264-
move=> P T /=; rewrite eqEsubset; split => y; first by move=> [z + <-].
265-
move=> cy /=.*)
266-
(*nope*)
241+
by move=> dy /=; move: (dC y dy) => /= [] t At valt; exists t; rewrite valt.
267242
Admitted.
268243

269244
HB.instance Definition _ := @Uniform_isConvexTvs.Build R topU locally_convex_sub.

0 commit comments

Comments
 (0)