| Step |
Hyp |
Ref |
Expression |
| 1 |
|
pmatcollpw.p |
|- P = ( Poly1 ` R ) |
| 2 |
|
pmatcollpw.c |
|- C = ( N Mat P ) |
| 3 |
|
pmatcollpw.b |
|- B = ( Base ` C ) |
| 4 |
|
pmatcollpw.m |
|- .* = ( .s ` C ) |
| 5 |
|
pmatcollpw.e |
|- .^ = ( .g ` ( mulGrp ` P ) ) |
| 6 |
|
pmatcollpw.x |
|- X = ( var1 ` R ) |
| 7 |
|
pmatcollpw.t |
|- T = ( N matToPolyMat R ) |
| 8 |
|
crngring |
|- ( R e. CRing -> R e. Ring ) |
| 9 |
8
|
3ad2ant2 |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> R e. Ring ) |
| 10 |
|
simp3 |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> M e. B ) |
| 11 |
|
eqid |
|- ( N Mat R ) = ( N Mat R ) |
| 12 |
|
eqid |
|- ( 0g ` ( N Mat R ) ) = ( 0g ` ( N Mat R ) ) |
| 13 |
1 2 3 11 12
|
decpmataa0 |
|- ( ( R e. Ring /\ M e. B ) -> E. s e. NN0 A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) |
| 14 |
9 10 13
|
syl2anc |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> E. s e. NN0 A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) |
| 15 |
1 2 3 4 5 6 7
|
pmatcollpw |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> M = ( C gsum ( n e. NN0 |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) |
| 16 |
15
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> M = ( C gsum ( n e. NN0 |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) |
| 17 |
|
eqid |
|- ( 0g ` C ) = ( 0g ` C ) |
| 18 |
|
simp1 |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> N e. Fin ) |
| 19 |
1 2
|
pmatring |
|- ( ( N e. Fin /\ R e. Ring ) -> C e. Ring ) |
| 20 |
18 9 19
|
syl2anc |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> C e. Ring ) |
| 21 |
|
ringcmn |
|- ( C e. Ring -> C e. CMnd ) |
| 22 |
20 21
|
syl |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> C e. CMnd ) |
| 23 |
22
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> C e. CMnd ) |
| 24 |
18
|
adantr |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> N e. Fin ) |
| 25 |
9
|
adantr |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> R e. Ring ) |
| 26 |
1
|
ply1ring |
|- ( R e. Ring -> P e. Ring ) |
| 27 |
25 26
|
syl |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> P e. Ring ) |
| 28 |
9
|
anim1i |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> ( R e. Ring /\ n e. NN0 ) ) |
| 29 |
|
eqid |
|- ( mulGrp ` P ) = ( mulGrp ` P ) |
| 30 |
|
eqid |
|- ( Base ` P ) = ( Base ` P ) |
| 31 |
1 6 29 5 30
|
ply1moncl |
|- ( ( R e. Ring /\ n e. NN0 ) -> ( n .^ X ) e. ( Base ` P ) ) |
| 32 |
28 31
|
syl |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> ( n .^ X ) e. ( Base ` P ) ) |
| 33 |
|
simpl2 |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> R e. CRing ) |
| 34 |
10
|
adantr |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> M e. B ) |
| 35 |
|
simpr |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> n e. NN0 ) |
| 36 |
|
eqid |
|- ( Base ` ( N Mat R ) ) = ( Base ` ( N Mat R ) ) |
| 37 |
1 2 3 11 36
|
decpmatcl |
|- ( ( R e. CRing /\ M e. B /\ n e. NN0 ) -> ( M decompPMat n ) e. ( Base ` ( N Mat R ) ) ) |
| 38 |
33 34 35 37
|
syl3anc |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> ( M decompPMat n ) e. ( Base ` ( N Mat R ) ) ) |
| 39 |
7 11 36 1 2 3
|
mat2pmatbas0 |
|- ( ( N e. Fin /\ R e. Ring /\ ( M decompPMat n ) e. ( Base ` ( N Mat R ) ) ) -> ( T ` ( M decompPMat n ) ) e. B ) |
| 40 |
24 25 38 39
|
syl3anc |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> ( T ` ( M decompPMat n ) ) e. B ) |
| 41 |
30 2 3 4
|
matvscl |
|- ( ( ( N e. Fin /\ P e. Ring ) /\ ( ( n .^ X ) e. ( Base ` P ) /\ ( T ` ( M decompPMat n ) ) e. B ) ) -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) e. B ) |
| 42 |
24 27 32 40 41
|
syl22anc |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ n e. NN0 ) -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) e. B ) |
| 43 |
42
|
ralrimiva |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> A. n e. NN0 ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) e. B ) |
| 44 |
43
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> A. n e. NN0 ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) e. B ) |
| 45 |
|
simplr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> s e. NN0 ) |
| 46 |
|
fveq2 |
|- ( ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) -> ( T ` ( M decompPMat n ) ) = ( T ` ( 0g ` ( N Mat R ) ) ) ) |
| 47 |
9 18
|
jca |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( R e. Ring /\ N e. Fin ) ) |
| 48 |
47
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( R e. Ring /\ N e. Fin ) ) |
| 49 |
|
eqid |
|- ( 0g ` ( N Mat P ) ) = ( 0g ` ( N Mat P ) ) |
| 50 |
7 1 12 49
|
0mat2pmat |
|- ( ( R e. Ring /\ N e. Fin ) -> ( T ` ( 0g ` ( N Mat R ) ) ) = ( 0g ` ( N Mat P ) ) ) |
| 51 |
48 50
|
syl |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( T ` ( 0g ` ( N Mat R ) ) ) = ( 0g ` ( N Mat P ) ) ) |
| 52 |
46 51
|
sylan9eqr |
|- ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) /\ ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> ( T ` ( M decompPMat n ) ) = ( 0g ` ( N Mat P ) ) ) |
| 53 |
52
|
oveq2d |
|- ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) /\ ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( ( n .^ X ) .* ( 0g ` ( N Mat P ) ) ) ) |
| 54 |
1 2
|
pmatlmod |
|- ( ( N e. Fin /\ R e. Ring ) -> C e. LMod ) |
| 55 |
18 9 54
|
syl2anc |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> C e. LMod ) |
| 56 |
55
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> C e. LMod ) |
| 57 |
28
|
adantlr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( R e. Ring /\ n e. NN0 ) ) |
| 58 |
57 31
|
syl |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( n .^ X ) e. ( Base ` P ) ) |
| 59 |
1
|
ply1crng |
|- ( R e. CRing -> P e. CRing ) |
| 60 |
59
|
anim2i |
|- ( ( N e. Fin /\ R e. CRing ) -> ( N e. Fin /\ P e. CRing ) ) |
| 61 |
60
|
3adant3 |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( N e. Fin /\ P e. CRing ) ) |
| 62 |
2
|
matsca2 |
|- ( ( N e. Fin /\ P e. CRing ) -> P = ( Scalar ` C ) ) |
| 63 |
61 62
|
syl |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> P = ( Scalar ` C ) ) |
| 64 |
63
|
eqcomd |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( Scalar ` C ) = P ) |
| 65 |
64
|
ad2antrr |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( Scalar ` C ) = P ) |
| 66 |
65
|
fveq2d |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( Base ` ( Scalar ` C ) ) = ( Base ` P ) ) |
| 67 |
58 66
|
eleqtrrd |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( n .^ X ) e. ( Base ` ( Scalar ` C ) ) ) |
| 68 |
2
|
eqcomi |
|- ( N Mat P ) = C |
| 69 |
68
|
fveq2i |
|- ( 0g ` ( N Mat P ) ) = ( 0g ` C ) |
| 70 |
69
|
oveq2i |
|- ( ( n .^ X ) .* ( 0g ` ( N Mat P ) ) ) = ( ( n .^ X ) .* ( 0g ` C ) ) |
| 71 |
|
eqid |
|- ( Scalar ` C ) = ( Scalar ` C ) |
| 72 |
|
eqid |
|- ( Base ` ( Scalar ` C ) ) = ( Base ` ( Scalar ` C ) ) |
| 73 |
71 4 72 17
|
lmodvs0 |
|- ( ( C e. LMod /\ ( n .^ X ) e. ( Base ` ( Scalar ` C ) ) ) -> ( ( n .^ X ) .* ( 0g ` C ) ) = ( 0g ` C ) ) |
| 74 |
70 73
|
eqtrid |
|- ( ( C e. LMod /\ ( n .^ X ) e. ( Base ` ( Scalar ` C ) ) ) -> ( ( n .^ X ) .* ( 0g ` ( N Mat P ) ) ) = ( 0g ` C ) ) |
| 75 |
56 67 74
|
syl2anc |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( ( n .^ X ) .* ( 0g ` ( N Mat P ) ) ) = ( 0g ` C ) ) |
| 76 |
75
|
adantr |
|- ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) /\ ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> ( ( n .^ X ) .* ( 0g ` ( N Mat P ) ) ) = ( 0g ` C ) ) |
| 77 |
53 76
|
eqtrd |
|- ( ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) /\ ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( 0g ` C ) ) |
| 78 |
77
|
ex |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( 0g ` C ) ) ) |
| 79 |
78
|
imim2d |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ n e. NN0 ) -> ( ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> ( s < n -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( 0g ` C ) ) ) ) |
| 80 |
79
|
ralimdva |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) -> ( A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> A. n e. NN0 ( s < n -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( 0g ` C ) ) ) ) |
| 81 |
80
|
imp |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> A. n e. NN0 ( s < n -> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) = ( 0g ` C ) ) ) |
| 82 |
3 17 23 44 45 81
|
gsummptnn0fz |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> ( C gsum ( n e. NN0 |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) = ( C gsum ( n e. ( 0 ... s ) |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) |
| 83 |
16 82
|
eqtrd |
|- ( ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) /\ A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) ) -> M = ( C gsum ( n e. ( 0 ... s ) |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) |
| 84 |
83
|
ex |
|- ( ( ( N e. Fin /\ R e. CRing /\ M e. B ) /\ s e. NN0 ) -> ( A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> M = ( C gsum ( n e. ( 0 ... s ) |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) ) |
| 85 |
84
|
reximdva |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> ( E. s e. NN0 A. n e. NN0 ( s < n -> ( M decompPMat n ) = ( 0g ` ( N Mat R ) ) ) -> E. s e. NN0 M = ( C gsum ( n e. ( 0 ... s ) |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) ) |
| 86 |
14 85
|
mpd |
|- ( ( N e. Fin /\ R e. CRing /\ M e. B ) -> E. s e. NN0 M = ( C gsum ( n e. ( 0 ... s ) |-> ( ( n .^ X ) .* ( T ` ( M decompPMat n ) ) ) ) ) ) |