| Step | Hyp | Ref
 | Expression | 
| 1 |   | fveq2 5558 | 
. . . . . 6
⊢ (𝑟 = 𝑅 → (mulGrp‘𝑟) = (mulGrp‘𝑅)) | 
| 2 |   | isring.g | 
. . . . . 6
⊢ 𝐺 = (mulGrp‘𝑅) | 
| 3 | 1, 2 | eqtr4di 2247 | 
. . . . 5
⊢ (𝑟 = 𝑅 → (mulGrp‘𝑟) = 𝐺) | 
| 4 | 3 | eleq1d 2265 | 
. . . 4
⊢ (𝑟 = 𝑅 → ((mulGrp‘𝑟) ∈ Mnd ↔ 𝐺 ∈ Mnd)) | 
| 5 |   | basfn 12736 | 
. . . . . . 7
⊢ Base Fn
V | 
| 6 |   | vex 2766 | 
. . . . . . 7
⊢ 𝑟 ∈ V | 
| 7 |   | funfvex 5575 | 
. . . . . . . 8
⊢ ((Fun
Base ∧ 𝑟 ∈ dom
Base) → (Base‘𝑟)
∈ V) | 
| 8 | 7 | funfni 5358 | 
. . . . . . 7
⊢ ((Base Fn
V ∧ 𝑟 ∈ V) →
(Base‘𝑟) ∈
V) | 
| 9 | 5, 6, 8 | mp2an 426 | 
. . . . . 6
⊢
(Base‘𝑟)
∈ V | 
| 10 | 9 | a1i 9 | 
. . . . 5
⊢ (𝑟 = 𝑅 → (Base‘𝑟) ∈ V) | 
| 11 |   | fveq2 5558 | 
. . . . . 6
⊢ (𝑟 = 𝑅 → (Base‘𝑟) = (Base‘𝑅)) | 
| 12 |   | isring.b | 
. . . . . 6
⊢ 𝐵 = (Base‘𝑅) | 
| 13 | 11, 12 | eqtr4di 2247 | 
. . . . 5
⊢ (𝑟 = 𝑅 → (Base‘𝑟) = 𝐵) | 
| 14 |   | plusgslid 12790 | 
. . . . . . . . 9
⊢
(+g = Slot (+g‘ndx) ∧
(+g‘ndx) ∈ ℕ) | 
| 15 | 14 | slotex 12705 | 
. . . . . . . 8
⊢ (𝑟 ∈ V →
(+g‘𝑟)
∈ V) | 
| 16 | 15 | elv 2767 | 
. . . . . . 7
⊢
(+g‘𝑟) ∈ V | 
| 17 | 16 | a1i 9 | 
. . . . . 6
⊢ ((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) → (+g‘𝑟) ∈ V) | 
| 18 |   | simpl 109 | 
. . . . . . . 8
⊢ ((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) → 𝑟 = 𝑅) | 
| 19 | 18 | fveq2d 5562 | 
. . . . . . 7
⊢ ((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) → (+g‘𝑟) = (+g‘𝑅)) | 
| 20 |   | isring.p | 
. . . . . . 7
⊢  + =
(+g‘𝑅) | 
| 21 | 19, 20 | eqtr4di 2247 | 
. . . . . 6
⊢ ((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) → (+g‘𝑟) = + ) | 
| 22 |   | mulrslid 12809 | 
. . . . . . . . . 10
⊢
(.r = Slot (.r‘ndx) ∧
(.r‘ndx) ∈ ℕ) | 
| 23 | 22 | slotex 12705 | 
. . . . . . . . 9
⊢ (𝑟 ∈ V →
(.r‘𝑟)
∈ V) | 
| 24 | 23 | elv 2767 | 
. . . . . . . 8
⊢
(.r‘𝑟) ∈ V | 
| 25 | 24 | a1i 9 | 
. . . . . . 7
⊢ (((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) →
(.r‘𝑟)
∈ V) | 
| 26 |   | simpll 527 | 
. . . . . . . . 9
⊢ (((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) → 𝑟 = 𝑅) | 
| 27 | 26 | fveq2d 5562 | 
. . . . . . . 8
⊢ (((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) →
(.r‘𝑟) =
(.r‘𝑅)) | 
| 28 |   | isring.t | 
. . . . . . . 8
⊢  · =
(.r‘𝑅) | 
| 29 | 27, 28 | eqtr4di 2247 | 
. . . . . . 7
⊢ (((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) →
(.r‘𝑟) =
·
) | 
| 30 |   | simpllr 534 | 
. . . . . . . 8
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑏 = 𝐵) | 
| 31 |   | simpr 110 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑡 = · ) | 
| 32 |   | eqidd 2197 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑥 = 𝑥) | 
| 33 |   | simplr 528 | 
. . . . . . . . . . . . . 14
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑝 = + ) | 
| 34 | 33 | oveqd 5939 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑝𝑧) = (𝑦 + 𝑧)) | 
| 35 | 31, 32, 34 | oveq123d 5943 | 
. . . . . . . . . . . 12
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡(𝑦𝑝𝑧)) = (𝑥 · (𝑦 + 𝑧))) | 
| 36 | 31 | oveqd 5939 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑦) = (𝑥 · 𝑦)) | 
| 37 | 31 | oveqd 5939 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑧) = (𝑥 · 𝑧)) | 
| 38 | 33, 36, 37 | oveq123d 5943 | 
. . . . . . . . . . . 12
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧))) | 
| 39 | 35, 38 | eqeq12d 2211 | 
. . . . . . . . . . 11
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ↔ (𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)))) | 
| 40 | 33 | oveqd 5939 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑝𝑦) = (𝑥 + 𝑦)) | 
| 41 |   | eqidd 2197 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑧 = 𝑧) | 
| 42 | 31, 40, 41 | oveq123d 5943 | 
. . . . . . . . . . . 12
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥 + 𝑦) · 𝑧)) | 
| 43 | 31 | oveqd 5939 | 
. . . . . . . . . . . . 13
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑡𝑧) = (𝑦 · 𝑧)) | 
| 44 | 33, 37, 43 | oveq123d 5943 | 
. . . . . . . . . . . 12
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))) | 
| 45 | 42, 44 | eqeq12d 2211 | 
. . . . . . . . . . 11
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) ↔ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))) | 
| 46 | 39, 45 | anbi12d 473 | 
. . . . . . . . . 10
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 47 | 30, 46 | raleqbidv 2709 | 
. . . . . . . . 9
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) →
(∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 48 | 30, 47 | raleqbidv 2709 | 
. . . . . . . 8
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) →
(∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 49 | 30, 48 | raleqbidv 2709 | 
. . . . . . 7
⊢ ((((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) →
(∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 50 | 25, 29, 49 | sbcied2 3027 | 
. . . . . 6
⊢ (((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) ∧ 𝑝 = + ) →
([(.r‘𝑟) / 𝑡]∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 51 | 17, 21, 50 | sbcied2 3027 | 
. . . . 5
⊢ ((𝑟 = 𝑅 ∧ 𝑏 = 𝐵) → ([(+g‘𝑟) / 𝑝][(.r‘𝑟) / 𝑡]∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 52 | 10, 13, 51 | sbcied2 3027 | 
. . . 4
⊢ (𝑟 = 𝑅 → ([(Base‘𝑟) / 𝑏][(+g‘𝑟) / 𝑝][(.r‘𝑟) / 𝑡]∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | 
| 53 | 4, 52 | anbi12d 473 | 
. . 3
⊢ (𝑟 = 𝑅 → (((mulGrp‘𝑟) ∈ Mnd ∧ [(Base‘𝑟) / 𝑏][(+g‘𝑟) / 𝑝][(.r‘𝑟) / 𝑡]∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)))) ↔ (𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))) | 
| 54 |   | df-ring 13554 | 
. . 3
⊢ Ring =
{𝑟 ∈ Grp ∣
((mulGrp‘𝑟) ∈
Mnd ∧ [(Base‘𝑟) / 𝑏][(+g‘𝑟) / 𝑝][(.r‘𝑟) / 𝑡]∀𝑥 ∈ 𝑏 ∀𝑦 ∈ 𝑏 ∀𝑧 ∈ 𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))))} | 
| 55 | 53, 54 | elrab2 2923 | 
. 2
⊢ (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))) | 
| 56 |   | 3anass 984 | 
. 2
⊢ ((𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))) ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))) | 
| 57 | 55, 56 | bitr4i 187 | 
1
⊢ (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) |