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

Theorem isdomn3 20863
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 2765 . . 3 (.r𝑅) = (.r𝑅)
3 isdomn3.z . . 3 0 = (0g𝑅)
41, 2, 3isdomn 20854 . 2 (𝑅 ∈ Domn ↔ (𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
5 eqid 2765 . . . . . 6 (1r𝑅) = (1r𝑅)
65, 3isnzr 20661 . . . . 5 (𝑅 ∈ NzRing ↔ (𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ))
76anbi1i 636 . . . 4 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))))
8 anass 474 . . . 4 (((𝑅 ∈ Ring ∧ (1r𝑅) ≠ 0 ) ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
97, 8bitri 278 . . 3 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))))
101, 5ringidcl 20393 . . . . . . 7 (𝑅 ∈ Ring → (1r𝑅) ∈ 𝐵)
11 eldifsn 4755 . . . . . . . 8 ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ↔ ((1r𝑅) ∈ 𝐵 ∧ (1r𝑅) ≠ 0 ))
1211baibr 546 . . . . . . 7 ((1r𝑅) ∈ 𝐵 → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
1310, 12syl 18 . . . . . 6 (𝑅 ∈ Ring → ((1r𝑅) ≠ 0 ↔ (1r𝑅) ∈ (𝐵 ∖ { 0 })))
141, 2ringcl 20376 . . . . . . . . . . . 12 ((𝑅 ∈ Ring ∧ 𝑥𝐵𝑦𝐵) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
15143expb 1138 . . . . . . . . . . 11 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (𝑥(.r𝑅)𝑦) ∈ 𝐵)
1615biantrurd 542 . . . . . . . . . 10 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 )))
17 eldifsn 4755 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ((𝑥(.r𝑅)𝑦) ∈ 𝐵 ∧ (𝑥(.r𝑅)𝑦) ≠ 0 ))
1816, 17bitr4di 292 . . . . . . . . 9 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
1918imbi2d 343 . . . . . . . 8 ((𝑅 ∈ Ring ∧ (𝑥𝐵𝑦𝐵)) → (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
20192ralbidva 3229 . . . . . . 7 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
21 con34b 319 . . . . . . . . 9 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
22 neanior 3053 . . . . . . . . . 10 ((𝑥0𝑦0 ) ↔ ¬ (𝑥 = 0𝑦 = 0 ))
23 df-ne 2961 . . . . . . . . . 10 ((𝑥(.r𝑅)𝑦) ≠ 0 ↔ ¬ (𝑥(.r𝑅)𝑦) = 0 )
2422, 23imbi12i 353 . . . . . . . . 9 (((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ) ↔ (¬ (𝑥 = 0𝑦 = 0 ) → ¬ (𝑥(.r𝑅)𝑦) = 0 ))
2521, 24bitr4i 281 . . . . . . . 8 (((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
26252ralbii 3142 . . . . . . 7 (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ≠ 0 ))
27 impexp 456 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
28 an4 669 . . . . . . . . . . . 12 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
29 eldifsn 4755 . . . . . . . . . . . . 13 (𝑥 ∈ (𝐵 ∖ { 0 }) ↔ (𝑥𝐵𝑥0 ))
30 eldifsn 4755 . . . . . . . . . . . . 13 (𝑦 ∈ (𝐵 ∖ { 0 }) ↔ (𝑦𝐵𝑦0 ))
3129, 30anbi12i 640 . . . . . . . . . . . 12 ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥𝐵𝑥0 ) ∧ (𝑦𝐵𝑦0 )))
3228, 31bitr4i 281 . . . . . . . . . . 11 (((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) ↔ (𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })))
3332imbi1i 352 . . . . . . . . . 10 ((((𝑥𝐵𝑦𝐵) ∧ (𝑥0𝑦0 )) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3427, 33bitr3i 280 . . . . . . . . 9 (((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
35342albii 1853 . . . . . . . 8 (∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
36 r2al 3203 . . . . . . . 8 (∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ∀𝑥𝑦((𝑥𝐵𝑦𝐵) → ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
37 r2al 3203 . . . . . . . 8 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝑦((𝑥 ∈ (𝐵 ∖ { 0 }) ∧ 𝑦 ∈ (𝐵 ∖ { 0 })) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3835, 36, 373bitr4ri 307 . . . . . . 7 (∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }) ↔ ∀𝑥𝐵𝑦𝐵 ((𝑥0𝑦0 ) → (𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
3920, 26, 383bitr4g 317 . . . . . 6 (𝑅 ∈ Ring → (∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )) ↔ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))
4013, 39anbi12d 644 . . . . 5 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
41 isdomn3.u . . . . . . 7 𝑈 = (mulGrp‘𝑅)
4241ringmgp 20365 . . . . . 6 (𝑅 ∈ Ring → 𝑈 ∈ Mnd)
4341, 1mgpbas 20265 . . . . . . . . 9 𝐵 = (Base‘𝑈)
4441, 5ringidval 20309 . . . . . . . . 9 (1r𝑅) = (0g𝑈)
4541, 2mgpplusg 20264 . . . . . . . . 9 (.r𝑅) = (+g𝑈)
4643, 44, 45issubm 18898 . . . . . . . 8 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
47 3anass 1111 . . . . . . . 8 (((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ (1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
4846, 47bitrdi 290 . . . . . . 7 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })))))
49 difss 4090 . . . . . . . 8 (𝐵 ∖ { 0 }) ⊆ 𝐵
5049biantrur 540 . . . . . . 7 (((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 })) ↔ ((𝐵 ∖ { 0 }) ⊆ 𝐵 ∧ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5148, 50bitr4di 292 . . . . . 6 (𝑈 ∈ Mnd → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5242, 51syl 18 . . . . 5 (𝑅 ∈ Ring → ((𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈) ↔ ((1r𝑅) ∈ (𝐵 ∖ { 0 }) ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∀𝑦 ∈ (𝐵 ∖ { 0 })(𝑥(.r𝑅)𝑦) ∈ (𝐵 ∖ { 0 }))))
5340, 52bitr4d 285 . . . 4 (𝑅 ∈ Ring → (((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
5453pm5.32i 585 . . 3 ((𝑅 ∈ Ring ∧ ((1r𝑅) ≠ 0 ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 )))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
559, 54bitri 278 . 2 ((𝑅 ∈ NzRing ∧ ∀𝑥𝐵𝑦𝐵 ((𝑥(.r𝑅)𝑦) = 0 → (𝑥 = 0𝑦 = 0 ))) ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
564, 55bitri 278 1 (𝑅 ∈ Domn ↔ (𝑅 ∈ Ring ∧ (𝐵 ∖ { 0 }) ∈ (SubMnd‘𝑈)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861  w3a 1103  wal 1568   = wceq 1570  wcel 2146  wne 2960  wral 3081  cdif 3903  wss 3906  {csn 4591  cfv 6540  (class class class)co 7419  Basecbs 17291  .rcmulr 17333  0gc0g 17514  Mndcmnd 18824  SubMndcsubmnd 18877  mulGrpcmgp 20260  1rcur 20307  Ringcrg 20359  NzRingcnzr 20659  Domncdomn 20841
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7742  ax-cnex 11171  ax-resscn 11172  ax-1cn 11173  ax-icn 11174  ax-addcl 11175  ax-addrcl 11176  ax-mulcl 11177  ax-mulrcl 11178  ax-mulcom 11179  ax-addass 11180  ax-mulass 11181  ax-distr 11182  ax-i2m1 11183  ax-1ne0 11184  ax-1rid 11185  ax-rnegex 11186  ax-rrecex 11187  ax-cnre 11188  ax-pre-lttri 11189  ax-pre-lttrn 11190  ax-pre-ltadd 11191  ax-pre-mulgt0 11192
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-rmo 3371  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-riota 7376  df-ov 7422  df-oprab 7423  df-mpo 7424  df-om 7869  df-2nd 7993  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-er 8700  df-en 8950  df-dom 8951  df-sdom 8952  df-pnf 11260  df-mnf 11261  df-xr 11262  df-ltxr 11263  df-le 11264  df-sub 11458  df-neg 11459  df-nn 12249  df-2 12318  df-sets 17246  df-slot 17264  df-ndx 17276  df-base 17292  df-plusg 17345  df-0g 17516  df-mgm 18720  df-sgrp 18809  df-mnd 18825  df-submnd 18879  df-mgp 20261  df-ur 20308  df-ring 20361  df-nzr 20660  df-domn 20844
This theorem is used by:  fracfld  33693  zringfrac  33908  deg1mhm  43985
  Copyright terms: Public domain W3C validator