apply le_S_S.
apply le_O_n*)
| rewrite > lt_to_eq_mod;
- auto(*unfold lt;apply le_S_S;assumption*)
+ unfold lt;auto.(*apply le_S_S;assumption*)
]
| auto
(*unfold lt.
apply le_S_S.
apply le_O_n*)
| rewrite > lt_to_eq_mod
- [ auto
- (*unfold lt.
- apply le_S_S.
+ [ unfold lt.auto
+ (*apply le_S_S.
assumption*)
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
assumption*)
]
]
[ rewrite < H4 in \vdash (? ? ? (? %?)).
rewrite < mod_S
[ assumption
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
apply le_O_n*)
| rewrite > lt_to_eq_mod;
- auto;(*unfold lt;apply le_S_S;assumption*)
+ unfold lt;auto;(*apply le_S_S;assumption*)
]
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
apply le_O_n*)
]
]
[ rewrite < H3 in \vdash (? ? (? %?) ?).
rewrite < mod_S
[ assumption
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
apply le_O_n*)
| rewrite > lt_to_eq_mod;
- auto(*unfold lt;apply le_S_S;assumption*)
+ unfold lt;auto(*apply le_S_S;assumption*)
]
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
apply le_O_n*)
]
|(* i = n, j= n*)
(*apply le_to_or_lt_eq.
assumption*)
]
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
assumption*)
]
- | auto
- (*unfold lt.
- apply le_S_S.
+ | unfold lt.auto
+ (*apply le_S_S.
assumption*)
]
]
| rewrite > sym_plus.
apply le_plus_n
]*)
- | auto
- (*unfold prime in H.
- elim H.
+ | unfold prime in H. elim H. auto.
+ (*
apply (trans_lt ? (S O))
[ unfold lt.
apply le_n
]
| apply (le_to_not_lt p (j-i)).
apply divides_to_le
- [ auto
- (*unfold lt.
- apply le_SO_minus.
+ [ unfold lt.auto
+ (*apply le_SO_minus.
assumption*)
| cut (divides p a \lor divides p (j-i))
[ elim Hcut
[ assumption
| rewrite > distr_times_minus.
apply eq_mod_to_divides
- [ auto
- (*unfold prime in H.
- elim H.
- apply (trans_lt ? (S O))
+ [ unfold prime in H.elim H.auto
+ (*apply (trans_lt ? (S O))
[ unfold lt.
apply le_n
| assumption
| rewrite > sym_plus.
apply le_plus_n
]*)
- | auto
- (*unfold prime in H.
- elim H.
+ | unfold prime in H.elim H.auto.
+ (*
apply (trans_lt ? (S O))
[ unfold lt.
apply le_n
]
| apply (le_to_not_lt p (i-j)).
apply divides_to_le
- [ auto
- (*unfold lt.
- apply le_SO_minus.
+ [ unfold lt.auto
+ (*apply le_SO_minus.
assumption*)
| cut (divides p a \lor divides p (i-j))
[ elim Hcut
[ assumption
| rewrite > distr_times_minus.
apply eq_mod_to_divides
- [ auto
- (*unfold prime in H.
- elim H.
+ [ unfold prime in H.elim H.auto.
+ (*
apply (trans_lt ? (S O))
[ unfold lt.
apply le_n