X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2Flibrary%2Fnat%2Fnat.ma;h=a75032d7123b7018f40af65285712d5c3c4da9c1;hb=4167cea65ca58897d1a3dbb81ff95de5074700cc;hp=e2bf56542a96c2a9e9b18b392988b60c17e24da2;hpb=73e63e535940a068e660d3688a3c8ebfa1930561;p=helm.git diff --git a/helm/matita/library/nat/nat.ma b/helm/matita/library/nat/nat.ma index e2bf56542..a75032d71 100644 --- a/helm/matita/library/nat/nat.ma +++ b/helm/matita/library/nat/nat.ma @@ -26,14 +26,14 @@ definition pred: nat \to nat \def | (S p) \Rightarrow p ]. theorem pred_Sn : \forall n:nat.n=(pred (S n)). -intros; reflexivity. +intros. reflexivity. qed. theorem injective_S : injective nat nat S. -simplify. +unfold injective. intros. rewrite > pred_Sn. -rewrite > pred_Sn y. +rewrite > (pred_Sn y). apply eq_f. assumption. qed. @@ -42,7 +42,7 @@ theorem inj_S : \forall n,m:nat.(S n)=(S m) \to n=m theorem not_eq_S : \forall n,m:nat. \lnot n=m \to S n \neq S m. -intros. simplify. intros. +intros. unfold Not. intros. apply H. apply injective_S. assumption. qed. @@ -53,7 +53,7 @@ definition not_zero : nat \to Prop \def | (S p) \Rightarrow True ]. theorem not_eq_O_S : \forall n:nat. O \neq S n. -intros. simplify. intros. +intros. unfold Not. intros. cut (not_zero O). exact Hcut. rewrite > H.exact I. @@ -86,18 +86,18 @@ theorem nat_elim2 : (\forall n,m:nat. R n m \to R (S n) (S m)) \to \forall n,m:nat. R n m. intros 5.elim n. apply H. -apply nat_case m.apply H1. +apply (nat_case m).apply H1. intros.apply H2. apply H3. qed. theorem decidable_eq_nat : \forall n,m:nat.decidable (n=m). -intros.simplify. -apply nat_elim2 (\lambda n,m.(Or (n=m) ((n=m) \to False))). +intros.unfold decidable. +apply (nat_elim2 (\lambda n,m.(Or (n=m) ((n=m) \to False)))). intro.elim n1. left.reflexivity. right.apply not_eq_O_S. intro.right.intro. -apply not_eq_O_S n1. +apply (not_eq_O_S n1). apply sym_eq.assumption. intros.elim H. left.apply eq_f. assumption.