X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=inline;f=helm%2Fsoftware%2Fmatita%2Fnlibrary%2Farithmetics%2Fnat.ma;h=9c420f9ec492e532cebae13dcd72fe76b5087c84;hb=e880d6eab5e1700f4a625ddcd7d0fa8f0cce2dcc;hp=4f1f6541164044c5b6be1e3a4117f4f73988b498;hpb=0a5e353bdadc4194e8becc7b960088ed4dbf68c1;p=helm.git diff --git a/helm/software/matita/nlibrary/arithmetics/nat.ma b/helm/software/matita/nlibrary/arithmetics/nat.ma index 4f1f65411..9c420f9ec 100644 --- a/helm/software/matita/nlibrary/arithmetics/nat.ma +++ b/helm/software/matita/nlibrary/arithmetics/nat.ma @@ -53,9 +53,10 @@ ntheorem not_eq_S: ∀n,m:nat. n ≠ m → S n ≠ S m. ndefinition not_zero: nat → Prop ≝ λn: nat. match n with [ O ⇒ False | (S p) ⇒ True ]. - + ntheorem not_eq_O_S : ∀n:nat. O ≠ S n. -#n; napply nmk; #eqOS; nchange with (not_zero O); nrewrite > eqOS; //. +#n; napply nmk; #eqOS; nchange with (not_zero O); +nrewrite > eqOS; //. nqed. ntheorem not_eq_n_Sn: ∀n:nat. n ≠ S n. @@ -80,10 +81,6 @@ napply nat_elim2; #n; ##[ ncases n; /2/; ##| /3/; ##| #m; #Hind; ncases Hind;/3/; - (* - ##[/2/; ##|#H; nwhd; - napply or_introl; - napply eq_f2; /3/; *) ##] nqed. @@ -127,7 +124,7 @@ ntheorem associative_plus : associative nat plus. #n; nelim n; nnormalize; //; nqed. ntheorem assoc_plus1: ∀a,b,c. c + (b + a) = b + c + a. -//; nqed. +//; nqed. ntheorem injective_plus_r: ∀n:nat.injective nat nat (λm.n+m). #n; nelim n; nnormalize; /3/; nqed. @@ -276,8 +273,6 @@ ntheorem monotonic_pred: monotonic ? le pred. #n; #m; #lenm; nelim lenm; /2/;nqed. ntheorem le_S_S_to_le: ∀n,m:nat. S n ≤ S m → n ≤ m. -(* XXX *) nletin hint ≝ monotonic. -#a; #b; #H; napplyS monotonic_pred; /2/; nqed. (* this are instances of the le versions @@ -453,9 +448,8 @@ ntheorem le_n_Sm_elim : ∀n,m:nat.n ≤ S m → (* le and eq *) ntheorem le_to_le_to_eq: ∀n,m. n ≤ m → m ≤ n → n = m. -napply nat_elim2; -##[#n; #H1; #H2; /4/; - nqed. +napply nat_elim2; /4/; +nqed. ntheorem lt_O_S : ∀n:nat. O < S n. /2/; nqed. @@ -495,7 +489,7 @@ nelim n; ##[#q; #HleO; (* applica male *) napply (le_n_O_elim ? HleO); napply H; #p; #ltpO; - napply False_ind; /2/; (* 3 *) + napply (False_ind ??); /2/; (* 3 *) ##|#p; #Hind; #q; #HleS; napply H; #a; #lta; napply Hind; napply le_S_S_to_le;/2/;