X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fcontribs%2Fformal_topology%2Foverlap%2Fsubsets.ma;h=e6d1872166143e9f891ee27e89305a8cc0d5c658;hb=b1dbb34e1e2388a3987710e128e6f19b7d8fe5fc;hp=41e29a4fb8ff756dd0ea0f00620d5a39b1fcd063;hpb=a99fe3ca5a39b4d9754b69863b5f9fb0f91ed286;p=helm.git diff --git a/helm/software/matita/contribs/formal_topology/overlap/subsets.ma b/helm/software/matita/contribs/formal_topology/overlap/subsets.ma index 41e29a4fb..e6d187216 100644 --- a/helm/software/matita/contribs/formal_topology/overlap/subsets.ma +++ b/helm/software/matita/contribs/formal_topology/overlap/subsets.ma @@ -90,10 +90,10 @@ definition overlaps: ∀A. binary_morphism1 (Ω \sup A) (Ω \sup A) CPROP. [ apply (λA:objs1 SET.λU,V:Ω \sup A.(exT2 ? (λx:A.?(*x*) ∈ U) (λx:A.?(*x*) ∈ V) : CProp0)) | intros; constructor 1; intro; cases e2; exists; [1,4: apply w] - [ apply (. #‡e); assumption - | apply (. #‡e1); assumption - | apply (. #‡(e \sup -1)); assumption; - | apply (. #‡(e1 \sup -1)); assumption]] + [ apply (. #‡e^-1); assumption + | apply (. #‡e1^-1); assumption + | apply (. #‡e); assumption; + | apply (. #‡e1); assumption]] qed. interpretation "overlaps" 'overlaps U V = (fun21 ___ (overlaps _) U V). @@ -106,8 +106,8 @@ definition intersects: intros; simplify; apply (.= (e‡#)‡(e‡#)); apply refl1; | intros; split; intros 2; simplify in f ⊢ %; - [ apply (. (#‡e)‡(#‡e1)); assumption - | apply (. (#‡(e \sup -1))‡(#‡(e1 \sup -1))); assumption]] + [ apply (. (#‡e^-1)‡(#‡e1^-1)); assumption + | apply (. (#‡e)‡(#‡e1)); assumption]] qed. interpretation "intersects" 'intersects U V = (fun21 ___ (intersects _) U V). @@ -120,8 +120,8 @@ definition union: intros; simplify; apply (.= (e‡#)‡(e‡#)); apply refl1 | intros; split; intros 2; simplify in f ⊢ %; - [ apply (. (#‡e)‡(#‡e1)); assumption - | apply (. (#‡(e \sup -1))‡(#‡(e1 \sup -1))); assumption]] + [ apply (. (#‡e^-1)‡(#‡e1^-1)); assumption + | apply (. (#‡e)‡(#‡e1)); assumption]] qed. interpretation "union" 'union U V = (fun21 ___ (union _) U V). @@ -145,67 +145,23 @@ definition big_intersects: ∀A:SET.∀I:SET.unary_morphism2 (setoid1_of_setoid I ⇒ Ω \sup A) (setoid2_of_setoid1 (Ω \sup A)). intros; constructor 1; [ intro; whd; whd in I; - apply ({x | ∀i:I. x ∈ t i}); - simplify; intros; split; intros; [ apply (. (e‡#)); | apply (. (e \sup -1‡#)); ] + apply ({x | ∀i:I. x ∈ c i}); + simplify; intros; split; intros; [ apply (. (e^-1‡#)); | apply (. e‡#); ] apply f; | intros; split; intros 2; simplify in f ⊢ %; intro; - [ apply (. (#‡(e i))); apply f; - | apply (. (#‡(e i)\sup -1)); apply f]] + [ apply (. (#‡(e i)^-1)); apply f; + | apply (. (#‡e i)); apply f]] qed. definition big_union: ∀A:SET.∀I:SET.unary_morphism2 (setoid1_of_setoid I ⇒ Ω \sup A) (setoid2_of_setoid1 (Ω \sup A)). intros; constructor 1; [ intro; whd; whd in A; whd in I; - apply ({x | ∃i:carr I. x ∈ t i }); + apply ({x | ∃i:I. x ∈ c i }); simplify; intros; split; intros; cases e1; clear e1; exists; [1,3:apply w] - [ apply (. (e‡#)); | apply (. (e \sup -1‡#)); ] + [ apply (. (e^-1‡#)); | apply (. (e‡#)); ] apply x; | intros; split; intros 2; simplify in f ⊢ %; cases f; clear f; exists; [1,3:apply w] - [ apply (. (#‡(e w))); apply x; - | apply (. (#‡(e w)\sup -1)); apply x]] -qed. - -(* incluso prima non funziona piu' nulla *) -include "o-algebra.ma". - -definition SUBSETS: objs1 SET → OAlgebra. - intro A; constructor 1; - [ apply (Ω \sup A); - | apply subseteq; - | apply overlaps; - | apply big_intersects; - | apply big_union; - | apply ({x | True}); - simplify; intros; apply (refl1 ? (eq1 CPROP)); - | apply ({x | False}); - simplify; intros; apply (refl1 ? (eq1 CPROP)); - | intros; whd; intros; assumption - | intros; whd; split; assumption - | intros; apply transitive_subseteq_operator; [2: apply f; | skip | assumption] - | intros; cases f; exists [apply w] assumption - | intros; intros 2; apply (f ? f1 i); - | intros; intros 2; apply f; - (* senza questa change, universe inconsistency *) - whd; change in ⊢ (? ? (λ_:%.?)) with (carr I); - exists; [apply i] assumption; - | intros 3; cases f; - | intros 3; constructor 1; - | intros; cases f; exists; [apply w] - [ assumption - | whd; intros; cases i; simplify; assumption] - | intros; split; intro; - [ cases f; cases x1; - (* senza questa change, universe inconsistency *) - change in ⊢ (? ? (λ_:%.?)) with (carr I); - exists [apply w1] exists [apply w] assumption; - | cases e; cases x; exists; [apply w1] - [ assumption - | (* senza questa change, universe inconsistency *) - whd; change in ⊢ (? ? (λ_:%.?)) with (carr I); - exists; [apply w] assumption]] - | intros; intros 2; cases (f (singleton ? a) ?); - [ exists; [apply a] [assumption | change with (a = a); apply refl1;] - | change in x1 with (a = w); change with (mem A a q); apply (. (x1 \sup -1‡#)); - assumption]] + [ apply (. (#‡(e w)^-1)); apply x; + | apply (. (#‡e w)); apply x]] qed.