Metamath Proof Explorer


Theorem divalgb

Description: Express the division algorithm as stated in divalg in terms of || . (Contributed by Paul Chapman, 31-Mar-2011)

Ref Expression
Assertion divalgb ⊢ N ∈ ℤ ∧ D ∈ ℤ ∧ D ≠ 0 → ∃! r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < D ∧ N = q ⁢ D + r ↔ ∃! r ∈ ℕ 0 r < D ∧ D ∥ N − r

Proof

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