coercion bs2_of_bss2 nocomposites.
-(*
-lemma xxx :
- ∀O,s,x.bs2_of_bss2 (ordered_set_OF_ordered_uniform_space O) s x
- =
- x.
-intros; reflexivity;
-*)
+
+lemma a2sa :
+ ∀O:ordered_uniform_space.∀s:‡(ordered_set_OF_ordered_uniform_space O).
+ ∀x:
+ bs_carr
+ (square_bishop_set
+ (bishop_set_of_ordered_set
+ (segment_ordered_set
+ (ordered_set_OF_ordered_uniform_space O) s))).
+ (\fst x) ≈ (\snd x) →
+ (\fst (bs2_of_bss2 (ordered_set_OF_ordered_uniform_space O) s x))
+ ≈
+ (\snd (bs2_of_bss2 (ordered_set_OF_ordered_uniform_space O) s x)).
+intros 3; cases x (a b); clear x; cases a (x Hx); cases b (y Hy); clear a b;
+simplify; intros 2 (K H); apply K; clear K; whd; whd in H; cases H;
+[left|right] apply x2sx; assumption;
+qed.
+
lemma segment_ordered_uniform_space:
∀O:ordered_uniform_space.∀s:‡O.ordered_uniform_space.
apply (mk_uniform_space (bishop_set_of_ordered_set {[s]}) f);
[1: intros (U H); intro x; simplify;
cases H (w Hw); cases Hw (Gw Hwp); clear H Hw; intro Hm;
- lapply (us_phi1 O w Gw x) as IH;[2:intro;apply Hm;cases H; clear H;
- [left;apply (x2sx ? s (\fst x) (\snd x) H1);
- |right;apply (x2sx ? s ?? H1);]
-
+ lapply (us_phi1 O w Gw x (a2sa ??? Hm)) as IH;
apply (restrict ? s ??? Hwp IH);
|2: intros (U V HU HV); cases HU (u Hu); cases HV (v Hv); clear HU HV;
cases Hu (Gu HuU); cases Hv (Gv HvV); clear Hu Hv;
cases (us_phi2 O u v Gu Gv) (w HW); cases HW (Gw Hw); clear HW;
- exists; [apply (λb:{[l,r]} squareB.w b)] split;
+ exists; [apply (λb:{[s]} squareB.w b)] split;
[1: unfold f; simplify; clearbody f;
exists; [apply w]; split; [assumption] intro b; simplify;
unfold segment_square_of_ordered_set_square;
cases b; intros; split; intros; assumption;
|2: intros 2 (x Hx); cases (Hw ? Hx); split;
- [apply (restrict O l r ??? HuU H)|apply (restrict O l r ??? HvV H1);]]
+ [apply (restrict O s ??? HuU H)|apply (restrict O s ??? HvV H1);]]
|3: intros (U Hu); cases Hu (u HU); cases HU (Gu HuU); clear Hu HU;
cases (us_phi3 O u Gu) (w HW); cases HW (Gw Hwu); clear HW;
- exists; [apply (λx:{[l,r]} squareB.w x)] split;
+ exists; [apply (λx:{[s]} squareB.w x)] split;
[1: exists;[apply w];split;[assumption] intros; simplify; intro;
unfold segment_square_of_ordered_set_square;
cases b; intros; split; intro; assumption;
- |2: intros 2 (x Hx); apply (restrict O l r ??? HuU); apply Hwu;
+ |2: intros 2 (x Hx); apply (restrict O s ??? HuU); apply Hwu;
cases Hx (m Hm); exists[apply (\fst m)] apply Hm;]
|4: intros (U HU x); cases HU (u Hu); cases Hu (Gu HuU); clear HU Hu;
cases (us_phi4 O u Gu x) (Hul Hur);
split; intros;
- [1: lapply (invert_restriction_agreement O l r ?? HuU) as Ra;
- apply (restrict O l r ?? x Ra);
- apply Hul; apply (unrestrict O l r ??? HuU H);
- |2: apply (restrict O l r ??? HuU); apply Hur;
- apply (unrestrict O l r ??? (invert_restriction_agreement O l r ?? HuU) H);]]
+ [1: lapply (invert_restriction_agreement O s ?? HuU) as Ra;
+ apply (restrict O s ?? x Ra);
+ apply Hul; apply (unrestrict O s ??? HuU H);
+ |2: apply (restrict O s ??? HuU); apply Hur;
+ apply (unrestrict O s ??? (invert_restriction_agreement O s ?? HuU) H);]]
|2: simplify; reflexivity;]
|2: simplify; unfold convex; intros;
cases H (u HU); cases HU (Gu HuU); clear HU H;
+
+lemma ls2l:
+ ∀O:ordered_set.∀s:‡O.∀x,y:os_l (square_ordered_set (segment_ordered_set O s)).
+ le (os_l (square_ordered_set (segment_ordered_set O s))) x y →
+ \fst x ≤ \fst y.
+intros 4; cases x (a1 a2); cases y (b1 b2); clear x y;
+intros 2 (H K); apply H; clear H;
+simplify in K:(? ? ? %);
+simplify in K:(? ? % ?);
+whd in ⊢ (? (? (% ?)) ? ?);
+whd in ⊢ (? (? ((λ_:?.? ? ? (? ? (? (% ?)))) ?)) ? ?);
+simplify;
+whd in K:(% ? ? ?);
+simplify in K:(%);
+whd in ⊢ (? (% ?) ? ? ? ?);
+simplify in ⊢ (? (% ?) ? ? ? ?);
+simplify in ⊢ (? % ? ? ? ?);
+simplify in ⊢ (%);
+cases (wloss_prop (os_l (segment_ordered_set O s)));
+rewrite <H in K ⊢ %;
+whd in ⊢ (? % ? ?);
+simplify in ⊢ (%);
+unfold hos_excess; do 2 rewrite <H;
+
+SQUARE SEEMS NOT DUAL!
+
+cases a1 (a _); cases a2 (b _);
+cases b1 (c _); cases b2 (d _); clear a1 a2 b1 b2; simplify;
+intros 2 (H K); apply H; clear H; apply K;
+
lapply (ous_convex ?? Gu p ? H2 y H3) as Cu;
- [1: apply (unrestrict O l r ??? HuU); apply H1;
- |2: apply (restrict O l r ??? HuU Cu);]]
+ [1: apply (unrestrict O s ??? HuU); apply H1;
+ |2: apply (restrict O s ??? HuU Cu);]]
qed.
interpretation "Ordered uniform space segment" 'segment_set a b =