| Step | Hyp | Ref
 | Expression | 
| 1 |   | crngring 13564 | 
. . 3
⊢ (𝑅 ∈ CRing → 𝑅 ∈ Ring) | 
| 2 |   | simpr 110 | 
. . . 4
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑆 ∈ 𝐼) | 
| 3 |   | quscrng.i | 
. . . . . 6
⊢ 𝐼 = (LIdeal‘𝑅) | 
| 4 | 3 | crng2idl 14087 | 
. . . . 5
⊢ (𝑅 ∈ CRing → 𝐼 = (2Ideal‘𝑅)) | 
| 5 | 4 | adantr 276 | 
. . . 4
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝐼 = (2Ideal‘𝑅)) | 
| 6 | 2, 5 | eleqtrd 2275 | 
. . 3
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑆 ∈ (2Ideal‘𝑅)) | 
| 7 |   | quscrng.u | 
. . . 4
⊢ 𝑈 = (𝑅 /s (𝑅 ~QG 𝑆)) | 
| 8 |   | eqid 2196 | 
. . . 4
⊢
(2Ideal‘𝑅) =
(2Ideal‘𝑅) | 
| 9 | 7, 8 | qusring 14083 | 
. . 3
⊢ ((𝑅 ∈ Ring ∧ 𝑆 ∈ (2Ideal‘𝑅)) → 𝑈 ∈ Ring) | 
| 10 | 1, 6, 9 | syl2an2r 595 | 
. 2
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑈 ∈ Ring) | 
| 11 | 7 | a1i 9 | 
. . . . . . 7
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑈 = (𝑅 /s (𝑅 ~QG 𝑆))) | 
| 12 |   | eqidd 2197 | 
. . . . . . 7
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → (Base‘𝑅) = (Base‘𝑅)) | 
| 13 |   | eqgex 13351 | 
. . . . . . 7
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → (𝑅 ~QG 𝑆) ∈ V) | 
| 14 | 1 | adantr 276 | 
. . . . . . 7
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑅 ∈ Ring) | 
| 15 | 11, 12, 13, 14 | qusbas 12970 | 
. . . . . 6
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → ((Base‘𝑅) / (𝑅 ~QG 𝑆)) = (Base‘𝑈)) | 
| 16 | 15 | eleq2d 2266 | 
. . . . 5
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → (𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆)) ↔ 𝑥 ∈ (Base‘𝑈))) | 
| 17 | 15 | eleq2d 2266 | 
. . . . 5
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → (𝑦 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆)) ↔ 𝑦 ∈ (Base‘𝑈))) | 
| 18 | 16, 17 | anbi12d 473 | 
. . . 4
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → ((𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆)) ∧ 𝑦 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) ↔ (𝑥 ∈ (Base‘𝑈) ∧ 𝑦 ∈ (Base‘𝑈)))) | 
| 19 |   | eqid 2196 | 
. . . . . 6
⊢
((Base‘𝑅)
/ (𝑅
~QG 𝑆)) =
((Base‘𝑅) /
(𝑅 ~QG
𝑆)) | 
| 20 |   | oveq2 5930 | 
. . . . . . 7
⊢ ([𝑢](𝑅 ~QG 𝑆) = 𝑦 → (𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = (𝑥(.r‘𝑈)𝑦)) | 
| 21 |   | oveq1 5929 | 
. . . . . . 7
⊢ ([𝑢](𝑅 ~QG 𝑆) = 𝑦 → ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥) = (𝑦(.r‘𝑈)𝑥)) | 
| 22 | 20, 21 | eqeq12d 2211 | 
. . . . . 6
⊢ ([𝑢](𝑅 ~QG 𝑆) = 𝑦 → ((𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥) ↔ (𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥))) | 
| 23 |   | oveq1 5929 | 
. . . . . . . . 9
⊢ ([𝑣](𝑅 ~QG 𝑆) = 𝑥 → ([𝑣](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = (𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆))) | 
| 24 |   | oveq2 5930 | 
. . . . . . . . 9
⊢ ([𝑣](𝑅 ~QG 𝑆) = 𝑥 → ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑣](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥)) | 
| 25 | 23, 24 | eqeq12d 2211 | 
. . . . . . . 8
⊢ ([𝑣](𝑅 ~QG 𝑆) = 𝑥 → (([𝑣](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑣](𝑅 ~QG 𝑆)) ↔ (𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥))) | 
| 26 |   | eqid 2196 | 
. . . . . . . . . . . 12
⊢
(Base‘𝑅) =
(Base‘𝑅) | 
| 27 |   | eqid 2196 | 
. . . . . . . . . . . 12
⊢
(.r‘𝑅) = (.r‘𝑅) | 
| 28 | 26, 27 | crngcom 13570 | 
. . . . . . . . . . 11
⊢ ((𝑅 ∈ CRing ∧ 𝑢 ∈ (Base‘𝑅) ∧ 𝑣 ∈ (Base‘𝑅)) → (𝑢(.r‘𝑅)𝑣) = (𝑣(.r‘𝑅)𝑢)) | 
| 29 | 28 | ad4ant134 1219 | 
. . . . . . . . . 10
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → (𝑢(.r‘𝑅)𝑣) = (𝑣(.r‘𝑅)𝑢)) | 
| 30 | 29 | eceq1d 6628 | 
. . . . . . . . 9
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → [(𝑢(.r‘𝑅)𝑣)](𝑅 ~QG 𝑆) = [(𝑣(.r‘𝑅)𝑢)](𝑅 ~QG 𝑆)) | 
| 31 |   | ringrng 13592 | 
. . . . . . . . . . . . . 14
⊢ (𝑅 ∈ Ring → 𝑅 ∈ Rng) | 
| 32 | 1, 31 | syl 14 | 
. . . . . . . . . . . . 13
⊢ (𝑅 ∈ CRing → 𝑅 ∈ Rng) | 
| 33 | 32 | adantr 276 | 
. . . . . . . . . . . 12
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑅 ∈ Rng) | 
| 34 | 3 | lidlsubg 14042 | 
. . . . . . . . . . . . 13
⊢ ((𝑅 ∈ Ring ∧ 𝑆 ∈ 𝐼) → 𝑆 ∈ (SubGrp‘𝑅)) | 
| 35 | 1, 34 | sylan 283 | 
. . . . . . . . . . . 12
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑆 ∈ (SubGrp‘𝑅)) | 
| 36 | 33, 6, 35 | 3jca 1179 | 
. . . . . . . . . . 11
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → (𝑅 ∈ Rng ∧ 𝑆 ∈ (2Ideal‘𝑅) ∧ 𝑆 ∈ (SubGrp‘𝑅))) | 
| 37 | 36 | adantr 276 | 
. . . . . . . . . 10
⊢ (((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) → (𝑅 ∈ Rng ∧ 𝑆 ∈ (2Ideal‘𝑅) ∧ 𝑆 ∈ (SubGrp‘𝑅))) | 
| 38 |   | simpr 110 | 
. . . . . . . . . . 11
⊢ (((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) → 𝑢 ∈ (Base‘𝑅)) | 
| 39 | 38 | anim1i 340 | 
. . . . . . . . . 10
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → (𝑢 ∈ (Base‘𝑅) ∧ 𝑣 ∈ (Base‘𝑅))) | 
| 40 |   | eqid 2196 | 
. . . . . . . . . . 11
⊢ (𝑅 ~QG 𝑆) = (𝑅 ~QG 𝑆) | 
| 41 |   | eqid 2196 | 
. . . . . . . . . . 11
⊢
(.r‘𝑈) = (.r‘𝑈) | 
| 42 | 40, 7, 26, 27, 41 | qusmulrng 14088 | 
. . . . . . . . . 10
⊢ (((𝑅 ∈ Rng ∧ 𝑆 ∈ (2Ideal‘𝑅) ∧ 𝑆 ∈ (SubGrp‘𝑅)) ∧ (𝑢 ∈ (Base‘𝑅) ∧ 𝑣 ∈ (Base‘𝑅))) → ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑣](𝑅 ~QG 𝑆)) = [(𝑢(.r‘𝑅)𝑣)](𝑅 ~QG 𝑆)) | 
| 43 | 37, 39, 42 | syl2an2r 595 | 
. . . . . . . . 9
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑣](𝑅 ~QG 𝑆)) = [(𝑢(.r‘𝑅)𝑣)](𝑅 ~QG 𝑆)) | 
| 44 | 39 | ancomd 267 | 
. . . . . . . . . 10
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → (𝑣 ∈ (Base‘𝑅) ∧ 𝑢 ∈ (Base‘𝑅))) | 
| 45 | 40, 7, 26, 27, 41 | qusmulrng 14088 | 
. . . . . . . . . 10
⊢ (((𝑅 ∈ Rng ∧ 𝑆 ∈ (2Ideal‘𝑅) ∧ 𝑆 ∈ (SubGrp‘𝑅)) ∧ (𝑣 ∈ (Base‘𝑅) ∧ 𝑢 ∈ (Base‘𝑅))) → ([𝑣](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = [(𝑣(.r‘𝑅)𝑢)](𝑅 ~QG 𝑆)) | 
| 46 | 37, 44, 45 | syl2an2r 595 | 
. . . . . . . . 9
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → ([𝑣](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = [(𝑣(.r‘𝑅)𝑢)](𝑅 ~QG 𝑆)) | 
| 47 | 30, 43, 46 | 3eqtr4rd 2240 | 
. . . . . . . 8
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑣 ∈ (Base‘𝑅)) → ([𝑣](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)[𝑣](𝑅 ~QG 𝑆))) | 
| 48 | 19, 25, 47 | ectocld 6660 | 
. . . . . . 7
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑢 ∈ (Base‘𝑅)) ∧ 𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) → (𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥)) | 
| 49 | 48 | an32s 568 | 
. . . . . 6
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) ∧ 𝑢 ∈ (Base‘𝑅)) → (𝑥(.r‘𝑈)[𝑢](𝑅 ~QG 𝑆)) = ([𝑢](𝑅 ~QG 𝑆)(.r‘𝑈)𝑥)) | 
| 50 | 19, 22, 49 | ectocld 6660 | 
. . . . 5
⊢ ((((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) ∧ 𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) ∧ 𝑦 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) → (𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥)) | 
| 51 | 50 | expl 378 | 
. . . 4
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → ((𝑥 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆)) ∧ 𝑦 ∈ ((Base‘𝑅) / (𝑅 ~QG 𝑆))) → (𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥))) | 
| 52 | 18, 51 | sylbird 170 | 
. . 3
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → ((𝑥 ∈ (Base‘𝑈) ∧ 𝑦 ∈ (Base‘𝑈)) → (𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥))) | 
| 53 | 52 | ralrimivv 2578 | 
. 2
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → ∀𝑥 ∈ (Base‘𝑈)∀𝑦 ∈ (Base‘𝑈)(𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥)) | 
| 54 |   | eqid 2196 | 
. . 3
⊢
(Base‘𝑈) =
(Base‘𝑈) | 
| 55 | 54, 41 | iscrng2 13571 | 
. 2
⊢ (𝑈 ∈ CRing ↔ (𝑈 ∈ Ring ∧ ∀𝑥 ∈ (Base‘𝑈)∀𝑦 ∈ (Base‘𝑈)(𝑥(.r‘𝑈)𝑦) = (𝑦(.r‘𝑈)𝑥))) | 
| 56 | 10, 53, 55 | sylanbrc 417 | 
1
⊢ ((𝑅 ∈ CRing ∧ 𝑆 ∈ 𝐼) → 𝑈 ∈ CRing) |