X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fcontribs%2Fformal_topology%2Foverlap%2Fo-concrete_spaces.ma;h=633f0b89e01591db6d5c73c75800fa608ed50385;hb=5fc511bf7be55ad8f545f5b08b0833f80ecca07b;hp=cbdf68fdd99c93c3620ee020e63e28a15bea8ef2;hpb=69b80b957c8b836309bed93cfd031761e0dc2b43;p=helm.git diff --git a/helm/software/matita/contribs/formal_topology/overlap/o-concrete_spaces.ma b/helm/software/matita/contribs/formal_topology/overlap/o-concrete_spaces.ma index cbdf68fdd..633f0b89e 100644 --- a/helm/software/matita/contribs/formal_topology/overlap/o-concrete_spaces.ma +++ b/helm/software/matita/contribs/formal_topology/overlap/o-concrete_spaces.ma @@ -17,34 +17,37 @@ include "o-saturations.ma". notation "□ \sub b" non associative with precedence 90 for @{'box $b}. notation > "□_term 90 b" non associative with precedence 90 for @{'box $b}. -interpretation "Universal image ⊩⎻*" 'box x = (or_f_minus_star _ _ (rel x)). +interpretation "Universal image ⊩⎻*" 'box x = (fun_1 _ _ (or_f_minus_star _ _) (rel x)). notation "◊ \sub b" non associative with precedence 90 for @{'diamond $b}. notation > "◊_term 90 b" non associative with precedence 90 for @{'diamond $b}. -interpretation "Existential image ⊩" 'diamond x = (or_f _ _ (rel x)). +interpretation "Existential image ⊩" 'diamond x = (fun_1 _ _ (or_f _ _) (rel x)). notation "'Rest' \sub b" non associative with precedence 90 for @{'rest $b}. notation > "'Rest'⎽term 90 b" non associative with precedence 90 for @{'rest $b}. -interpretation "Universal pre-image ⊩*" 'rest x = (or_f_star _ _ (rel x)). +interpretation "Universal pre-image ⊩*" 'rest x = (fun_1 _ _ (or_f_star _ _) (rel x)). notation "'Ext' \sub b" non associative with precedence 90 for @{'ext $b}. notation > "'Ext'⎽term 90 b" non associative with precedence 90 for @{'ext $b}. -interpretation "Existential pre-image ⊩⎻" 'ext x = (or_f_minus _ _ (rel x)). +interpretation "Existential pre-image ⊩⎻" 'ext x = (fun_1 _ _ (or_f_minus _ _) (rel x)). + +lemma hint : ∀p,q.arrows1 OA p q → ORelation_setoid p q. +intros; assumption; +qed. + +coercion hint nocomposites. definition A : ∀b:BP. unary_morphism (oa_P (form b)) (oa_P (form b)). intros; constructor 1; [ apply (λx.□_b (Ext⎽b x)); - | do 2 unfold FunClass_1_OF_carr1; intros; apply (†(†H));] + | do 2 unfold uncurry_arrows; intros; apply (†(†H));] qed. lemma xxx : ∀x.carr x → carr1 (setoid1_of_setoid x). intros; assumption; qed. -coercion xxx. +coercion xxx nocomposites. -definition d_p_i : - ∀S,I:SET.∀d:unary_morphism S S.∀p:arrows1 SET I S.arrows1 SET I S. -intros; constructor 1; - [ apply (λi:I. u (c i)); - | unfold FunClass_1_OF_carr1; intros; apply (†(†H));]. +lemma down_p : ∀S,I:SET.∀u:S⇒S.∀c:arrows1 SET I S.∀a:I.∀a':I.a=a'→u (c a)=u (c a'). +intros; unfold uncurry_arrows; apply (†(†H)); qed. alias symbol "eq" = "setoid eq". @@ -58,12 +61,13 @@ record concrete_space : Type ≝ (Ext⎽bp q1 ∧ (Ext⎽bp q2)) = (Ext⎽bp ((downarrow q1) ∧ (downarrow q2))); all_covered: Ext⎽bp (oa_one (form bp)) = oa_one (concr bp); il2: ∀I:SET.∀p:arrows1 SET I (oa_P (form bp)). - downarrow (oa_join ? I (d_p_i ?? downarrow p)) = - oa_join ? I (d_p_i ?? downarrow p); + downarrow (∨ { x ∈ I | downarrow (p x) | down_p ???? }) = + ∨ { x ∈ I | downarrow (p x) | down_p ???? }; il1: ∀q.downarrow (A ? q) = A ? q }. -interpretation "o-concrete space downarrow" 'downarrow x = (fun_1 __ (downarrow _) x). +interpretation "o-concrete space downarrow" 'downarrow x = + (fun_1 __ (downarrow _) x). definition bp': concrete_space → basic_pair ≝ λc.bp c. coercion bp'.