Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  rngosn3 Structured version   Visualization version   GIF version

Theorem rngosn3 38858
Description: Obsolete as of 25-Jan-2020. Use ring1zr 21034 or srg1zr 20441 instead. The only unital ring with a base set consisting in one element is the zero ring. (Contributed by FL, 13-Feb-2010.) (Proof shortened by Mario Carneiro, 30-Apr-2015.) (New usage is discouraged.) (Proof modification is discouraged.)
Hypotheses
Ref Expression
on1el3.1 𝐺 = (1st ‘𝑅)
on1el3.2 𝑋 = ran 𝐺
Assertion
Ref Expression
rngosn3 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ 𝑅 = ⟨{⟨⟨𝐴, 𝐴⟩, 𝐴⟩}, {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}⟩))

Proof of Theorem rngosn3
StepHypRef Expression
1 on1el3.1 . . . . . . . . . 10 𝐺 = (1st ‘𝑅)
21rngogrpo 38844 . . . . . . . . 9 (𝑅 ∈ RingOps → 𝐺 ∈ GrpOp)
3 on1el3.2 . . . . . . . . . 10 𝑋 = ran 𝐺
43grpofo 31101 . . . . . . . . 9 (𝐺 ∈ GrpOp → 𝐺:(𝑋 × 𝑋)–onto→𝑋)
5 fof 6796 . . . . . . . . 9 (𝐺:(𝑋 × 𝑋)–onto→𝑋 → 𝐺:(𝑋 × 𝑋)⟶𝑋)
62, 4, 53syl 19 . . . . . . . 8 (𝑅 ∈ RingOps → 𝐺:(𝑋 × 𝑋)⟶𝑋)
76adantr 486 . . . . . . 7 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → 𝐺:(𝑋 × 𝑋)⟶𝑋)
8 id 23 . . . . . . . . 9 (𝑋 = {𝐴} → 𝑋 = {𝐴})
98sqxpeqd 5683 . . . . . . . 8 (𝑋 = {𝐴} → (𝑋 × 𝑋) = ({𝐴} × {𝐴}))
109, 8feq23d 6704 . . . . . . 7 (𝑋 = {𝐴} → (𝐺:(𝑋 × 𝑋)⟶𝑋 ↔ 𝐺:({𝐴} × {𝐴})⟶{𝐴}))
117, 10syl5ibcom 248 . . . . . 6 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} → 𝐺:({𝐴} × {𝐴})⟶{𝐴}))
127fdmd 6720 . . . . . . . . 9 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → dom 𝐺 = (𝑋 × 𝑋))
1312eqcomd 2767 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 × 𝑋) = dom 𝐺)
14 fdm 6719 . . . . . . . . 9 (𝐺:({𝐴} × {𝐴})⟶{𝐴} → dom 𝐺 = ({𝐴} × {𝐴}))
1514eqeq2d 2772 . . . . . . . 8 (𝐺:({𝐴} × {𝐴})⟶{𝐴} → ((𝑋 × 𝑋) = dom 𝐺 ↔ (𝑋 × 𝑋) = ({𝐴} × {𝐴})))
1613, 15syl5ibcom 248 . . . . . . 7 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝐺:({𝐴} × {𝐴})⟶{𝐴} → (𝑋 × 𝑋) = ({𝐴} × {𝐴})))
17 xpid11 5914 . . . . . . 7 ((𝑋 × 𝑋) = ({𝐴} × {𝐴}) ↔ 𝑋 = {𝐴})
1816, 17imbitrdi 254 . . . . . 6 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝐺:({𝐴} × {𝐴})⟶{𝐴} → 𝑋 = {𝐴}))
1911, 18impbid 215 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ 𝐺:({𝐴} × {𝐴})⟶{𝐴}))
20 simpr 490 . . . . . . 7 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → 𝐴 ∈ 𝐵)
21 xpsng 7140 . . . . . . 7 ((𝐴 ∈ 𝐵 ∧ 𝐴 ∈ 𝐵) → ({𝐴} × {𝐴}) = {⟨𝐴, 𝐴⟩})
2220, 21sylancom 600 . . . . . 6 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → ({𝐴} × {𝐴}) = {⟨𝐴, 𝐴⟩})
2322feq2d 6693 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝐺:({𝐴} × {𝐴})⟶{𝐴} ↔ 𝐺:{⟨𝐴, 𝐴⟩}⟶{𝐴}))
24 opex 5432 . . . . . 6 ⟨𝐴, 𝐴⟩ ∈ V
25 fsng 7138 . . . . . 6 ((⟨𝐴, 𝐴⟩ ∈ V ∧ 𝐴 ∈ 𝐵) → (𝐺:{⟨𝐴, 𝐴⟩}⟶{𝐴} ↔ 𝐺 = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
2624, 20, 25sylancr 599 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝐺:{⟨𝐴, 𝐴⟩}⟶{𝐴} ↔ 𝐺 = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
2719, 23, 263bitrd 308 . . . 4 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ 𝐺 = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
281eqeq1i 2766 . . . 4 (𝐺 = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩} ↔ (1st ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩})
2927, 28bitrdi 290 . . 3 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ (1st ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
3029anbi1d 643 . 2 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → ((𝑋 = {𝐴} ∧ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}) ↔ ((1st ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩} ∧ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩})))
31 eqid 2761 . . . . . . 7 (2nd ‘𝑅) = (2nd ‘𝑅)
321, 31, 3rngosm 38834 . . . . . 6 (𝑅 ∈ RingOps → (2nd ‘𝑅):(𝑋 × 𝑋)⟶𝑋)
3332adantr 486 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (2nd ‘𝑅):(𝑋 × 𝑋)⟶𝑋)
349, 8feq23d 6704 . . . . 5 (𝑋 = {𝐴} → ((2nd ‘𝑅):(𝑋 × 𝑋)⟶𝑋 ↔ (2nd ‘𝑅):({𝐴} × {𝐴})⟶{𝐴}))
3533, 34syl5ibcom 248 . . . 4 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} → (2nd ‘𝑅):({𝐴} × {𝐴})⟶{𝐴}))
3622feq2d 6693 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → ((2nd ‘𝑅):({𝐴} × {𝐴})⟶{𝐴} ↔ (2nd ‘𝑅):{⟨𝐴, 𝐴⟩}⟶{𝐴}))
37 fsng 7138 . . . . . 6 ((⟨𝐴, 𝐴⟩ ∈ V ∧ 𝐴 ∈ 𝐵) → ((2nd ‘𝑅):{⟨𝐴, 𝐴⟩}⟶{𝐴} ↔ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
3824, 20, 37sylancr 599 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → ((2nd ‘𝑅):{⟨𝐴, 𝐴⟩}⟶{𝐴} ↔ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
3936, 38bitrd 282 . . . 4 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → ((2nd ‘𝑅):({𝐴} × {𝐴})⟶{𝐴} ↔ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
4035, 39sylibd 242 . . 3 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} → (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}))
4140pm4.71d 571 . 2 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ (𝑋 = {𝐴} ∧ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩})))
42 relrngo 38830 . . . . . 6 Rel RingOps
43 df-rel 5658 . . . . . 6 (Rel RingOps ↔ RingOps ⊆ (V × V))
4442, 43mpbi 233 . . . . 5 RingOps ⊆ (V × V)
4544sseli 3927 . . . 4 (𝑅 ∈ RingOps → 𝑅 ∈ (V × V))
4645adantr 486 . . 3 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → 𝑅 ∈ (V × V))
47 eqop 8043 . . 3 (𝑅 ∈ (V × V) → (𝑅 = ⟨{⟨⟨𝐴, 𝐴⟩, 𝐴⟩}, {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}⟩ ↔ ((1st ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩} ∧ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩})))
4846, 47syl 18 . 2 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑅 = ⟨{⟨⟨𝐴, 𝐴⟩, 𝐴⟩}, {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}⟩ ↔ ((1st ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩} ∧ (2nd ‘𝑅) = {⟨⟨𝐴, 𝐴⟩, 𝐴⟩})))
4930, 41, 483bitr4d 314 1 ((𝑅 ∈ RingOps ∧ 𝐴 ∈ 𝐵) → (𝑋 = {𝐴} ↔ 𝑅 = ⟨{⟨⟨𝐴, 𝐴⟩, 𝐴⟩}, {⟨⟨𝐴, 𝐴⟩, 𝐴⟩}⟩))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2145  Vcvv 3451   ⊆ wss 3899  {csn 4584  ⟨cop 4590   × cxp 5649  dom cdm 5651  ran crn 5652  Rel wrel 5656  ⟶wf 6534  –onto→wfo 6536  ‘cfv 6538  1st c1st 7999  2nd c2nd 8000  GrpOpcgr 31091  RingOpscrngo 38828
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-ov 7423  df-1st 8001  df-2nd 8002  df-grpo 31095  df-ablo 31147  df-rngo 38829
This theorem is used by:  rngosn4  38859
  Copyright terms: Public domain W3C validator