Step |
Hyp |
Ref |
Expression |
1 |
|
df-3an |
⊢ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
2 |
1
|
rexbii |
⊢ ( ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ∃ 𝑞 ∈ ℤ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
3 |
|
r19.42v |
⊢ ( ∃ 𝑞 ∈ ℤ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
4 |
2 3
|
bitri |
⊢ ( ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
5 |
|
zsubcl |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( 𝑁 − 𝑟 ) ∈ ℤ ) |
6 |
|
divides |
⊢ ( ( 𝐷 ∈ ℤ ∧ ( 𝑁 − 𝑟 ) ∈ ℤ ) → ( 𝐷 ∥ ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ) ) |
7 |
5 6
|
sylan2 |
⊢ ( ( 𝐷 ∈ ℤ ∧ ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ) ) → ( 𝐷 ∥ ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ) ) |
8 |
7
|
3impb |
⊢ ( ( 𝐷 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( 𝐷 ∥ ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ) ) |
9 |
8
|
3com12 |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( 𝐷 ∥ ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ) ) |
10 |
|
zcn |
⊢ ( 𝑁 ∈ ℤ → 𝑁 ∈ ℂ ) |
11 |
|
zcn |
⊢ ( 𝑟 ∈ ℤ → 𝑟 ∈ ℂ ) |
12 |
|
zmulcl |
⊢ ( ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( 𝑞 · 𝐷 ) ∈ ℤ ) |
13 |
12
|
zcnd |
⊢ ( ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( 𝑞 · 𝐷 ) ∈ ℂ ) |
14 |
|
subadd |
⊢ ( ( 𝑁 ∈ ℂ ∧ 𝑟 ∈ ℂ ∧ ( 𝑞 · 𝐷 ) ∈ ℂ ) → ( ( 𝑁 − 𝑟 ) = ( 𝑞 · 𝐷 ) ↔ ( 𝑟 + ( 𝑞 · 𝐷 ) ) = 𝑁 ) ) |
15 |
10 11 13 14
|
syl3an |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( ( 𝑁 − 𝑟 ) = ( 𝑞 · 𝐷 ) ↔ ( 𝑟 + ( 𝑞 · 𝐷 ) ) = 𝑁 ) ) |
16 |
|
addcom |
⊢ ( ( 𝑟 ∈ ℂ ∧ ( 𝑞 · 𝐷 ) ∈ ℂ ) → ( 𝑟 + ( 𝑞 · 𝐷 ) ) = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) |
17 |
11 13 16
|
syl2an |
⊢ ( ( 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( 𝑟 + ( 𝑞 · 𝐷 ) ) = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) |
18 |
17
|
3adant1 |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( 𝑟 + ( 𝑞 · 𝐷 ) ) = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) |
19 |
18
|
eqeq1d |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( ( 𝑟 + ( 𝑞 · 𝐷 ) ) = 𝑁 ↔ ( ( 𝑞 · 𝐷 ) + 𝑟 ) = 𝑁 ) ) |
20 |
15 19
|
bitrd |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( ( 𝑁 − 𝑟 ) = ( 𝑞 · 𝐷 ) ↔ ( ( 𝑞 · 𝐷 ) + 𝑟 ) = 𝑁 ) ) |
21 |
|
eqcom |
⊢ ( ( 𝑁 − 𝑟 ) = ( 𝑞 · 𝐷 ) ↔ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ) |
22 |
|
eqcom |
⊢ ( ( ( 𝑞 · 𝐷 ) + 𝑟 ) = 𝑁 ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) |
23 |
20 21 22
|
3bitr3g |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ) → ( ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
24 |
23
|
3expia |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( ( 𝑞 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) ) |
25 |
24
|
expcomd |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( 𝐷 ∈ ℤ → ( 𝑞 ∈ ℤ → ( ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) ) ) |
26 |
25
|
3impia |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( 𝑞 ∈ ℤ → ( ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) ) |
27 |
26
|
imp |
⊢ ( ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ∧ 𝑞 ∈ ℤ ) → ( ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
28 |
27
|
rexbidva |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝑟 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
29 |
28
|
3com23 |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( ∃ 𝑞 ∈ ℤ ( 𝑞 · 𝐷 ) = ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
30 |
9 29
|
bitrd |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( 𝐷 ∥ ( 𝑁 − 𝑟 ) ↔ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) |
31 |
30
|
anbi2d |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ↔ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ ∃ 𝑞 ∈ ℤ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ) ) |
32 |
4 31
|
bitr4id |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |
33 |
|
anass |
⊢ ( ( ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ↔ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |
34 |
32 33
|
bitrdi |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝑟 ∈ ℤ ) → ( ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
35 |
34
|
3expa |
⊢ ( ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ) ∧ 𝑟 ∈ ℤ ) → ( ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
36 |
35
|
reubidva |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( ∃! 𝑟 ∈ ℤ ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ∃! 𝑟 ∈ ℤ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
37 |
|
elnn0z |
⊢ ( 𝑟 ∈ ℕ0 ↔ ( 𝑟 ∈ ℤ ∧ 0 ≤ 𝑟 ) ) |
38 |
37
|
anbi1i |
⊢ ( ( 𝑟 ∈ ℕ0 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ( ( 𝑟 ∈ ℤ ∧ 0 ≤ 𝑟 ) ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |
39 |
|
anass |
⊢ ( ( ( 𝑟 ∈ ℤ ∧ 0 ≤ 𝑟 ) ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ( 𝑟 ∈ ℤ ∧ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
40 |
38 39
|
bitri |
⊢ ( ( 𝑟 ∈ ℕ0 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ( 𝑟 ∈ ℤ ∧ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
41 |
40
|
eubii |
⊢ ( ∃! 𝑟 ( 𝑟 ∈ ℕ0 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ∃! 𝑟 ( 𝑟 ∈ ℤ ∧ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
42 |
|
df-reu |
⊢ ( ∃! 𝑟 ∈ ℕ0 ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ↔ ∃! 𝑟 ( 𝑟 ∈ ℕ0 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |
43 |
|
df-reu |
⊢ ( ∃! 𝑟 ∈ ℤ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ∃! 𝑟 ( 𝑟 ∈ ℤ ∧ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) ) |
44 |
41 42 43
|
3bitr4ri |
⊢ ( ∃! 𝑟 ∈ ℤ ( 0 ≤ 𝑟 ∧ ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ↔ ∃! 𝑟 ∈ ℕ0 ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) |
45 |
36 44
|
bitrdi |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ) → ( ∃! 𝑟 ∈ ℤ ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ∃! 𝑟 ∈ ℕ0 ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |
46 |
45
|
3adant3 |
⊢ ( ( 𝑁 ∈ ℤ ∧ 𝐷 ∈ ℤ ∧ 𝐷 ≠ 0 ) → ( ∃! 𝑟 ∈ ℤ ∃ 𝑞 ∈ ℤ ( 0 ≤ 𝑟 ∧ 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝑁 = ( ( 𝑞 · 𝐷 ) + 𝑟 ) ) ↔ ∃! 𝑟 ∈ ℕ0 ( 𝑟 < ( abs ‘ 𝐷 ) ∧ 𝐷 ∥ ( 𝑁 − 𝑟 ) ) ) ) |