Metamath Proof Explorer


Theorem pidufd

Description: Every principal ideal domain is a unique factorization domain. (Contributed by Thierry Arnoux, 3-Jun-2025)

Ref Expression
Hypothesis pidufd.1 ⊢ φ → R ∈ PID
Assertion pidufd ⊢ φ → R ∈ UFD

Proof

Step Hyp Ref Expression
1 pidufd.1 ⊢ φ → R ∈ PID
2 df-pid ⊢ PID = IDomn ∩ LPIR
3 1 2 eleqtrdi ⊢ φ → R ∈ IDomn ∩ LPIR
4 3 elin1d ⊢ φ → R ∈ IDomn
5 4 idomringd ⊢ φ → R ∈ Ring
6 5 ad3antrrr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → R ∈ Ring
7 simplr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ Base R
8 eqid ⊢ Base R = Base R
9 eqid ⊢ RSpan ⁡ R = RSpan ⁡ R
10 8 9 rspsnid ⊢ R ∈ Ring ∧ x ∈ Base R → x ∈ RSpan ⁡ R ⁡ x
11 6 7 10 syl2anc ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ RSpan ⁡ R ⁡ x
12 simpr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → i = RSpan ⁡ R ⁡ x
13 11 12 eleqtrrd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ i
14 simpr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → i ∈ PrmIdeal ⁡ R ∖ 0 R
15 14 eldifad ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → i ∈ PrmIdeal ⁡ R
16 15 ad2antrr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → i ∈ PrmIdeal ⁡ R
17 12 16 eqeltrrd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → RSpan ⁡ R ⁡ x ∈ PrmIdeal ⁡ R
18 eqid ⊢ 0 R = 0 R
19 eqid ⊢ RPrime ⁡ R = RPrime ⁡ R
20 4 ad3antrrr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → R ∈ IDomn
21 20 idomcringd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → R ∈ CRing
22 simplr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → i = RSpan ⁡ R ⁡ x
23 simpr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → x = 0 R
24 23 sneqd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → x = 0 R
25 24 fveq2d ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → RSpan ⁡ R ⁡ x = RSpan ⁡ R ⁡ 0 R
26 9 18 rsp0 ⊢ R ∈ Ring → RSpan ⁡ R ⁡ 0 R = 0 R
27 5 26 syl ⊢ φ → RSpan ⁡ R ⁡ 0 R = 0 R
28 27 ad4antr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → RSpan ⁡ R ⁡ 0 R = 0 R
29 22 25 28 3eqtrd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → i = 0 R
30 eldifsni ⊢ i ∈ PrmIdeal ⁡ R ∖ 0 R → i ≠ 0 R
31 30 ad4antlr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → i ≠ 0 R
32 31 neneqd ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x ∧ x = 0 R → ¬ i = 0 R
33 29 32 pm2.65da ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → ¬ x = 0 R
34 33 neqned ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ≠ 0 R
35 18 8 19 9 21 7 34 rsprprmprmidlb ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ RPrime ⁡ R ↔ RSpan ⁡ R ⁡ x ∈ PrmIdeal ⁡ R
36 17 35 mpbird ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ RPrime ⁡ R
37 13 36 elind ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → x ∈ i ∩ RPrime ⁡ R
38 37 ne0d ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R ∧ x ∈ Base R ∧ i = RSpan ⁡ R ⁡ x → i ∩ RPrime ⁡ R ≠ ∅
39 eqid ⊢ LIdeal ⁡ R = LIdeal ⁡ R
40 3 elin2d ⊢ φ → R ∈ LPIR
41 40 adantr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → R ∈ LPIR
42 5 adantr ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → R ∈ Ring
43 prmidlidl ⊢ R ∈ Ring ∧ i ∈ PrmIdeal ⁡ R → i ∈ LIdeal ⁡ R
44 42 15 43 syl2anc ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → i ∈ LIdeal ⁡ R
45 8 39 9 41 44 lpirlidllpi ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → ∃ x ∈ Base R i = RSpan ⁡ R ⁡ x
46 38 45 r19.29a ⊢ φ ∧ i ∈ PrmIdeal ⁡ R ∖ 0 R → i ∩ RPrime ⁡ R ≠ ∅
47 46 ralrimiva ⊢ φ → ∀ i ∈ PrmIdeal ⁡ R ∖ 0 R i ∩ RPrime ⁡ R ≠ ∅
48 eqid ⊢ PrmIdeal ⁡ R = PrmIdeal ⁡ R
49 48 19 18 isufd ⊢ R ∈ UFD ↔ R ∈ IDomn ∧ ∀ i ∈ PrmIdeal ⁡ R ∖ 0 R i ∩ RPrime ⁡ R ≠ ∅
50 4 47 49 sylanbrc ⊢ φ → R ∈ UFD