]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/library/nat/times.ma
ocaml 3.09 transition
[helm.git] / helm / matita / library / nat / times.ma
index 2707c2ba1cdd8ff08a0404fa40de9f714390542c..2ae5ffd749b745783a2cf8c3eded7166cc4f8108 100644 (file)
@@ -43,7 +43,7 @@ reflexivity.
 apply assoc_plus.
 qed.
 
-theorem times_n_SO : \forall n:nat. eq nat n (times n (S O)).
+theorem times_n_SO : \forall n:nat. n = n * S O.
 intros.
 rewrite < times_n_Sm.
 rewrite < times_n_O.
@@ -52,7 +52,7 @@ reflexivity.
 qed.
 
 theorem symmetric_times : symmetric nat times. 
-simplify.
+unfold symmetric.
 intros.elim x.
 simplify.apply times_n_O.
 simplify.rewrite > H.apply times_n_Sm.
@@ -62,24 +62,24 @@ variant sym_times : \forall n,m:nat. n*m = m*n \def
 symmetric_times.
 
 theorem distributive_times_plus : distributive nat times plus.
-simplify.
+unfold distributive.
 intros.elim x.
 simplify.reflexivity.
 simplify.rewrite > H. rewrite > assoc_plus.rewrite > assoc_plus.
-apply eq_f.rewrite < assoc_plus. rewrite < sym_plus ? z.
+apply eq_f.rewrite < assoc_plus. rewrite < (sym_plus ? z).
 rewrite > assoc_plus.reflexivity.
 qed.
 
-variant times_plus_distr: \forall n,m,p:nat. n*(m+p) = n*m + n*p
+variant distr_times_plus: \forall n,m,p:nat. n*(m+p) = n*m + n*p
 \def distributive_times_plus.
 
 theorem associative_times: associative nat times.
-simplify.intros.
+unfold associative.intros.
 elim x.simplify.apply refl_eq.
 simplify.rewrite < sym_times.
-rewrite > times_plus_distr.
+rewrite > distr_times_plus.
 rewrite < sym_times.
-rewrite < sym_times (times n y) z.
+rewrite < (sym_times (times n y) z).
 rewrite < H.apply refl_eq.
 qed.