| Step |
Hyp |
Ref |
Expression |
| 1 |
|
zre |
|- ( M e. ZZ -> M e. RR ) |
| 2 |
|
nnrp |
|- ( N e. NN -> N e. RR+ ) |
| 3 |
|
modid2 |
|- ( ( M e. RR /\ N e. RR+ ) -> ( ( M mod N ) = M <-> ( 0 <_ M /\ M < N ) ) ) |
| 4 |
1 2 3
|
syl2an |
|- ( ( M e. ZZ /\ N e. NN ) -> ( ( M mod N ) = M <-> ( 0 <_ M /\ M < N ) ) ) |
| 5 |
|
nnz |
|- ( N e. NN -> N e. ZZ ) |
| 6 |
|
0z |
|- 0 e. ZZ |
| 7 |
|
elfzm11 |
|- ( ( 0 e. ZZ /\ N e. ZZ ) -> ( M e. ( 0 ... ( N - 1 ) ) <-> ( M e. ZZ /\ 0 <_ M /\ M < N ) ) ) |
| 8 |
6 7
|
mpan |
|- ( N e. ZZ -> ( M e. ( 0 ... ( N - 1 ) ) <-> ( M e. ZZ /\ 0 <_ M /\ M < N ) ) ) |
| 9 |
|
3anass |
|- ( ( M e. ZZ /\ 0 <_ M /\ M < N ) <-> ( M e. ZZ /\ ( 0 <_ M /\ M < N ) ) ) |
| 10 |
8 9
|
bitrdi |
|- ( N e. ZZ -> ( M e. ( 0 ... ( N - 1 ) ) <-> ( M e. ZZ /\ ( 0 <_ M /\ M < N ) ) ) ) |
| 11 |
5 10
|
syl |
|- ( N e. NN -> ( M e. ( 0 ... ( N - 1 ) ) <-> ( M e. ZZ /\ ( 0 <_ M /\ M < N ) ) ) ) |
| 12 |
|
ibar |
|- ( M e. ZZ -> ( ( 0 <_ M /\ M < N ) <-> ( M e. ZZ /\ ( 0 <_ M /\ M < N ) ) ) ) |
| 13 |
12
|
bicomd |
|- ( M e. ZZ -> ( ( M e. ZZ /\ ( 0 <_ M /\ M < N ) ) <-> ( 0 <_ M /\ M < N ) ) ) |
| 14 |
11 13
|
sylan9bbr |
|- ( ( M e. ZZ /\ N e. NN ) -> ( M e. ( 0 ... ( N - 1 ) ) <-> ( 0 <_ M /\ M < N ) ) ) |
| 15 |
4 14
|
bitr4d |
|- ( ( M e. ZZ /\ N e. NN ) -> ( ( M mod N ) = M <-> M e. ( 0 ... ( N - 1 ) ) ) ) |