Metamath Proof Explorer


Theorem zzedom

Description: The ring of integers is a Euclidean domain. Note that the hypothesis abs = ( EuclFZZring ) could be dropped if the definition of CCfld is adapted. (Contributed by Thierry Arnoux, 29-Oct-2026)

Ref Expression
Hypothesis zzedom.1 ⊢ abs = EuclF ⁡ ℤ ring
Assertion zzedom ⊢ ℤ ring ∈ EDomn

Proof

Step Hyp Ref Expression
1 zzedom.1 ⊢ abs = EuclF ⁡ ℤ ring
2 zringidom ⊢ ℤ ring ∈ IDomn
3 absf ⊢ abs : ℂ ⟶ ℝ
4 3 a1i ⊢ ⊤ → abs : ℂ ⟶ ℝ
5 zsscn ⊢ ℤ ⊆ ℂ
6 ssdifss ⊢ ℤ ⊆ ℂ → ℤ ∖ 0 ⊆ ℂ
7 5 6 mp1i ⊢ ⊤ → ℤ ∖ 0 ⊆ ℂ
8 4 7 feqresmpt ⊢ ⊤ → abs ↾ ℤ ∖ 0 = x ∈ ℤ ∖ 0 ⟼ x
9 8 mptru ⊢ abs ↾ ℤ ∖ 0 = x ∈ ℤ ∖ 0 ⟼ x
10 eldifi ⊢ x ∈ ℤ ∖ 0 → x ∈ ℤ
11 nn0abscl ⊢ x ∈ ℤ → x ∈ ℕ 0
12 10 11 syl ⊢ x ∈ ℤ ∖ 0 → x ∈ ℕ 0
13 9 12 fmpti ⊢ abs ↾ ℤ ∖ 0 : ℤ ∖ 0 ⟶ ℕ 0
14 simpr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → x = q ⁢ y + r
15 simp-5r ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → q ∈ ℤ
16 15 zcnd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → q ∈ ℂ
17 difssd ⊢ x ∈ ℤ → ℤ ∖ 0 ⊆ ℤ
18 17 sselda ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → y ∈ ℤ
19 18 ad5antr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → y ∈ ℤ
20 19 zcnd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → y ∈ ℂ
21 16 20 mulcomd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → q ⁢ y = y ⁢ q
22 21 oveq1d ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → q ⁢ y + r = y ⁢ q + r
23 14 22 eqtrd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → x = y ⁢ q + r
24 df-ne ⊢ r ≠ 0 ↔ ¬ r = 0
25 simpllr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → r < y
26 simp-4r ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → r ∈ ℤ
27 26 adantr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → r ∈ ℤ
28 simpr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → r ≠ 0
29 27 28 eldifsnd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → r ∈ ℤ ∖ 0
30 29 fvresd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → abs ↾ ℤ ∖ 0 ⁡ r = r
31 26 zred ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → r ∈ ℝ
32 simpllr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → 0 ≤ r
33 31 32 absidd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → r = r
34 33 adantr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → r = r
35 30 34 eqtrd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → abs ↾ ℤ ∖ 0 ⁡ r = r
36 simp-7r ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → y ∈ ℤ ∖ 0
37 36 fvresd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → abs ↾ ℤ ∖ 0 ⁡ y = y
38 25 35 37 3brtr4d ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ∧ r ≠ 0 → abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
39 38 ex ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → r ≠ 0 → abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
40 24 39 biimtrrid ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → ¬ r = 0 → abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
41 40 orrd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
42 23 41 jca ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
43 42 3anasss ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 ∧ q ∈ ℤ ∧ r ∈ ℤ ∧ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
44 simpl ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → x ∈ ℤ
45 simpr ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → y ∈ ℤ ∖ 0
46 45 eldifsnbd ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → y ≠ 0
47 divalg ⊢ x ∈ ℤ ∧ y ∈ ℤ ∧ y ≠ 0 → ∃! r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
48 reurex ⊢ ∃! r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r → ∃ r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
49 47 48 syl ⊢ x ∈ ℤ ∧ y ∈ ℤ ∧ y ≠ 0 → ∃ r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
50 44 18 46 49 syl3anc ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → ∃ r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
51 rexcom ⊢ ∃ r ∈ ℤ ∃ q ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r ↔ ∃ q ∈ ℤ ∃ r ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
52 50 51 sylib ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → ∃ q ∈ ℤ ∃ r ∈ ℤ 0 ≤ r ∧ r < y ∧ x = q ⁢ y + r
53 43 52 reximddv2 ⊢ x ∈ ℤ ∧ y ∈ ℤ ∖ 0 → ∃ q ∈ ℤ ∃ r ∈ ℤ x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
54 53 rgen2 ⊢ ∀ x ∈ ℤ ∀ y ∈ ℤ ∖ 0 ∃ q ∈ ℤ ∃ r ∈ ℤ x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
55 13 54 pm3.2i ⊢ abs ↾ ℤ ∖ 0 : ℤ ∖ 0 ⟶ ℕ 0 ∧ ∀ x ∈ ℤ ∀ y ∈ ℤ ∖ 0 ∃ q ∈ ℤ ∃ r ∈ ℤ x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
56 zringbas ⊢ ℤ = Base ℤ ring
57 zring0 ⊢ 0 = 0 ℤ ring
58 zringplusg ⊢ + = + ℤ ring
59 zringmulr ⊢ × = ⋅ ℤ ring
60 1 reseq1i ⊢ abs ↾ ℤ ∖ 0 = EuclF ⁡ ℤ ring ↾ ℤ ∖ 0
61 56 57 58 59 60 isedom ⊢ ℤ ring ∈ EDomn ↔ ℤ ring ∈ IDomn ∧ abs ↾ ℤ ∖ 0 : ℤ ∖ 0 ⟶ ℕ 0 ∧ ∀ x ∈ ℤ ∀ y ∈ ℤ ∖ 0 ∃ q ∈ ℤ ∃ r ∈ ℤ x = y ⁢ q + r ∧ r = 0 ∨ abs ↾ ℤ ∖ 0 ⁡ r < abs ↾ ℤ ∖ 0 ⁡ y
62 2 55 61 mpbir2an ⊢ ℤ ring ∈ EDomn