]> matita.cs.unibo.it Git - helm.git/commitdiff
formal_map now defined
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Tue, 16 Sep 2008 19:55:56 +0000 (19:55 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Tue, 16 Sep 2008 19:55:56 +0000 (19:55 +0000)
helm/software/matita/library/datatypes/subsets.ma
helm/software/matita/library/formal_topology/formal_topologies.ma

index 5483dfa37f1fd648a38eca5727cd9cb9d05cc134..d6bcf4ddacf24944eb92fca355993a8266565c38 100644 (file)
@@ -116,12 +116,15 @@ qed.
 
 interpretation "union" 'union U V = (fun1 ___ (union _) U V).
 
-definition singleton: ∀A:setoid. A → Ω \sup A.
- apply (λA:setoid.λa:A.{b | a=b});
- intros; simplify;
- split; intro;
- apply (.= H1);
-  [ apply H | apply (H \sup -1) ]
+definition singleton: ∀A:setoid. unary_morphism A (Ω \sup A).
+ intros; constructor 1;
+  [ apply (λA:setoid.λa:A.{b | a=b});
+    intros; simplify;
+    split; intro;
+    apply (.= H1);
+     [ apply H | apply (H \sup -1) ]
+  | intros; split; intros 2; simplify in f ⊢ %; apply trans;
+     [ apply a |4: apply a'] try assumption; apply sym; assumption]
 qed.
 
-interpretation "singleton" 'singl a = (singleton _ a).
+interpretation "singleton" 'singl a = (fun_1 __ (singleton _) a).
\ No newline at end of file
index e29ba16f7dd1f156c2480d74ea8a0583f80a7e0d..2acb5642d736b940033b7d6bc3421424879cc748 100644 (file)
@@ -24,7 +24,7 @@ coercion btop_carr'.
 
 definition downarrow: ∀S:BTop. unary_morphism (Ω \sup S) (Ω \sup S).
  intros; constructor 1;
-  [ apply (λU:Ω \sup S.{a | ∃b. b ∈ U ∧ a ∈ A ? (singleton ? b)});
+  [ apply (λU:Ω \sup S.{a | ∃b:carrbt S. b ∈ U ∧ a ∈ A ? (singleton ? b)});
     intros; simplify; split; intro; cases H1; cases x; exists [1,3: apply w]
     split; try assumption; [ apply (. H‡#) | apply (. H \sup -1‡#) ] assumption
   | intros; split; intros 2; cases f; exists; [1,3: apply w] cases x; split;
@@ -41,7 +41,25 @@ qed.
 
 interpretation "ffintersects" 'fintersects U V = (fun1 ___ (ffintersects _) U V).
 
-record formal_topology : Type ≝
+record formal_topology: Type ≝
  { bt:> BTop;
    converges: ∀U,V: Ω \sup bt. A ? (U ↓ V) = A ? U ∩ A ? V
+ }.
+
+definition bt': formal_topology → basic_topology ≝ λo:formal_topology.bt o.
+
+coercion bt'.
+
+definition ffintersects': ∀S:BTop. binary_morphism1 S S (Ω \sup S).
+ intros; constructor 1;
+  [ apply (λb,c:S. (singleton S b) ↓ (singleton S c));
+  | intros; apply (.= (†H)‡(†H1)); apply refl1]
+qed.
+
+interpretation "ffintersects'" 'fintersects U V = (fun1 ___ (ffintersects' _) U V).
+
+record formal_map (S,T: formal_topology) : Type ≝
+ { cr:> continuous_relation S T;
+   C1: ∀b,c. extS ?? cr (b ↓ c) = (ext ?? cr b) ↓ (ext ?? cr c);
+   C2: extS ?? cr T = S
  }.
\ No newline at end of file