theorem minus_plus_m_m: \forall n,m:nat.n = (n+m)-m.
intros 2.
-generalize in match n.
-elim m.
+elim m in n ⊢ %.
rewrite < minus_n_O.apply plus_n_O.
-elim n2.simplify.
+elim n1.simplify.
apply minus_n_n.
rewrite < plus_n_Sm.
-change with (S n3 = (S n3 + n1)-n1).
+change with (S n2 = (S n2 + n)-n).
apply H.
qed.
|apply (inj_times_r (pred ((n-x)!)));
rewrite < (S_pred ((n-x)!))
[rewrite < assoc_times;rewrite < sym_times in \vdash (? ? (? % ?) ?);
- rewrite < H3;generalize in match H2;elim x
+ rewrite < H3;generalize in match H2; elim x
[rewrite < minus_n_O;simplify;rewrite < times_n_SO;reflexivity
|rewrite < fact_minus in H4;
[rewrite > true_to_pi_p_Sn