Metamath Proof Explorer


Theorem isring

Description: The predicate "is a (unital) ring". Definition of "ring with unit" in Schechter p. 187. (Contributed by NM, 18-Oct-2012) (Revised by Mario Carneiro, 6-Jan-2015)

Ref Expression
Hypotheses isring.b B=BaseR
isring.g G=mulGrpR
isring.p +˙=+R
isring.t ·˙=R
Assertion isring RRingRGrpGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z

Proof

Step Hyp Ref Expression
1 isring.b B=BaseR
2 isring.g G=mulGrpR
3 isring.p +˙=+R
4 isring.t ·˙=R
5 fveq2 r=RmulGrpr=mulGrpR
6 5 2 eqtr4di r=RmulGrpr=G
7 6 eleq1d r=RmulGrprMndGMnd
8 fvexd r=RBaserV
9 fveq2 r=RBaser=BaseR
10 9 1 eqtr4di r=RBaser=B
11 fvexd r=Rb=B+rV
12 simpl r=Rb=Br=R
13 12 fveq2d r=Rb=B+r=+R
14 13 3 eqtr4di r=Rb=B+r=+˙
15 fvexd r=Rb=Bp=+˙rV
16 simpll r=Rb=Bp=+˙r=R
17 16 fveq2d r=Rb=Bp=+˙r=R
18 17 4 eqtr4di r=Rb=Bp=+˙r=·˙
19 simpllr r=Rb=Bp=+˙t=·˙b=B
20 simpr r=Rb=Bp=+˙t=·˙t=·˙
21 eqidd r=Rb=Bp=+˙t=·˙x=x
22 simplr r=Rb=Bp=+˙t=·˙p=+˙
23 22 oveqd r=Rb=Bp=+˙t=·˙ypz=y+˙z
24 20 21 23 oveq123d r=Rb=Bp=+˙t=·˙xtypz=x·˙y+˙z
25 20 oveqd r=Rb=Bp=+˙t=·˙xty=x·˙y
26 20 oveqd r=Rb=Bp=+˙t=·˙xtz=x·˙z
27 22 25 26 oveq123d r=Rb=Bp=+˙t=·˙xtypxtz=x·˙y+˙x·˙z
28 24 27 eqeq12d r=Rb=Bp=+˙t=·˙xtypz=xtypxtzx·˙y+˙z=x·˙y+˙x·˙z
29 22 oveqd r=Rb=Bp=+˙t=·˙xpy=x+˙y
30 eqidd r=Rb=Bp=+˙t=·˙z=z
31 20 29 30 oveq123d r=Rb=Bp=+˙t=·˙xpytz=x+˙y·˙z
32 20 oveqd r=Rb=Bp=+˙t=·˙ytz=y·˙z
33 22 26 32 oveq123d r=Rb=Bp=+˙t=·˙xtzpytz=x·˙z+˙y·˙z
34 31 33 eqeq12d r=Rb=Bp=+˙t=·˙xpytz=xtzpytzx+˙y·˙z=x·˙z+˙y·˙z
35 28 34 anbi12d r=Rb=Bp=+˙t=·˙xtypz=xtypxtzxpytz=xtzpytzx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
36 19 35 raleqbidv r=Rb=Bp=+˙t=·˙zbxtypz=xtypxtzxpytz=xtzpytzzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
37 19 36 raleqbidv r=Rb=Bp=+˙t=·˙ybzbxtypz=xtypxtzxpytz=xtzpytzyBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
38 19 37 raleqbidv r=Rb=Bp=+˙t=·˙xbybzbxtypz=xtypxtzxpytz=xtzpytzxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
39 15 18 38 sbcied2 r=Rb=Bp=+˙[˙r/t]˙xbybzbxtypz=xtypxtzxpytz=xtzpytzxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
40 11 14 39 sbcied2 r=Rb=B[˙+r/p]˙[˙r/t]˙xbybzbxtypz=xtypxtzxpytz=xtzpytzxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
41 8 10 40 sbcied2 r=R[˙Baser/b]˙[˙+r/p]˙[˙r/t]˙xbybzbxtypz=xtypxtzxpytz=xtzpytzxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
42 7 41 anbi12d r=RmulGrprMnd[˙Baser/b]˙[˙+r/p]˙[˙r/t]˙xbybzbxtypz=xtypxtzxpytz=xtzpytzGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
43 df-ring Ring=rGrp|mulGrprMnd[˙Baser/b]˙[˙+r/p]˙[˙r/t]˙xbybzbxtypz=xtypxtzxpytz=xtzpytz
44 42 43 elrab2 RRingRGrpGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
45 3anass RGrpGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙zRGrpGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z
46 44 45 bitr4i RRingRGrpGMndxByBzBx·˙y+˙z=x·˙y+˙x·˙zx+˙y·˙z=x·˙z+˙y·˙z