Proof of Theorem gcd0id
| Step | Hyp | Ref
| Expression |
| 1 | | gcd0val 16545 |
. . . 4
⊢ (0 gcd 0)
= 0 |
| 2 | | oveq2 7408 |
. . . 4
⊢ (𝑁 = 0 → (0 gcd 𝑁) = (0 gcd 0)) |
| 3 | | fveq2 6871 |
. . . . 5
⊢ (𝑁 = 0 → (abs‘𝑁) =
(abs‘0)) |
| 4 | | abs0 15326 |
. . . . 5
⊢
(abs‘0) = 0 |
| 5 | 3, 4 | eqtrdi 2816 |
. . . 4
⊢ (𝑁 = 0 → (abs‘𝑁) = 0) |
| 6 | 1, 2, 5 | 3eqtr4a 2826 |
. . 3
⊢ (𝑁 = 0 → (0 gcd 𝑁) = (abs‘𝑁)) |
| 7 | 6 | adantl 486 |
. 2
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 = 0) → (0 gcd 𝑁) = (abs‘𝑁)) |
| 8 | | 0z 12593 |
. . . . . . 7
⊢ 0 ∈
ℤ |
| 9 | | gcddvds 16551 |
. . . . . . 7
⊢ ((0
∈ ℤ ∧ 𝑁
∈ ℤ) → ((0 gcd 𝑁) ∥ 0 ∧ (0 gcd 𝑁) ∥ 𝑁)) |
| 10 | 8, 9 | mpan 702 |
. . . . . 6
⊢ (𝑁 ∈ ℤ → ((0 gcd
𝑁) ∥ 0 ∧ (0 gcd
𝑁) ∥ 𝑁)) |
| 11 | 10 | simprd 500 |
. . . . 5
⊢ (𝑁 ∈ ℤ → (0 gcd
𝑁) ∥ 𝑁) |
| 12 | 11 | adantr 485 |
. . . 4
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (0 gcd 𝑁) ∥ 𝑁) |
| 13 | | gcdcl 16554 |
. . . . . . . 8
⊢ ((0
∈ ℤ ∧ 𝑁
∈ ℤ) → (0 gcd 𝑁) ∈
ℕ0) |
| 14 | 8, 13 | mpan 702 |
. . . . . . 7
⊢ (𝑁 ∈ ℤ → (0 gcd
𝑁) ∈
ℕ0) |
| 15 | 14 | nn0zd 12607 |
. . . . . 6
⊢ (𝑁 ∈ ℤ → (0 gcd
𝑁) ∈
ℤ) |
| 16 | | dvdsleabs 16359 |
. . . . . 6
⊢ (((0 gcd
𝑁) ∈ ℤ ∧
𝑁 ∈ ℤ ∧
𝑁 ≠ 0) → ((0 gcd
𝑁) ∥ 𝑁 → (0 gcd 𝑁) ≤ (abs‘𝑁))) |
| 17 | 15, 16 | syl3an1 1179 |
. . . . 5
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((0 gcd 𝑁) ∥ 𝑁 → (0 gcd 𝑁) ≤ (abs‘𝑁))) |
| 18 | 17 | 3anidm12 1442 |
. . . 4
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((0 gcd 𝑁) ∥ 𝑁 → (0 gcd 𝑁) ≤ (abs‘𝑁))) |
| 19 | 12, 18 | mpd 16 |
. . 3
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (0 gcd 𝑁) ≤ (abs‘𝑁)) |
| 20 | | zabscl 15354 |
. . . . . . 7
⊢ (𝑁 ∈ ℤ →
(abs‘𝑁) ∈
ℤ) |
| 21 | | dvds0 16319 |
. . . . . . 7
⊢
((abs‘𝑁)
∈ ℤ → (abs‘𝑁) ∥ 0) |
| 22 | 20, 21 | syl 18 |
. . . . . 6
⊢ (𝑁 ∈ ℤ →
(abs‘𝑁) ∥
0) |
| 23 | | iddvds 16317 |
. . . . . . 7
⊢ (𝑁 ∈ ℤ → 𝑁 ∥ 𝑁) |
| 24 | | absdvdsb 16322 |
. . . . . . . 8
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑁 ∥ 𝑁 ↔ (abs‘𝑁) ∥ 𝑁)) |
| 25 | 24 | anidms 576 |
. . . . . . 7
⊢ (𝑁 ∈ ℤ → (𝑁 ∥ 𝑁 ↔ (abs‘𝑁) ∥ 𝑁)) |
| 26 | 23, 25 | mpbid 235 |
. . . . . 6
⊢ (𝑁 ∈ ℤ →
(abs‘𝑁) ∥ 𝑁) |
| 27 | 22, 26 | jca 520 |
. . . . 5
⊢ (𝑁 ∈ ℤ →
((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁)) |
| 28 | 27 | adantr 485 |
. . . 4
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) →
((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁)) |
| 29 | | eqid 2765 |
. . . . . . . 8
⊢ 0 =
0 |
| 30 | 29 | biantrur 539 |
. . . . . . 7
⊢ (𝑁 = 0 ↔ (0 = 0 ∧ 𝑁 = 0)) |
| 31 | 30 | necon3abii 3006 |
. . . . . 6
⊢ (𝑁 ≠ 0 ↔ ¬ (0 = 0
∧ 𝑁 =
0)) |
| 32 | | dvdslegcd 16552 |
. . . . . . . . 9
⊢
((((abs‘𝑁)
∈ ℤ ∧ 0 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (0 = 0 ∧
𝑁 = 0)) →
(((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁))) |
| 33 | 32 | ex 417 |
. . . . . . . 8
⊢
(((abs‘𝑁)
∈ ℤ ∧ 0 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (¬ (0 = 0 ∧
𝑁 = 0) →
(((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 34 | 8, 33 | mp3an2 1473 |
. . . . . . 7
⊢
(((abs‘𝑁)
∈ ℤ ∧ 𝑁
∈ ℤ) → (¬ (0 = 0 ∧ 𝑁 = 0) → (((abs‘𝑁) ∥ 0 ∧ (abs‘𝑁) ∥ 𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 35 | 20, 34 | mpancom 700 |
. . . . . 6
⊢ (𝑁 ∈ ℤ → (¬ (0
= 0 ∧ 𝑁 = 0) →
(((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 36 | 31, 35 | biimtrid 245 |
. . . . 5
⊢ (𝑁 ∈ ℤ → (𝑁 ≠ 0 →
(((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 37 | 36 | imp 411 |
. . . 4
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) →
(((abs‘𝑁) ∥ 0
∧ (abs‘𝑁) ∥
𝑁) → (abs‘𝑁) ≤ (0 gcd 𝑁))) |
| 38 | 28, 37 | mpd 16 |
. . 3
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ≤ (0 gcd 𝑁)) |
| 39 | 15 | zred 12691 |
. . . . 5
⊢ (𝑁 ∈ ℤ → (0 gcd
𝑁) ∈
ℝ) |
| 40 | 20 | zred 12691 |
. . . . 5
⊢ (𝑁 ∈ ℤ →
(abs‘𝑁) ∈
ℝ) |
| 41 | 39, 40 | letri3d 11340 |
. . . 4
⊢ (𝑁 ∈ ℤ → ((0 gcd
𝑁) = (abs‘𝑁) ↔ ((0 gcd 𝑁) ≤ (abs‘𝑁) ∧ (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 42 | 41 | adantr 485 |
. . 3
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((0 gcd 𝑁) = (abs‘𝑁) ↔ ((0 gcd 𝑁) ≤ (abs‘𝑁) ∧ (abs‘𝑁) ≤ (0 gcd 𝑁)))) |
| 43 | 19, 38, 42 | mpbir2and 725 |
. 2
⊢ ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (0 gcd 𝑁) = (abs‘𝑁)) |
| 44 | 7, 43 | pm2.61dane 3047 |
1
⊢ (𝑁 ∈ ℤ → (0 gcd
𝑁) = (abs‘𝑁)) |