]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/nlibrary/topology/cantor.ma
more theory for lists
[helm.git] / helm / software / matita / nlibrary / topology / cantor.ma
index e7f9a5a15bed6ccbf0709169558c16a2497ff0dc..6a79dd2d808df2478f6a4ad25568e41e1eb68894 100644 (file)
@@ -1,4 +1,16 @@
-
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
 
 include "topology/igft.ma".
 
@@ -29,7 +41,7 @@ ntheorem th2_3 :
   ∀A:Ax.∀a:A. a ◃ ∅ → ∃i. ¬ a ∈ 𝐂 a i.
 #A; #a; #H; nelim H;
 ##[ #n; *;
-##| #b; #i_star; #IH1; #IH2; ncases (EM … b i_star); /2/;
+##| #b; #i_star; #IH1; #IH2; ncases (EM … b i_star); /3/;
 ##] 
 nqed.
 
@@ -66,21 +78,21 @@ alias id "S" = "cic:/matita/ng/topology/igft/S.fix(0,0,1)".
 unification hint 0 ≔ ;
          x ≟ axs  
   (* -------------- *) ⊢
-         S x ≡ A. 
-
+         S (uax x) ≡ A. (* XXX: bug coercions/ disamb multipasso che ne fa 1 solo*) 
 
 ntheorem col2_4 :
-  ∀A:uAx.∀a:A. a ◃ ∅ → ¬ a ∈ 𝐂 a one. 
+  ∀A:uAx.∀a:uax A. a ◃ ∅ → ¬ a ∈ 𝐂 a one.
 #A; #a; #H; nelim H;
 ##[ #n; *;
-##| #b; #i_star; #IH1; #IH2; #H3; nlapply (IH2 … H3); //;
-##] 
+##| #b; #i_star; #IH1; #IH2; #H3; nlapply (IH2 … H3); /2/;
+##]
 nqed.
 
-ndefinition Z : Ω^axs ≝ { x | x ◃ ∅ }.
+(* bug interpretazione non aggiunta per ∅ *)
+ndefinition Z : Ω^axs ≝ { x | x ◃ (emptyset ?) }.
 
 ntheorem cover_monotone: ∀A:Ax.∀a:A.∀U,V.U ⊆ V → a ◃ U → a ◃ V.
-#A; #a; #U; #V; #HUV; #H; nelim H; //; 
+#A; #a; #U; #V; #HUV; #H; nelim H; /3/; 
 nqed.
 
 ntheorem th3_1: ¬∃a:axs.Z ⊆ S a ∧ S a ⊆ Z.
@@ -91,7 +103,7 @@ ncut (a ◃ Z); ##[
 ncut (a ◃ ∅); ##[ napply (transitivity … H); nwhd in match Z; //; ##] #H1;
 ncut (¬ a ∈ S a); ##[ napply (col2_4 … H1); ##] #H2;
 ncut (a ∈ S a); ##[ napply ZSa; napply H1; ##] #H3;
-//;
+/2/;
 nqed.
 
 include "nat/nat.ma".
@@ -115,7 +127,7 @@ alias id "S" = "cic:/matita/ng/topology/igft/S.fix(0,0,1)".
 unification hint 0 ≔ ;
          x ≟ caxs  
   (* -------------- *) ⊢
-         S x ≡ nat. 
+         S (uax x) ≡ nat. 
 
 naxiom h : nat → nat. 
 
@@ -127,20 +139,18 @@ naxiom Ph :  ∀x.h x = O \liff  x ◃ ∅.
 
 nlemma replace_char:
   ∀A:Ax.∀U,V.U ⊆ V → V ⊆ U → ∀a:A.a ◃ U → a ◃ V.
-#A; #U; #V;  #UV; #VU; #a; #aU; nelim aU; //;
+#A; #U; #V;  #UV; #VU; #a; #aU; nelim aU; /3/;
 nqed.
 
 ntheorem th_ch3: ¬∃a:caxs.∀x.ϕ a x = h x.
 *; #a; #H;
 ncut (a ◃ { x | x ◃ ∅}); ##[
-  napply (replace_char … { x | h x = O }); ##[ ##1,2: #x; ncases (Ph x); //; ##]
+  napply (replace_char … { x | h x = O }); ##[ ##1,2: #x; ncases (Ph x); /2/; ##]
   napply (replace_char … { x | ϕ a x = O }); ##[##1,2: #x; nrewrite > (H x); //; ##]
   napply (axiom_cond … a one); ##] #H1;
 ncut (a ◃ ∅); ##[ napply (transitivity … H1); //; ##] #H2;
 nlapply (col2_4 …H2); #H3;
 ncut (a ∈ 𝐂 a one); ##[
-  nnormalize; ncases (Ph a); nrewrite > (H a); //; ##] #H4;
-//;
-nqed.
-
-
+  nnormalize; ncases (Ph a); nrewrite > (H a); /2/; ##] #H4;
+/2/;
+nqed.
\ No newline at end of file