Metamath Proof Explorer


Theorem isringrng

Description: The predicate "is a unital ring" as extension of the predicate "is a non-unital ring". (Contributed by AV, 17-Feb-2020)

Ref Expression
Hypotheses isringrng.b B=BaseR
isringrng.t ·˙=R
Assertion isringrng RRingRRngxByBx·˙y=yy·˙x=y

Proof

Step Hyp Ref Expression
1 isringrng.b B=BaseR
2 isringrng.t ·˙=R
3 ringrng RRingRRng
4 1 2 ringideu RRing∃!xByBx·˙y=yy·˙x=y
5 reurex ∃!xByBx·˙y=yy·˙x=yxByBx·˙y=yy·˙x=y
6 4 5 syl RRingxByBx·˙y=yy·˙x=y
7 3 6 jca RRingRRngxByBx·˙y=yy·˙x=y
8 rngabl RRngRAbel
9 ablgrp RAbelRGrp
10 8 9 syl RRngRGrp
11 10 adantr RRngxByBx·˙y=yy·˙x=yRGrp
12 eqid mulGrpR=mulGrpR
13 12 rngmgp Could not format ( R e. Rng -> ( mulGrp ` R ) e. Smgrp ) : No typesetting found for |- ( R e. Rng -> ( mulGrp ` R ) e. Smgrp ) with typecode |-
14 13 anim1i Could not format ( ( R e. Rng /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) -> ( ( mulGrp ` R ) e. Smgrp /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) ) : No typesetting found for |- ( ( R e. Rng /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) -> ( ( mulGrp ` R ) e. Smgrp /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) ) with typecode |-
15 12 1 mgpbas B=BasemulGrpR
16 12 2 mgpplusg ·˙=+mulGrpR
17 15 16 ismnddef Could not format ( ( mulGrp ` R ) e. Mnd <-> ( ( mulGrp ` R ) e. Smgrp /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) ) : No typesetting found for |- ( ( mulGrp ` R ) e. Mnd <-> ( ( mulGrp ` R ) e. Smgrp /\ E. x e. B A. y e. B ( ( x .x. y ) = y /\ ( y .x. x ) = y ) ) ) with typecode |-
18 14 17 sylibr RRngxByBx·˙y=yy·˙x=ymulGrpRMnd
19 eqid +R=+R
20 1 12 19 2 isrng Could not format ( R e. Rng <-> ( R e. Abel /\ ( mulGrp ` R ) e. Smgrp /\ A. x e. B A. y e. B A. z e. B ( ( x .x. ( y ( +g ` R ) z ) ) = ( ( x .x. y ) ( +g ` R ) ( x .x. z ) ) /\ ( ( x ( +g ` R ) y ) .x. z ) = ( ( x .x. z ) ( +g ` R ) ( y .x. z ) ) ) ) ) : No typesetting found for |- ( R e. Rng <-> ( R e. Abel /\ ( mulGrp ` R ) e. Smgrp /\ A. x e. B A. y e. B A. z e. B ( ( x .x. ( y ( +g ` R ) z ) ) = ( ( x .x. y ) ( +g ` R ) ( x .x. z ) ) /\ ( ( x ( +g ` R ) y ) .x. z ) = ( ( x .x. z ) ( +g ` R ) ( y .x. z ) ) ) ) ) with typecode |-
21 20 simp3bi RRngxByBzBx·˙y+Rz=x·˙y+Rx·˙zx+Ry·˙z=x·˙z+Ry·˙z
22 21 adantr RRngxByBx·˙y=yy·˙x=yxByBzBx·˙y+Rz=x·˙y+Rx·˙zx+Ry·˙z=x·˙z+Ry·˙z
23 1 12 19 2 isring RRingRGrpmulGrpRMndxByBzBx·˙y+Rz=x·˙y+Rx·˙zx+Ry·˙z=x·˙z+Ry·˙z
24 11 18 22 23 syl3anbrc RRngxByBx·˙y=yy·˙x=yRRing
25 7 24 impbii RRingRRngxByBx·˙y=yy·˙x=y