ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  isring GIF version

Theorem isring 13556
Description: The predicate "is a (unital) ring". Definition of "ring with unit" in [Schechter] p. 187. (Contributed by NM, 18-Oct-2012.) (Revised by Mario Carneiro, 6-Jan-2015.)
Hypotheses
Ref Expression
isring.b 𝐵 = (Base‘𝑅)
isring.g 𝐺 = (mulGrp‘𝑅)
isring.p + = (+g𝑅)
isring.t · = (.r𝑅)
Assertion
Ref Expression
isring (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
Distinct variable groups:   𝑥,𝑦,𝑧,𝐵   𝑥, + ,𝑦,𝑧   𝑥,𝑅,𝑦,𝑧   𝑥, · ,𝑦,𝑧
Allowed substitution hints:   𝐺(𝑥,𝑦,𝑧)

Proof of Theorem isring
Dummy variables 𝑝 𝑏 𝑟 𝑡 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fveq2 5558 . . . . . 6 (𝑟 = 𝑅 → (mulGrp‘𝑟) = (mulGrp‘𝑅))
2 isring.g . . . . . 6 𝐺 = (mulGrp‘𝑅)
31, 2eqtr4di 2247 . . . . 5 (𝑟 = 𝑅 → (mulGrp‘𝑟) = 𝐺)
43eleq1d 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)
87funfni 5358 . . . . . . 7 ((Base Fn V ∧ 𝑟 ∈ V) → (Base‘𝑟) ∈ V)
95, 6, 8mp2an 426 . . . . . 6 (Base‘𝑟) ∈ V
109a1i 9 . . . . 5 (𝑟 = 𝑅 → (Base‘𝑟) ∈ V)
11 fveq2 5558 . . . . . 6 (𝑟 = 𝑅 → (Base‘𝑟) = (Base‘𝑅))
12 isring.b . . . . . 6 𝐵 = (Base‘𝑅)
1311, 12eqtr4di 2247 . . . . 5 (𝑟 = 𝑅 → (Base‘𝑟) = 𝐵)
14 plusgslid 12790 . . . . . . . . 9 (+g = Slot (+g‘ndx) ∧ (+g‘ndx) ∈ ℕ)
1514slotex 12705 . . . . . . . 8 (𝑟 ∈ V → (+g𝑟) ∈ V)
1615elv 2767 . . . . . . 7 (+g𝑟) ∈ V
1716a1i 9 . . . . . 6 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) ∈ V)
18 simpl 109 . . . . . . . 8 ((𝑟 = 𝑅𝑏 = 𝐵) → 𝑟 = 𝑅)
1918fveq2d 5562 . . . . . . 7 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) = (+g𝑅))
20 isring.p . . . . . . 7 + = (+g𝑅)
2119, 20eqtr4di 2247 . . . . . 6 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) = + )
22 mulrslid 12809 . . . . . . . . . 10 (.r = Slot (.r‘ndx) ∧ (.r‘ndx) ∈ ℕ)
2322slotex 12705 . . . . . . . . 9 (𝑟 ∈ V → (.r𝑟) ∈ V)
2423elv 2767 . . . . . . . 8 (.r𝑟) ∈ V
2524a1i 9 . . . . . . 7 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) ∈ V)
26 simpll 527 . . . . . . . . 9 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → 𝑟 = 𝑅)
2726fveq2d 5562 . . . . . . . 8 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) = (.r𝑅))
28 isring.t . . . . . . . 8 · = (.r𝑅)
2927, 28eqtr4di 2247 . . . . . . 7 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) = · )
30 simpllr 534 . . . . . . . 8 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑏 = 𝐵)
31 simpr 110 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑡 = · )
32 eqidd 2197 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑥 = 𝑥)
33 simplr 528 . . . . . . . . . . . . . 14 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑝 = + )
3433oveqd 5939 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑝𝑧) = (𝑦 + 𝑧))
3531, 32, 34oveq123d 5943 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡(𝑦𝑝𝑧)) = (𝑥 · (𝑦 + 𝑧)))
3631oveqd 5939 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑦) = (𝑥 · 𝑦))
3731oveqd 5939 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑧) = (𝑥 · 𝑧))
3833, 36, 37oveq123d 5943 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)))
3935, 38eqeq12d 2211 . . . . . . . . . . 11 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ↔ (𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧))))
4033oveqd 5939 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑝𝑦) = (𝑥 + 𝑦))
41 eqidd 2197 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑧 = 𝑧)
4231, 40, 41oveq123d 5943 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥 + 𝑦) · 𝑧))
4331oveqd 5939 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑡𝑧) = (𝑦 · 𝑧))
4433, 37, 43oveq123d 5943 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))
4542, 44eqeq12d 2211 . . . . . . . . . . 11 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) ↔ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))
4639, 45anbi12d 473 . . . . . . . . . 10 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4730, 46raleqbidv 2709 . . . . . . . . 9 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4830, 47raleqbidv 2709 . . . . . . . 8 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4930, 48raleqbidv 2709 . . . . . . 7 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
5025, 29, 49sbcied2 3027 . . . . . 6 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → ([(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
5117, 21, 50sbcied2 3027 . . . . 5 ((𝑟 = 𝑅𝑏 = 𝐵) → ([(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
5210, 13, 51sbcied2 3027 . . . 4 (𝑟 = 𝑅 → ([(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
534, 52anbi12d 473 . . 3 (𝑟 = 𝑅 → (((mulGrp‘𝑟) ∈ Mnd ∧ [(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)))) ↔ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
54 df-ring 13554 . . 3 Ring = {𝑟 ∈ Grp ∣ ((mulGrp‘𝑟) ∈ Mnd ∧ [(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))))}
5553, 54elrab2 2923 . 2 (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
56 3anass 984 . 2 ((𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))) ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
5755, 56bitr4i 187 1 (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
Colors of variables: wff set class
Syntax hints:  wa 104  wb 105  w3a 980   = wceq 1364  wcel 2167  wral 2475  Vcvv 2763  [wsbc 2989   Fn wfn 5253  cfv 5258  (class class class)co 5922  Basecbs 12678  +gcplusg 12755  .rcmulr 12756  Mndcmnd 13057  Grpcgrp 13132  mulGrpcmgp 13476  Ringcrg 13552
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-io 710  ax-5 1461  ax-7 1462  ax-gen 1463  ax-ie1 1507  ax-ie2 1508  ax-8 1518  ax-10 1519  ax-11 1520  ax-i12 1521  ax-bndl 1523  ax-4 1524  ax-17 1540  ax-i9 1544  ax-ial 1548  ax-i5r 1549  ax-13 2169  ax-14 2170  ax-ext 2178  ax-sep 4151  ax-pow 4207  ax-pr 4242  ax-un 4468  ax-cnex 7970  ax-resscn 7971  ax-1re 7973  ax-addrcl 7976
This theorem depends on definitions:  df-bi 117  df-3an 982  df-tru 1367  df-nf 1475  df-sb 1777  df-eu 2048  df-mo 2049  df-clab 2183  df-cleq 2189  df-clel 2192  df-nfc 2328  df-ral 2480  df-rex 2481  df-rab 2484  df-v 2765  df-sbc 2990  df-un 3161  df-in 3163  df-ss 3170  df-pw 3607  df-sn 3628  df-pr 3629  df-op 3631  df-uni 3840  df-int 3875  df-br 4034  df-opab 4095  df-mpt 4096  df-id 4328  df-xp 4669  df-rel 4670  df-cnv 4671  df-co 4672  df-dm 4673  df-rn 4674  df-res 4675  df-iota 5219  df-fun 5260  df-fn 5261  df-fv 5266  df-ov 5925  df-inn 8991  df-2 9049  df-3 9050  df-ndx 12681  df-slot 12682  df-base 12684  df-plusg 12768  df-mulr 12769  df-ring 13554
This theorem is referenced by:  ringgrp  13557  ringmgp  13558  ringdilem  13568  ringrng  13592  ringpropd  13594  isringd  13597  ringsrg  13603  ring1  13615
  Copyright terms: Public domain W3C validator