Step |
Hyp |
Ref |
Expression |
1 |
|
zmodid2 |
|- ( ( M e. ZZ /\ N e. NN ) -> ( ( M mod N ) = M <-> M e. ( 0 ... ( N - 1 ) ) ) ) |
2 |
|
nnz |
|- ( N e. NN -> N e. ZZ ) |
3 |
|
fzoval |
|- ( N e. ZZ -> ( 0 ..^ N ) = ( 0 ... ( N - 1 ) ) ) |
4 |
2 3
|
syl |
|- ( N e. NN -> ( 0 ..^ N ) = ( 0 ... ( N - 1 ) ) ) |
5 |
4
|
adantl |
|- ( ( M e. ZZ /\ N e. NN ) -> ( 0 ..^ N ) = ( 0 ... ( N - 1 ) ) ) |
6 |
5
|
eqcomd |
|- ( ( M e. ZZ /\ N e. NN ) -> ( 0 ... ( N - 1 ) ) = ( 0 ..^ N ) ) |
7 |
6
|
eleq2d |
|- ( ( M e. ZZ /\ N e. NN ) -> ( M e. ( 0 ... ( N - 1 ) ) <-> M e. ( 0 ..^ N ) ) ) |
8 |
1 7
|
bitrd |
|- ( ( M e. ZZ /\ N e. NN ) -> ( ( M mod N ) = M <-> M e. ( 0 ..^ N ) ) ) |