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

Theorem isdomn3 20687
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 2739 . . 3 (.r𝑅) = (.r𝑅)
3 isdomn3.z . . 3 0 = (0g𝑅)
41, 2, 3isdomn 20677 . 2 (𝑅 ∈ Domn ↔ (𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
5 eqid 2739 . . . . . 6 (1r𝑅) = (1r𝑅)
65, 3isnzr 20486 . . . . 5 (𝑅 ∈ NzRing ↔ (𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ))
76anbi1i 630 . . . 4 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
8 anass 469 . . . 4 (((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
97, 8bitri 276 . . 3 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
101, 5ringidcl 20237 . . . . . . 7 (𝑅 ∈ Ring → (1r𝑅) ∈ 𝐵)
11 eldifsn 4719 . . . . . . . 8 ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ↔ ((1r𝑅) ∈ 𝐵 ∧ (1r𝑅) ≠ 0 ))
1211baibr 541 . . . . . . 7 ((1r𝑅) ∈ 𝐵 → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
1310, 12syl 17 . . . . . 6 (𝑅 ∈ Ring → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
141, 2ringcl 20222 . . . . . . . . . . . 12 ((𝑅 ∈ Ring ∧ 𝑥𝐵𝑦𝐵) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
15143expb 1126 . . . . . . . . . . 11 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
1615biantrurd 537 . . . . . . . . . 10 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 )))
17 eldifsn 4719 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 ))
1816, 17bitr4di 290 . . . . . . . . 9 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
1918imbi2d 341 . . . . . . . 8 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
20192ralbidva 3201 . . . . . . 7 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
21 con34b 317 . . . . . . . . 9 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
22 neanior 3027 . . . . . . . . . 10 ((𝑥0𝑦0 ) ↔ ¬ (𝑥 = 0𝑦 = 0 ))
23 df-ne 2935 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ¬ (𝑥(.r𝑅)𝑦) = 0 )
2422, 23imbi12i 351 . . . . . . . . 9 (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
2521, 24bitr4i 279 . . . . . . . 8 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
26252ralbii 3114 . . . . . . 7 (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
27 impexp 451 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
28 an4 662 . . . . . . . . . . . 12 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
29 eldifsn 4719 . . . . . . . . . . . . 13 (𝑥 ∈ (𝐵 ∖ { 0 }) ↔ (𝑥𝐵𝑥0 ))
30 eldifsn 4719 . . . . . . . . . . . . 13 (𝑦 ∈ (𝐵 ∖ { 0 }) ↔ (𝑦𝐵𝑦0 ))
3129, 30anbi12i 634 . . . . . . . . . . . 12 ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
3228, 31bitr4i 279 . . . . . . . . . . 11 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ (𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })))
3332imbi1i 350 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3427, 33bitr3i 278 . . . . . . . . 9 (((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
35342albii 1827 . . . . . . . 8 (∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
36 r2al 3175 . . . . . . . 8 (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
37 r2al 3175 . . . . . . . 8 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3835, 36, 373bitr4ri 305 . . . . . . 7 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3920, 26, 383bitr4g 315 . . . . . 6 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
4013, 39anbi12d 638 . . . . 5 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
41 isdomn3.u . . . . . . 7 𝑈 = (mulGrp‘𝑅)
4241ringmgp 20211 . . . . . 6 (𝑅 ∈ Ring → 𝑈 ∈ Mnd)
4341, 1mgpbas 20117 . . . . . . . . 9 𝐵 = (Base‘𝑈)
4441, 5ringidval 20155 . . . . . . . . 9 (1r𝑅) = (0g𝑈)
4541, 2mgpplusg 20116 . . . . . . . . 9 (.r𝑅) = (+g𝑈)
4643, 44, 45issubm 18762 . . . . . . . 8 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
47 3anass 1100 . . . . . . . 8 (((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
4846, 47bitrdi 288 . . . . . . 7 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))))
49 difss 4066 . . . . . . . 8 (𝐵 ∖ { 0 }) ⊆ 𝐵
5049biantrur 535 . . . . . . 7 (((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5148, 50bitr4di 290 . . . . . 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 283 . . . 4 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
5453pm5.32i 579 . . 3 ((𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
559, 54bitri 276 . 2 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
564, 55bitri 276 1 (𝑅 ∈ Domn ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 207  wa 396  wo 853  w3a 1092  wal 1545   = wceq 1547  wcel 2119  wne 2934  wral 3053  cdif 3880  wss 3883  {csn 4555  cfv 6485  (class class class)co 7356  Basecbs 17170  .rcmulr 17212  0gc0g 17393  Mndcmnd 18693  SubMndcsubmnd 18741  mulGrpcmgp 20112  1rcur 20153  Ringcrg 20205  NzRingcnzr 20484  Domncdomn 20664
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2711  ax-sep 5218  ax-nul 5228  ax-pow 5294  ax-pr 5362  ax-un 7678  ax-cnex 11085  ax-resscn 11086  ax-1cn 11087  ax-icn 11088  ax-addcl 11089  ax-addrcl 11090  ax-mulcl 11091  ax-mulrcl 11092  ax-mulcom 11093  ax-addass 11094  ax-mulass 11095  ax-distr 11096  ax-i2m1 11097  ax-1ne0 11098  ax-1rid 11099  ax-rnegex 11100  ax-rrecex 11101  ax-cnre 11102  ax-pre-lttri 11103  ax-pre-lttrn 11104  ax-pre-ltadd 11105  ax-pre-mulgt0 11106
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3or 1093  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2718  df-cleq 2731  df-clel 2814  df-nfc 2888  df-ne 2935  df-nel 3039  df-ral 3054  df-rex 3064  df-rmo 3344  df-reu 3345  df-rab 3392  df-v 3433  df-sbc 3724  df-csb 3832  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3903  df-nul 4262  df-if 4455  df-pw 4531  df-sn 4556  df-pr 4558  df-op 4562  df-uni 4839  df-iun 4923  df-br 5073  df-opab 5135  df-mpt 5154  df-tr 5180  df-id 5513  df-eprel 5518  df-po 5526  df-so 5527  df-fr 5571  df-we 5573  df-xp 5624  df-rel 5625  df-cnv 5626  df-co 5627  df-dm 5628  df-rn 5629  df-res 5630  df-ima 5631  df-pred 6252  df-ord 6313  df-on 6314  df-lim 6315  df-suc 6316  df-iota 6441  df-fun 6487  df-fn 6488  df-f 6489  df-f1 6490  df-fo 6491  df-f1o 6492  df-fv 6493  df-riota 7313  df-ov 7359  df-oprab 7360  df-mpo 7361  df-om 7807  df-2nd 7932  df-frecs 8221  df-wrecs 8252  df-recs 8301  df-rdg 8339  df-er 8633  df-en 8884  df-dom 8885  df-sdom 8886  df-pnf 11172  df-mnf 11173  df-xr 11174  df-ltxr 11175  df-le 11176  df-sub 11370  df-neg 11371  df-nn 12166  df-2 12235  df-sets 17125  df-slot 17143  df-ndx 17155  df-base 17171  df-plusg 17224  df-0g 17395  df-mgm 18599  df-sgrp 18678  df-mnd 18694  df-submnd 18743  df-mgp 20113  df-ur 20154  df-ring 20207  df-nzr 20485  df-domn 20667
This theorem is referenced by:  fracfld  33392  zringfrac  33637  deg1mhm  43645
  Copyright terms: Public domain W3C validator