Metamath Proof Explorer


Theorem cznrng

Description: The ring constructed from a Z/nZ structure by replacing the (multiplicative) ring operation by a constant operation is a non-unital ring. (Contributed by AV, 17-Feb-2020)

Ref Expression
Hypotheses cznrng.y Y=/N
cznrng.b B=BaseY
cznrng.x X=YsSetndxxB,yBC
cznrng.0 0˙=0Y
Assertion cznrng NC=0˙XRng

Proof

Step Hyp Ref Expression
1 cznrng.y Y=/N
2 cznrng.b B=BaseY
3 cznrng.x X=YsSetndxxB,yBC
4 cznrng.0 0˙=0Y
5 nnnn0 NN0
6 1 zncrng N0YCRing
7 5 6 syl NYCRing
8 crngring YCRingYRing
9 2 4 ring0cl YRing0˙B
10 eleq1a 0˙BC=0˙CB
11 9 10 syl YRingC=0˙CB
12 8 11 syl YCRingC=0˙CB
13 7 12 syl NC=0˙CB
14 13 imp NC=0˙CB
15 1 2 3 cznabel NCBXAbel
16 15 adantlr NC=0˙CBXAbel
17 eqid mulGrpX=mulGrpX
18 1 2 3 cznrnglem B=BaseX
19 17 18 mgpbas B=BasemulGrpX
20 3 fveq2i mulGrpX=mulGrpYsSetndxxB,yBC
21 1 fvexi YV
22 2 fvexi BV
23 22 22 mpoex xB,yBCV
24 mulridx 𝑟=Slotndx
25 24 setsid YVxB,yBCVxB,yBC=YsSetndxxB,yBC
26 21 23 25 mp2an xB,yBC=YsSetndxxB,yBC
27 20 26 mgpplusg xB,yBC=+mulGrpX
28 27 eqcomi +mulGrpX=xB,yBC
29 ne0i CBB
30 29 adantl NC=0˙CBB
31 simpr NC=0˙CBCB
32 19 28 30 31 copissgrp Could not format ( ( ( N e. NN /\ C = .0. ) /\ C e. B ) -> ( mulGrp ` X ) e. Smgrp ) : No typesetting found for |- ( ( ( N e. NN /\ C = .0. ) /\ C e. B ) -> ( mulGrp ` X ) e. Smgrp ) with typecode |-
33 oveq1 C=0˙C+YC=0˙+YC
34 33 ad3antlr NC=0˙CBaBbBcBC+YC=0˙+YC
35 7 8 syl NYRing
36 ringmnd YRingYMnd
37 35 36 syl NYMnd
38 37 adantr NC=0˙YMnd
39 38 anim1i NC=0˙CBYMndCB
40 39 adantr NC=0˙CBaBbBcBYMndCB
41 eqid +Y=+Y
42 2 41 4 mndlid YMndCB0˙+YC=C
43 40 42 syl NC=0˙CBaBbBcB0˙+YC=C
44 34 43 eqtrd NC=0˙CBaBbBcBC+YC=C
45 eqidd NC=0˙CBaBbBcBxB,yBC=xB,yBC
46 eqidd NC=0˙CBaBbBcBx=ay=bC=C
47 simpr1 NC=0˙CBaBbBcBaB
48 simpr2 NC=0˙CBaBbBcBbB
49 31 adantr NC=0˙CBaBbBcBCB
50 45 46 47 48 49 ovmpod NC=0˙CBaBbBcBaxB,yBCb=C
51 eqidd NC=0˙CBaBbBcBx=ay=cC=C
52 simpr3 NC=0˙CBaBbBcBcB
53 45 51 47 52 49 ovmpod NC=0˙CBaBbBcBaxB,yBCc=C
54 50 53 oveq12d NC=0˙CBaBbBcBaxB,yBCb+YaxB,yBCc=C+YC
55 eqidd NC=0˙CBaBbBcBx=ay=b+YcC=C
56 35 ad3antrrr NC=0˙CBaBbBcBYRing
57 2 41 ringacl YRingbBcBb+YcB
58 56 48 52 57 syl3anc NC=0˙CBaBbBcBb+YcB
59 45 55 47 58 49 ovmpod NC=0˙CBaBbBcBaxB,yBCb+Yc=C
60 44 54 59 3eqtr4rd NC=0˙CBaBbBcBaxB,yBCb+Yc=axB,yBCb+YaxB,yBCc
61 eqidd NC=0˙CBaBbBcBx=by=cC=C
62 45 61 48 52 49 ovmpod NC=0˙CBaBbBcBbxB,yBCc=C
63 53 62 oveq12d NC=0˙CBaBbBcBaxB,yBCc+YbxB,yBCc=C+YC
64 eqidd NC=0˙CBaBbBcBx=a+Yby=cC=C
65 2 41 ringacl YRingaBbBa+YbB
66 56 47 48 65 syl3anc NC=0˙CBaBbBcBa+YbB
67 45 64 66 52 49 ovmpod NC=0˙CBaBbBcBa+YbxB,yBCc=C
68 44 63 67 3eqtr4rd NC=0˙CBaBbBcBa+YbxB,yBCc=axB,yBCc+YbxB,yBCc
69 60 68 jca NC=0˙CBaBbBcBaxB,yBCb+Yc=axB,yBCb+YaxB,yBCca+YbxB,yBCc=axB,yBCc+YbxB,yBCc
70 69 ralrimivvva NC=0˙CBaBbBcBaxB,yBCb+Yc=axB,yBCb+YaxB,yBCca+YbxB,yBCc=axB,yBCc+YbxB,yBCc
71 16 32 70 3jca Could not format ( ( ( N e. NN /\ C = .0. ) /\ C e. B ) -> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) : No typesetting found for |- ( ( ( N e. NN /\ C = .0. ) /\ C e. B ) -> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) with typecode |-
72 14 71 mpdan Could not format ( ( N e. NN /\ C = .0. ) -> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) : No typesetting found for |- ( ( N e. NN /\ C = .0. ) -> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) with typecode |-
73 plusgid +𝑔=Slot+ndx
74 plusgndxnmulrndx +ndxndx
75 73 74 setsnid +Y=+YsSetndxxB,yBC
76 3 fveq2i +X=+YsSetndxxB,yBC
77 75 76 eqtr4i +Y=+X
78 3 eqcomi YsSetndxxB,yBC=X
79 78 fveq2i YsSetndxxB,yBC=X
80 26 79 eqtri xB,yBC=X
81 18 17 77 80 isrng Could not format ( X e. Rng <-> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) : No typesetting found for |- ( X e. Rng <-> ( X e. Abel /\ ( mulGrp ` X ) e. Smgrp /\ A. a e. B A. b e. B A. c e. B ( ( a ( x e. B , y e. B |-> C ) ( b ( +g ` Y ) c ) ) = ( ( a ( x e. B , y e. B |-> C ) b ) ( +g ` Y ) ( a ( x e. B , y e. B |-> C ) c ) ) /\ ( ( a ( +g ` Y ) b ) ( x e. B , y e. B |-> C ) c ) = ( ( a ( x e. B , y e. B |-> C ) c ) ( +g ` Y ) ( b ( x e. B , y e. B |-> C ) c ) ) ) ) ) with typecode |-
82 72 81 sylibr NC=0˙XRng