Step |
Hyp |
Ref |
Expression |
1 |
|
cpmidgsum.a |
⊢ 𝐴 = ( 𝑁 Mat 𝑅 ) |
2 |
|
cpmidgsum.b |
⊢ 𝐵 = ( Base ‘ 𝐴 ) |
3 |
|
cpmidgsum.p |
⊢ 𝑃 = ( Poly1 ‘ 𝑅 ) |
4 |
|
cpmidgsum.y |
⊢ 𝑌 = ( 𝑁 Mat 𝑃 ) |
5 |
|
cpmidgsum.x |
⊢ 𝑋 = ( var1 ‘ 𝑅 ) |
6 |
|
cpmidgsum.e |
⊢ ↑ = ( .g ‘ ( mulGrp ‘ 𝑃 ) ) |
7 |
|
cpmidgsum.m |
⊢ · = ( ·𝑠 ‘ 𝑌 ) |
8 |
|
cpmidgsum.1 |
⊢ 1 = ( 1r ‘ 𝑌 ) |
9 |
|
cpmidgsum.u |
⊢ 𝑈 = ( algSc ‘ 𝑃 ) |
10 |
|
cpmidgsum.c |
⊢ 𝐶 = ( 𝑁 CharPlyMat 𝑅 ) |
11 |
|
cpmidgsum.k |
⊢ 𝐾 = ( 𝐶 ‘ 𝑀 ) |
12 |
|
cpmidgsum.h |
⊢ 𝐻 = ( 𝐾 · 1 ) |
13 |
|
cpmidgsumm2pm.o |
⊢ 𝑂 = ( 1r ‘ 𝐴 ) |
14 |
|
cpmidgsumm2pm.m |
⊢ ∗ = ( ·𝑠 ‘ 𝐴 ) |
15 |
|
cpmidgsumm2pm.t |
⊢ 𝑇 = ( 𝑁 matToPolyMat 𝑅 ) |
16 |
|
cpmidpmat.g |
⊢ 𝐺 = ( 𝑘 ∈ ℕ0 ↦ ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑘 ) ∗ 𝑂 ) ) |
17 |
|
fvexd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 0g ‘ 𝐴 ) ∈ V ) |
18 |
|
ovexd |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑘 ∈ ℕ0 ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑘 ) ∗ 𝑂 ) ∈ V ) |
19 |
|
fveq2 |
⊢ ( 𝑘 = 𝑙 → ( ( coe1 ‘ 𝐾 ) ‘ 𝑘 ) = ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) |
20 |
19
|
oveq1d |
⊢ ( 𝑘 = 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑘 ) ∗ 𝑂 ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) ) |
21 |
|
fvexd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 0g ‘ 𝑅 ) ∈ V ) |
22 |
|
eqid |
⊢ ( Base ‘ 𝑃 ) = ( Base ‘ 𝑃 ) |
23 |
10 1 2 3 22
|
chpmatply1 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝐶 ‘ 𝑀 ) ∈ ( Base ‘ 𝑃 ) ) |
24 |
11 23
|
eqeltrid |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐾 ∈ ( Base ‘ 𝑃 ) ) |
25 |
|
eqid |
⊢ ( coe1 ‘ 𝐾 ) = ( coe1 ‘ 𝐾 ) |
26 |
|
eqid |
⊢ ( Base ‘ 𝑅 ) = ( Base ‘ 𝑅 ) |
27 |
25 22 3 26
|
coe1fvalcl |
⊢ ( ( 𝐾 ∈ ( Base ‘ 𝑃 ) ∧ 𝑛 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∈ ( Base ‘ 𝑅 ) ) |
28 |
24 27
|
sylan |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑛 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∈ ( Base ‘ 𝑅 ) ) |
29 |
|
crngring |
⊢ ( 𝑅 ∈ CRing → 𝑅 ∈ Ring ) |
30 |
29
|
3ad2ant2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝑅 ∈ Ring ) |
31 |
|
eqid |
⊢ ( 0g ‘ 𝑅 ) = ( 0g ‘ 𝑅 ) |
32 |
3 22 31
|
mptcoe1fsupp |
⊢ ( ( 𝑅 ∈ Ring ∧ 𝐾 ∈ ( Base ‘ 𝑃 ) ) → ( 𝑛 ∈ ℕ0 ↦ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ) finSupp ( 0g ‘ 𝑅 ) ) |
33 |
30 24 32
|
syl2anc |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝑛 ∈ ℕ0 ↦ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ) finSupp ( 0g ‘ 𝑅 ) ) |
34 |
21 28 33
|
mptnn0fsuppr |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ∃ 𝑠 ∈ ℕ0 ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) ) |
35 |
|
csbfv |
⊢ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) |
36 |
35
|
a1i |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) → ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) |
37 |
36
|
eqeq1d |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) → ( ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ↔ ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) = ( 0g ‘ 𝑅 ) ) ) |
38 |
37
|
biimpa |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) = ( 0g ‘ 𝑅 ) ) |
39 |
1
|
matsca2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝑅 = ( Scalar ‘ 𝐴 ) ) |
40 |
39
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝑅 = ( Scalar ‘ 𝐴 ) ) |
41 |
40
|
ad2antrr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → 𝑅 = ( Scalar ‘ 𝐴 ) ) |
42 |
41
|
fveq2d |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( 0g ‘ 𝑅 ) = ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ) |
43 |
38 42
|
eqtrd |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) = ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ) |
44 |
43
|
oveq1d |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ∗ 𝑂 ) ) |
45 |
1
|
matlmod |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) → 𝐴 ∈ LMod ) |
46 |
29 45
|
sylan2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝐴 ∈ LMod ) |
47 |
46
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐴 ∈ LMod ) |
48 |
1
|
matring |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) → 𝐴 ∈ Ring ) |
49 |
29 48
|
sylan2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝐴 ∈ Ring ) |
50 |
2 13
|
ringidcl |
⊢ ( 𝐴 ∈ Ring → 𝑂 ∈ 𝐵 ) |
51 |
49 50
|
syl |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝑂 ∈ 𝐵 ) |
52 |
51
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝑂 ∈ 𝐵 ) |
53 |
|
eqid |
⊢ ( Scalar ‘ 𝐴 ) = ( Scalar ‘ 𝐴 ) |
54 |
|
eqid |
⊢ ( 0g ‘ ( Scalar ‘ 𝐴 ) ) = ( 0g ‘ ( Scalar ‘ 𝐴 ) ) |
55 |
|
eqid |
⊢ ( 0g ‘ 𝐴 ) = ( 0g ‘ 𝐴 ) |
56 |
2 53 14 54 55
|
lmod0vs |
⊢ ( ( 𝐴 ∈ LMod ∧ 𝑂 ∈ 𝐵 ) → ( ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) |
57 |
47 52 56
|
syl2anc |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) |
58 |
57
|
ad2antrr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) |
59 |
44 58
|
eqtrd |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) ∧ ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) |
60 |
59
|
ex |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) → ( ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) ) |
61 |
60
|
imim2d |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) → ( ( 𝑠 < 𝑙 → ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ( 𝑠 < 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) ) ) |
62 |
61
|
ralimdva |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) ) ) |
63 |
62
|
reximdv |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( ∃ 𝑠 ∈ ℕ0 ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ⦋ 𝑙 / 𝑛 ⦌ ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( 0g ‘ 𝑅 ) ) → ∃ 𝑠 ∈ ℕ0 ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) ) ) |
64 |
34 63
|
mpd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ∃ 𝑠 ∈ ℕ0 ∀ 𝑙 ∈ ℕ0 ( 𝑠 < 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 𝑂 ) = ( 0g ‘ 𝐴 ) ) ) |
65 |
17 18 20 64
|
mptnn0fsuppd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝑘 ∈ ℕ0 ↦ ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑘 ) ∗ 𝑂 ) ) finSupp ( 0g ‘ 𝐴 ) ) |
66 |
16 65
|
eqbrtrid |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐺 finSupp ( 0g ‘ 𝐴 ) ) |