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

Theorem isdomn3 20600
Description: Nonzero elements form a multiplicative submonoid of any domain. (Contributed by Stefan O'Rear, 11-Sep-2015.)
Hypotheses
Ref Expression
isdomn3.b 𝐵 = (Base‘𝑅)
isdomn3.z 0 = (0g𝑅)
isdomn3.u 𝑈 = (mulGrp‘𝑅)
Assertion
Ref Expression
isdomn3 (𝑅 ∈ Domn ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))

Proof of Theorem isdomn3
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 isdomn3.b . . 3 𝐵 = (Base‘𝑅)
2 eqid 2729 . . 3 (.r𝑅) = (.r𝑅)
3 isdomn3.z . . 3 0 = (0g𝑅)
41, 2, 3isdomn 20590 . 2 (𝑅 ∈ Domn ↔ (𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
5 eqid 2729 . . . . . 6 (1r𝑅) = (1r𝑅)
65, 3isnzr 20399 . . . . 5 (𝑅 ∈ NzRing ↔ (𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ))
76anbi1i 624 . . . 4 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
8 anass 468 . . . 4 (((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
97, 8bitri 275 . . 3 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
101, 5ringidcl 20150 . . . . . . 7 (𝑅 ∈ Ring → (1r𝑅) ∈ 𝐵)
11 eldifsn 4737 . . . . . . . 8 ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ↔ ((1r𝑅) ∈ 𝐵 ∧ (1r𝑅) ≠ 0 ))
1211baibr 536 . . . . . . 7 ((1r𝑅) ∈ 𝐵 → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
1310, 12syl 17 . . . . . 6 (𝑅 ∈ Ring → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
141, 2ringcl 20135 . . . . . . . . . . . 12 ((𝑅 ∈ Ring ∧ 𝑥𝐵𝑦𝐵) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
15143expb 1120 . . . . . . . . . . 11 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
1615biantrurd 532 . . . . . . . . . 10 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 )))
17 eldifsn 4737 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 ))
1816, 17bitr4di 289 . . . . . . . . 9 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
1918imbi2d 340 . . . . . . . 8 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
20192ralbidva 3191 . . . . . . 7 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
21 con34b 316 . . . . . . . . 9 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
22 neanior 3018 . . . . . . . . . 10 ((𝑥0𝑦0 ) ↔ ¬ (𝑥 = 0𝑦 = 0 ))
23 df-ne 2926 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ¬ (𝑥(.r𝑅)𝑦) = 0 )
2422, 23imbi12i 350 . . . . . . . . 9 (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
2521, 24bitr4i 278 . . . . . . . 8 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
26252ralbii 3104 . . . . . . 7 (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
27 impexp 450 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
28 an4 656 . . . . . . . . . . . 12 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
29 eldifsn 4737 . . . . . . . . . . . . 13 (𝑥 ∈ (𝐵 ∖ { 0 }) ↔ (𝑥𝐵𝑥0 ))
30 eldifsn 4737 . . . . . . . . . . . . 13 (𝑦 ∈ (𝐵 ∖ { 0 }) ↔ (𝑦𝐵𝑦0 ))
3129, 30anbi12i 628 . . . . . . . . . . . 12 ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
3228, 31bitr4i 278 . . . . . . . . . . 11 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ (𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })))
3332imbi1i 349 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3427, 33bitr3i 277 . . . . . . . . 9 (((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
35342albii 1820 . . . . . . . 8 (∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
36 r2al 3165 . . . . . . . 8 (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
37 r2al 3165 . . . . . . . 8 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3835, 36, 373bitr4ri 304 . . . . . . 7 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3920, 26, 383bitr4g 314 . . . . . 6 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
4013, 39anbi12d 632 . . . . 5 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
41 isdomn3.u . . . . . . 7 𝑈 = (mulGrp‘𝑅)
4241ringmgp 20124 . . . . . 6 (𝑅 ∈ Ring → 𝑈 ∈ Mnd)
4341, 1mgpbas 20030 . . . . . . . . 9 𝐵 = (Base‘𝑈)
4441, 5ringidval 20068 . . . . . . . . 9 (1r𝑅) = (0g𝑈)
4541, 2mgpplusg 20029 . . . . . . . . 9 (.r𝑅) = (+g𝑈)
4643, 44, 45issubm 18677 . . . . . . . 8 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
47 3anass 1094 . . . . . . . 8 (((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
4846, 47bitrdi 287 . . . . . . 7 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))))
49 difss 4087 . . . . . . . 8 (𝐵 ∖ { 0 }) ⊆ 𝐵
5049biantrur 530 . . . . . . 7 (((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5148, 50bitr4di 289 . . . . . 6 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5242, 51syl 17 . . . . 5 (𝑅 ∈ Ring → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5340, 52bitr4d 282 . . . 4 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
5453pm5.32i 574 . . 3 ((𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
559, 54bitri 275 . 2 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
564, 55bitri 275 1 (𝑅 ∈ Domn ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395  wo 847  w3a 1086  wal 1538   = wceq 1540  wcel 2109  wne 2925  wral 3044  cdif 3900  wss 3903  {csn 4577  cfv 6482  (class class class)co 7349  Basecbs 17120  .rcmulr 17162  0gc0g 17343  Mndcmnd 18608  SubMndcsubmnd 18656  mulGrpcmgp 20025  1rcur 20066  Ringcrg 20118  NzRingcnzr 20397  Domncdomn 20577
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671  ax-cnex 11065  ax-resscn 11066  ax-1cn 11067  ax-icn 11068  ax-addcl 11069  ax-addrcl 11070  ax-mulcl 11071  ax-mulrcl 11072  ax-mulcom 11073  ax-addass 11074  ax-mulass 11075  ax-distr 11076  ax-i2m1 11077  ax-1ne0 11078  ax-1rid 11079  ax-rnegex 11080  ax-rrecex 11081  ax-cnre 11082  ax-pre-lttri 11083  ax-pre-lttrn 11084  ax-pre-ltadd 11085  ax-pre-mulgt0 11086
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-rmo 3343  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-er 8625  df-en 8873  df-dom 8874  df-sdom 8875  df-pnf 11151  df-mnf 11152  df-xr 11153  df-ltxr 11154  df-le 11155  df-sub 11349  df-neg 11350  df-nn 12129  df-2 12191  df-sets 17075  df-slot 17093  df-ndx 17105  df-base 17121  df-plusg 17174  df-0g 17345  df-mgm 18514  df-sgrp 18593  df-mnd 18609  df-submnd 18658  df-mgp 20026  df-ur 20067  df-ring 20120  df-nzr 20398  df-domn 20580
This theorem is referenced by:  fracfld  33247  zringfrac  33491  deg1mhm  43173
  Copyright terms: Public domain W3C validator