MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  isring Structured version   Visualization version   GIF version

Theorem isring 18374
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 6103 . . . . . 6 (𝑟 = 𝑅 → (mulGrp‘𝑟) = (mulGrp‘𝑅))
2 isring.g . . . . . 6 𝐺 = (mulGrp‘𝑅)
31, 2syl6eqr 2662 . . . . 5 (𝑟 = 𝑅 → (mulGrp‘𝑟) = 𝐺)
43eleq1d 2672 . . . 4 (𝑟 = 𝑅 → ((mulGrp‘𝑟) ∈ Mnd ↔ 𝐺 ∈ Mnd))
5 fvex 6113 . . . . . 6 (Base‘𝑟) ∈ V
65a1i 11 . . . . 5 (𝑟 = 𝑅 → (Base‘𝑟) ∈ V)
7 fveq2 6103 . . . . . 6 (𝑟 = 𝑅 → (Base‘𝑟) = (Base‘𝑅))
8 isring.b . . . . . 6 𝐵 = (Base‘𝑅)
97, 8syl6eqr 2662 . . . . 5 (𝑟 = 𝑅 → (Base‘𝑟) = 𝐵)
10 fvex 6113 . . . . . . 7 (+g𝑟) ∈ V
1110a1i 11 . . . . . 6 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) ∈ V)
12 simpl 472 . . . . . . . 8 ((𝑟 = 𝑅𝑏 = 𝐵) → 𝑟 = 𝑅)
1312fveq2d 6107 . . . . . . 7 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) = (+g𝑅))
14 isring.p . . . . . . 7 + = (+g𝑅)
1513, 14syl6eqr 2662 . . . . . 6 ((𝑟 = 𝑅𝑏 = 𝐵) → (+g𝑟) = + )
16 fvex 6113 . . . . . . . 8 (.r𝑟) ∈ V
1716a1i 11 . . . . . . 7 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) ∈ V)
18 simpll 786 . . . . . . . . 9 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → 𝑟 = 𝑅)
1918fveq2d 6107 . . . . . . . 8 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) = (.r𝑅))
20 isring.t . . . . . . . 8 · = (.r𝑅)
2119, 20syl6eqr 2662 . . . . . . 7 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → (.r𝑟) = · )
22 simpllr 795 . . . . . . . 8 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑏 = 𝐵)
23 simpr 476 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑡 = · )
24 eqidd 2611 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑥 = 𝑥)
25 simplr 788 . . . . . . . . . . . . . 14 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑝 = + )
2625oveqd 6566 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑝𝑧) = (𝑦 + 𝑧))
2723, 24, 26oveq123d 6570 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡(𝑦𝑝𝑧)) = (𝑥 · (𝑦 + 𝑧)))
2823oveqd 6566 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑦) = (𝑥 · 𝑦))
2923oveqd 6566 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑡𝑧) = (𝑥 · 𝑧))
3025, 28, 29oveq123d 6570 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)))
3127, 30eqeq12d 2625 . . . . . . . . . . 11 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ↔ (𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧))))
3225oveqd 6566 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑥𝑝𝑦) = (𝑥 + 𝑦))
33 eqidd 2611 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → 𝑧 = 𝑧)
3423, 32, 33oveq123d 6570 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥 + 𝑦) · 𝑧))
3523oveqd 6566 . . . . . . . . . . . . 13 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (𝑦𝑡𝑧) = (𝑦 · 𝑧))
3625, 29, 35oveq123d 6570 . . . . . . . . . . . 12 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))
3734, 36eqeq12d 2625 . . . . . . . . . . 11 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)) ↔ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))
3831, 37anbi12d 743 . . . . . . . . . 10 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
3922, 38raleqbidv 3129 . . . . . . . . 9 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4022, 39raleqbidv 3129 . . . . . . . 8 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4122, 40raleqbidv 3129 . . . . . . 7 ((((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) ∧ 𝑡 = · ) → (∀𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4217, 21, 41sbcied2 3440 . . . . . 6 (((𝑟 = 𝑅𝑏 = 𝐵) ∧ 𝑝 = + ) → ([(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
4311, 15, 42sbcied2 3440 . . . . 5 ((𝑟 = 𝑅𝑏 = 𝐵) → ([(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
446, 9, 43sbcied2 3440 . . . 4 (𝑟 = 𝑅 → ([(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))) ↔ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
454, 44anbi12d 743 . . 3 (𝑟 = 𝑅 → (((mulGrp‘𝑟) ∈ Mnd ∧ [(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧)))) ↔ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
46 df-ring 18372 . . 3 Ring = {𝑟 ∈ Grp ∣ ((mulGrp‘𝑟) ∈ Mnd ∧ [(Base‘𝑟) / 𝑏][(+g𝑟) / 𝑝][(.r𝑟) / 𝑡]𝑥𝑏𝑦𝑏𝑧𝑏 ((𝑥𝑡(𝑦𝑝𝑧)) = ((𝑥𝑡𝑦)𝑝(𝑥𝑡𝑧)) ∧ ((𝑥𝑝𝑦)𝑡𝑧) = ((𝑥𝑡𝑧)𝑝(𝑦𝑡𝑧))))}
4745, 46elrab2 3333 . 2 (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
48 3anass 1035 . 2 ((𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))) ↔ (𝑅 ∈ Grp ∧ (𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))))
4947, 48bitr4i 266 1 (𝑅 ∈ Ring ↔ (𝑅 ∈ Grp ∧ 𝐺 ∈ Mnd ∧ ∀𝑥𝐵𝑦𝐵𝑧𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧)))))
Colors of variables: wff setvar class
Syntax hints:  wb 195  wa 383  w3a 1031   = wceq 1475  wcel 1977  wral 2896  Vcvv 3173  [wsbc 3402  cfv 5804  (class class class)co 6549  Basecbs 15695  +gcplusg 15768  .rcmulr 15769  Mndcmnd 17117  Grpcgrp 17245  mulGrpcmgp 18312  Ringcrg 18370
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-nul 4717
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-sbc 3403  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-br 4584  df-iota 5768  df-fv 5812  df-ov 6552  df-ring 18372
This theorem is referenced by:  ringgrp  18375  ringmgp  18376  ringi  18383  ringpropd  18405  isringd  18408  ringsrg  18412  ring1  18425  prdsringd  18435  ringrng  41669  isringrng  41671  2zrngnring  41742  cznnring  41748
  Copyright terms: Public domain W3C validator