| Step | Hyp | Ref | Expression | 
						
							| 1 |  | chcoeffeq.a |  |-  A = ( N Mat R ) | 
						
							| 2 |  | chcoeffeq.b |  |-  B = ( Base ` A ) | 
						
							| 3 |  | chcoeffeq.p |  |-  P = ( Poly1 ` R ) | 
						
							| 4 |  | chcoeffeq.y |  |-  Y = ( N Mat P ) | 
						
							| 5 |  | chcoeffeq.r |  |-  .X. = ( .r ` Y ) | 
						
							| 6 |  | chcoeffeq.s |  |-  .- = ( -g ` Y ) | 
						
							| 7 |  | chcoeffeq.0 |  |-  .0. = ( 0g ` Y ) | 
						
							| 8 |  | chcoeffeq.t |  |-  T = ( N matToPolyMat R ) | 
						
							| 9 |  | chcoeffeq.c |  |-  C = ( N CharPlyMat R ) | 
						
							| 10 |  | chcoeffeq.k |  |-  K = ( C ` M ) | 
						
							| 11 |  | chcoeffeq.g |  |-  G = ( n e. NN0 |-> if ( n = 0 , ( .0. .- ( ( T ` M ) .X. ( T ` ( b ` 0 ) ) ) ) , if ( n = ( s + 1 ) , ( T ` ( b ` s ) ) , if ( ( s + 1 ) < n , .0. , ( ( T ` ( b ` ( n - 1 ) ) ) .- ( ( T ` M ) .X. ( T ` ( b ` n ) ) ) ) ) ) ) ) | 
						
							| 12 |  | chcoeffeq.w |  |-  W = ( Base ` Y ) | 
						
							| 13 |  | chcoeffeq.1 |  |-  .1. = ( 1r ` A ) | 
						
							| 14 |  | chcoeffeq.m |  |-  .* = ( .s ` A ) | 
						
							| 15 |  | chcoeffeq.u |  |-  U = ( N cPolyMatToMat R ) | 
						
							| 16 |  | cayhamlem.e1 |  |-  .^ = ( .g ` ( mulGrp ` A ) ) | 
						
							| 17 |  | cayhamlem.r |  |-  .x. = ( .r ` A ) | 
						
							| 18 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | chcoeffeq |  |-  ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> E. s e. NN E. b e. ( B ^m ( 0 ... s ) ) A. n e. NN0 ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) ) | 
						
							| 19 |  | 2fveq3 |  |-  ( n = l -> ( U ` ( G ` n ) ) = ( U ` ( G ` l ) ) ) | 
						
							| 20 |  | fveq2 |  |-  ( n = l -> ( ( coe1 ` K ) ` n ) = ( ( coe1 ` K ) ` l ) ) | 
						
							| 21 | 20 | oveq1d |  |-  ( n = l -> ( ( ( coe1 ` K ) ` n ) .* .1. ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) | 
						
							| 22 | 19 21 | eqeq12d |  |-  ( n = l -> ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) <-> ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) ) | 
						
							| 23 | 22 | cbvralvw |  |-  ( A. n e. NN0 ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) <-> A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) | 
						
							| 24 |  | 2fveq3 |  |-  ( l = n -> ( U ` ( G ` l ) ) = ( U ` ( G ` n ) ) ) | 
						
							| 25 |  | fveq2 |  |-  ( l = n -> ( ( coe1 ` K ) ` l ) = ( ( coe1 ` K ) ` n ) ) | 
						
							| 26 | 25 | oveq1d |  |-  ( l = n -> ( ( ( coe1 ` K ) ` l ) .* .1. ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) ) | 
						
							| 27 | 24 26 | eqeq12d |  |-  ( l = n -> ( ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) <-> ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 28 | 27 | rspccva |  |-  ( ( A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) /\ n e. NN0 ) -> ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) ) | 
						
							| 29 |  | simprll |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( N e. Fin /\ R e. CRing /\ M e. B ) ) | 
						
							| 30 |  | eqid |  |-  ( Base ` P ) = ( Base ` P ) | 
						
							| 31 | 9 1 2 3 30 | chpmatply1 |  |-  ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( C ` M ) e. ( Base ` P ) ) | 
						
							| 32 | 29 31 | syl |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( C ` M ) e. ( Base ` P ) ) | 
						
							| 33 | 10 32 | eqeltrid |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> K e. ( Base ` P ) ) | 
						
							| 34 |  | eqid |  |-  ( coe1 ` K ) = ( coe1 ` K ) | 
						
							| 35 |  | eqid |  |-  ( Base ` R ) = ( Base ` R ) | 
						
							| 36 | 34 30 3 35 | coe1f |  |-  ( K e. ( Base ` P ) -> ( coe1 ` K ) : NN0 --> ( Base ` R ) ) | 
						
							| 37 | 33 36 | syl |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( coe1 ` K ) : NN0 --> ( Base ` R ) ) | 
						
							| 38 |  | fvex |  |-  ( Base ` R ) e. _V | 
						
							| 39 |  | nn0ex |  |-  NN0 e. _V | 
						
							| 40 | 38 39 | pm3.2i |  |-  ( ( Base ` R ) e. _V /\ NN0 e. _V ) | 
						
							| 41 |  | elmapg |  |-  ( ( ( Base ` R ) e. _V /\ NN0 e. _V ) -> ( ( coe1 ` K ) e. ( ( Base ` R ) ^m NN0 ) <-> ( coe1 ` K ) : NN0 --> ( Base ` R ) ) ) | 
						
							| 42 | 40 41 | mp1i |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( ( coe1 ` K ) e. ( ( Base ` R ) ^m NN0 ) <-> ( coe1 ` K ) : NN0 --> ( Base ` R ) ) ) | 
						
							| 43 | 37 42 | mpbird |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( coe1 ` K ) e. ( ( Base ` R ) ^m NN0 ) ) | 
						
							| 44 |  | simpl |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> n e. NN0 ) | 
						
							| 45 | 35 1 2 13 14 16 17 | cayhamlem2 |  |-  ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ ( ( coe1 ` K ) e. ( ( Base ` R ) ^m NN0 ) /\ n e. NN0 ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 46 | 29 43 44 45 | syl12anc |  |-  ( ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 47 | 46 | adantl |  |-  ( ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) /\ ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 48 |  | oveq2 |  |-  ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) = ( ( n .^ M ) .x. ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 49 | 48 | adantr |  |-  ( ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) /\ ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) ) -> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) = ( ( n .^ M ) .x. ( ( ( coe1 ` K ) ` n ) .* .1. ) ) ) | 
						
							| 50 | 47 49 | eqtr4d |  |-  ( ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) /\ ( n e. NN0 /\ ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) | 
						
							| 51 | 50 | exp32 |  |-  ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> ( n e. NN0 -> ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) | 
						
							| 52 | 51 | com12 |  |-  ( n e. NN0 -> ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) | 
						
							| 53 | 52 | adantl |  |-  ( ( A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) /\ n e. NN0 ) -> ( ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) | 
						
							| 54 | 28 53 | mpd |  |-  ( ( A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) /\ n e. NN0 ) -> ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) | 
						
							| 55 | 54 | com12 |  |-  ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( ( A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) /\ n e. NN0 ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) | 
						
							| 56 | 55 | impl |  |-  ( ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) /\ A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) /\ n e. NN0 ) -> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) = ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) | 
						
							| 57 | 56 | mpteq2dva |  |-  ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) /\ A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) -> ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) = ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) | 
						
							| 58 | 57 | oveq2d |  |-  ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) /\ A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) ) -> ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) | 
						
							| 59 | 58 | ex |  |-  ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( A. l e. NN0 ( U ` ( G ` l ) ) = ( ( ( coe1 ` K ) ` l ) .* .1. ) -> ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) ) | 
						
							| 60 | 23 59 | biimtrid |  |-  ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) /\ b e. ( B ^m ( 0 ... s ) ) ) -> ( A. n e. NN0 ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) ) | 
						
							| 61 | 60 | reximdva |  |-  ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN ) -> ( E. b e. ( B ^m ( 0 ... s ) ) A. n e. NN0 ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> E. b e. ( B ^m ( 0 ... s ) ) ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) ) | 
						
							| 62 | 61 | reximdva |  |-  ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( E. s e. NN E. b e. ( B ^m ( 0 ... s ) ) A. n e. NN0 ( U ` ( G ` n ) ) = ( ( ( coe1 ` K ) ` n ) .* .1. ) -> E. s e. NN E. b e. ( B ^m ( 0 ... s ) ) ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) ) | 
						
							| 63 | 18 62 | mpd |  |-  ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> E. s e. NN E. b e. ( B ^m ( 0 ... s ) ) ( A gsum ( n e. NN0 |-> ( ( ( coe1 ` K ) ` n ) .* ( n .^ M ) ) ) ) = ( A gsum ( n e. NN0 |-> ( ( n .^ M ) .x. ( U ` ( G ` n ) ) ) ) ) ) |