| Step |
Hyp |
Ref |
Expression |
| 1 |
|
chcoeffeq.a |
⊢ 𝐴 = ( 𝑁 Mat 𝑅 ) |
| 2 |
|
chcoeffeq.b |
⊢ 𝐵 = ( Base ‘ 𝐴 ) |
| 3 |
|
chcoeffeq.p |
⊢ 𝑃 = ( Poly1 ‘ 𝑅 ) |
| 4 |
|
chcoeffeq.y |
⊢ 𝑌 = ( 𝑁 Mat 𝑃 ) |
| 5 |
|
chcoeffeq.r |
⊢ × = ( .r ‘ 𝑌 ) |
| 6 |
|
chcoeffeq.s |
⊢ − = ( -g ‘ 𝑌 ) |
| 7 |
|
chcoeffeq.0 |
⊢ 0 = ( 0g ‘ 𝑌 ) |
| 8 |
|
chcoeffeq.t |
⊢ 𝑇 = ( 𝑁 matToPolyMat 𝑅 ) |
| 9 |
|
chcoeffeq.c |
⊢ 𝐶 = ( 𝑁 CharPlyMat 𝑅 ) |
| 10 |
|
chcoeffeq.k |
⊢ 𝐾 = ( 𝐶 ‘ 𝑀 ) |
| 11 |
|
chcoeffeq.g |
⊢ 𝐺 = ( 𝑛 ∈ ℕ0 ↦ if ( 𝑛 = 0 , ( 0 − ( ( 𝑇 ‘ 𝑀 ) × ( 𝑇 ‘ ( 𝑏 ‘ 0 ) ) ) ) , if ( 𝑛 = ( 𝑠 + 1 ) , ( 𝑇 ‘ ( 𝑏 ‘ 𝑠 ) ) , if ( ( 𝑠 + 1 ) < 𝑛 , 0 , ( ( 𝑇 ‘ ( 𝑏 ‘ ( 𝑛 − 1 ) ) ) − ( ( 𝑇 ‘ 𝑀 ) × ( 𝑇 ‘ ( 𝑏 ‘ 𝑛 ) ) ) ) ) ) ) ) |
| 12 |
|
chcoeffeq.w |
⊢ 𝑊 = ( Base ‘ 𝑌 ) |
| 13 |
|
chcoeffeq.1 |
⊢ 1 = ( 1r ‘ 𝐴 ) |
| 14 |
|
chcoeffeq.m |
⊢ ∗ = ( ·𝑠 ‘ 𝐴 ) |
| 15 |
|
chcoeffeq.u |
⊢ 𝑈 = ( 𝑁 cPolyMatToMat 𝑅 ) |
| 16 |
|
eqid |
⊢ ( Poly1 ‘ 𝐴 ) = ( Poly1 ‘ 𝐴 ) |
| 17 |
|
eqid |
⊢ ( var1 ‘ 𝐴 ) = ( var1 ‘ 𝐴 ) |
| 18 |
|
eqid |
⊢ ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) = ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) |
| 19 |
|
crngring |
⊢ ( 𝑅 ∈ CRing → 𝑅 ∈ Ring ) |
| 20 |
1
|
matring |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) → 𝐴 ∈ Ring ) |
| 21 |
19 20
|
sylan2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝐴 ∈ Ring ) |
| 22 |
21
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐴 ∈ Ring ) |
| 23 |
22
|
adantr |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → 𝐴 ∈ Ring ) |
| 24 |
|
eqid |
⊢ ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) = ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) |
| 25 |
|
eqid |
⊢ ( 0g ‘ 𝐴 ) = ( 0g ‘ 𝐴 ) |
| 26 |
|
eqid |
⊢ ( 𝑁 ConstPolyMat 𝑅 ) = ( 𝑁 ConstPolyMat 𝑅 ) |
| 27 |
|
eqid |
⊢ ( ·𝑠 ‘ 𝑌 ) = ( ·𝑠 ‘ 𝑌 ) |
| 28 |
|
eqid |
⊢ ( 1r ‘ 𝑌 ) = ( 1r ‘ 𝑌 ) |
| 29 |
|
eqid |
⊢ ( var1 ‘ 𝑅 ) = ( var1 ‘ 𝑅 ) |
| 30 |
|
eqid |
⊢ ( ( ( var1 ‘ 𝑅 ) ( ·𝑠 ‘ 𝑌 ) ( 1r ‘ 𝑌 ) ) − ( 𝑇 ‘ 𝑀 ) ) = ( ( ( var1 ‘ 𝑅 ) ( ·𝑠 ‘ 𝑌 ) ( 1r ‘ 𝑌 ) ) − ( 𝑇 ‘ 𝑀 ) ) |
| 31 |
|
eqid |
⊢ ( 𝑁 maAdju 𝑃 ) = ( 𝑁 maAdju 𝑃 ) |
| 32 |
1 2 3 4 8 5 6 7 11 26 27 28 29 30 31 12 16 17 24 18 15
|
cpmadumatpolylem1 |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑠 ∈ ℕ ) ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) → ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) |
| 33 |
32
|
anasss |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) |
| 34 |
1 2 3 4 5 6 7 8 11 26
|
chfacfisfcpmat |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ) |
| 35 |
19 34
|
syl3anl2 |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ) |
| 36 |
35
|
adantr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) → 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ) |
| 37 |
|
fvco3 |
⊢ ( ( 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ∧ 𝑙 ∈ ℕ0 ) → ( ( 𝑈 ∘ 𝐺 ) ‘ 𝑙 ) = ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ) |
| 38 |
37
|
eqcomd |
⊢ ( ( 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ∧ 𝑙 ∈ ℕ0 ) → ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( 𝑈 ∘ 𝐺 ) ‘ 𝑙 ) ) |
| 39 |
36 38
|
sylan |
⊢ ( ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) ∧ 𝑙 ∈ ℕ0 ) → ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( 𝑈 ∘ 𝐺 ) ‘ 𝑙 ) ) |
| 40 |
|
elmapi |
⊢ ( ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) → ( 𝑈 ∘ 𝐺 ) : ℕ0 ⟶ 𝐵 ) |
| 41 |
40
|
adantl |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) → ( 𝑈 ∘ 𝐺 ) : ℕ0 ⟶ 𝐵 ) |
| 42 |
41
|
ffvelcdmda |
⊢ ( ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) ∧ 𝑙 ∈ ℕ0 ) → ( ( 𝑈 ∘ 𝐺 ) ‘ 𝑙 ) ∈ 𝐵 ) |
| 43 |
39 42
|
eqeltrd |
⊢ ( ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) ∧ 𝑙 ∈ ℕ0 ) → ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ∈ 𝐵 ) |
| 44 |
43
|
ralrimiva |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( 𝑈 ∘ 𝐺 ) ∈ ( 𝐵 ↑m ℕ0 ) ) → ∀ 𝑙 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ∈ 𝐵 ) |
| 45 |
33 44
|
mpdan |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ∀ 𝑙 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ∈ 𝐵 ) |
| 46 |
19
|
anim2i |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) ) |
| 47 |
46
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) ) |
| 48 |
47
|
adantr |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) ) |
| 49 |
1 2 26 15
|
cpm2mf |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) → 𝑈 : ( 𝑁 ConstPolyMat 𝑅 ) ⟶ 𝐵 ) |
| 50 |
48 49
|
syl |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → 𝑈 : ( 𝑁 ConstPolyMat 𝑅 ) ⟶ 𝐵 ) |
| 51 |
|
fcompt |
⊢ ( ( 𝑈 : ( 𝑁 ConstPolyMat 𝑅 ) ⟶ 𝐵 ∧ 𝐺 : ℕ0 ⟶ ( 𝑁 ConstPolyMat 𝑅 ) ) → ( 𝑈 ∘ 𝐺 ) = ( 𝑙 ∈ ℕ0 ↦ ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ) ) |
| 52 |
50 35 51
|
syl2anc |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑈 ∘ 𝐺 ) = ( 𝑙 ∈ ℕ0 ↦ ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ) ) |
| 53 |
1 2 3 4 8 5 6 7 11 26 27 28 29 30 31 12 16 17 24 18 15
|
cpmadumatpolylem2 |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑠 ∈ ℕ ) ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) → ( 𝑈 ∘ 𝐺 ) finSupp ( 0g ‘ 𝐴 ) ) |
| 54 |
53
|
anasss |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑈 ∘ 𝐺 ) finSupp ( 0g ‘ 𝐴 ) ) |
| 55 |
52 54
|
eqbrtrrd |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑙 ∈ ℕ0 ↦ ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ) finSupp ( 0g ‘ 𝐴 ) ) |
| 56 |
|
simpll1 |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → 𝑁 ∈ Fin ) |
| 57 |
19
|
3ad2ant2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝑅 ∈ Ring ) |
| 58 |
57
|
ad2antrr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → 𝑅 ∈ Ring ) |
| 59 |
|
eqid |
⊢ ( Base ‘ 𝑃 ) = ( Base ‘ 𝑃 ) |
| 60 |
9 1 2 3 59
|
chpmatply1 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝐶 ‘ 𝑀 ) ∈ ( Base ‘ 𝑃 ) ) |
| 61 |
10 60
|
eqeltrid |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐾 ∈ ( Base ‘ 𝑃 ) ) |
| 62 |
|
eqid |
⊢ ( coe1 ‘ 𝐾 ) = ( coe1 ‘ 𝐾 ) |
| 63 |
|
eqid |
⊢ ( Base ‘ 𝑅 ) = ( Base ‘ 𝑅 ) |
| 64 |
62 59 3 63
|
coe1fvalcl |
⊢ ( ( 𝐾 ∈ ( Base ‘ 𝑃 ) ∧ 𝑙 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∈ ( Base ‘ 𝑅 ) ) |
| 65 |
61 64
|
sylan |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ 𝑙 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∈ ( Base ‘ 𝑅 ) ) |
| 66 |
65
|
adantlr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∈ ( Base ‘ 𝑅 ) ) |
| 67 |
2 13
|
ringidcl |
⊢ ( 𝐴 ∈ Ring → 1 ∈ 𝐵 ) |
| 68 |
22 67
|
syl |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 1 ∈ 𝐵 ) |
| 69 |
68
|
ad2antrr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → 1 ∈ 𝐵 ) |
| 70 |
63 1 2 14
|
matvscl |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) ∧ ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∈ ( Base ‘ 𝑅 ) ∧ 1 ∈ 𝐵 ) ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ∈ 𝐵 ) |
| 71 |
56 58 66 69 70
|
syl22anc |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ∈ 𝐵 ) |
| 72 |
71
|
ralrimiva |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ∀ 𝑙 ∈ ℕ0 ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ∈ 𝐵 ) |
| 73 |
|
nn0ex |
⊢ ℕ0 ∈ V |
| 74 |
73
|
a1i |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ℕ0 ∈ V ) |
| 75 |
1
|
matlmod |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ Ring ) → 𝐴 ∈ LMod ) |
| 76 |
19 75
|
sylan2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝐴 ∈ LMod ) |
| 77 |
76
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐴 ∈ LMod ) |
| 78 |
77
|
adantr |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → 𝐴 ∈ LMod ) |
| 79 |
|
eqidd |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( Scalar ‘ 𝐴 ) = ( Scalar ‘ 𝐴 ) ) |
| 80 |
|
fvexd |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ 𝑙 ∈ ℕ0 ) → ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∈ V ) |
| 81 |
|
eqid |
⊢ ( 0g ‘ ( Scalar ‘ 𝐴 ) ) = ( 0g ‘ ( Scalar ‘ 𝐴 ) ) |
| 82 |
1
|
matsca2 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ) → 𝑅 = ( Scalar ‘ 𝐴 ) ) |
| 83 |
82
|
3adant3 |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝑅 = ( Scalar ‘ 𝐴 ) ) |
| 84 |
83 57
|
eqeltrrd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( Scalar ‘ 𝐴 ) ∈ Ring ) |
| 85 |
83
|
eqcomd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( Scalar ‘ 𝐴 ) = 𝑅 ) |
| 86 |
85
|
fveq2d |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) = ( Poly1 ‘ 𝑅 ) ) |
| 87 |
86 3
|
eqtr4di |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) = 𝑃 ) |
| 88 |
87
|
fveq2d |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( Base ‘ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) ) = ( Base ‘ 𝑃 ) ) |
| 89 |
61 88
|
eleqtrrd |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → 𝐾 ∈ ( Base ‘ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) ) ) |
| 90 |
|
eqid |
⊢ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) = ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) |
| 91 |
|
eqid |
⊢ ( Base ‘ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) ) = ( Base ‘ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) ) |
| 92 |
90 91 81
|
mptcoe1fsupp |
⊢ ( ( ( Scalar ‘ 𝐴 ) ∈ Ring ∧ 𝐾 ∈ ( Base ‘ ( Poly1 ‘ ( Scalar ‘ 𝐴 ) ) ) ) → ( 𝑙 ∈ ℕ0 ↦ ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) finSupp ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ) |
| 93 |
84 89 92
|
syl2anc |
⊢ ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) → ( 𝑙 ∈ ℕ0 ↦ ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) finSupp ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ) |
| 94 |
93
|
adantr |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑙 ∈ ℕ0 ↦ ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) finSupp ( 0g ‘ ( Scalar ‘ 𝐴 ) ) ) |
| 95 |
74 78 79 2 80 69 25 81 14 94
|
mptscmfsupp0 |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( 𝑙 ∈ ℕ0 ↦ ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) finSupp ( 0g ‘ 𝐴 ) ) |
| 96 |
|
2fveq3 |
⊢ ( 𝑛 = 𝑙 → ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) = ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ) |
| 97 |
|
oveq1 |
⊢ ( 𝑛 = 𝑙 → ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) = ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) |
| 98 |
96 97
|
oveq12d |
⊢ ( 𝑛 = 𝑙 → ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) = ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) |
| 99 |
98
|
cbvmptv |
⊢ ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) = ( 𝑙 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) |
| 100 |
99
|
oveq2i |
⊢ ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑙 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) |
| 101 |
100
|
a1i |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑙 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) ) |
| 102 |
|
fveq2 |
⊢ ( 𝑛 = 𝑙 → ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) = ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ) |
| 103 |
102
|
oveq1d |
⊢ ( 𝑛 = 𝑙 → ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) |
| 104 |
103 97
|
oveq12d |
⊢ ( 𝑛 = 𝑙 → ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) = ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) |
| 105 |
104
|
cbvmptv |
⊢ ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) = ( 𝑙 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) |
| 106 |
105
|
oveq2i |
⊢ ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑙 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) |
| 107 |
106
|
a1i |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑙 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑙 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) ) |
| 108 |
16 17 18 23 2 24 25 45 55 72 95 101 107
|
gsumply1eq |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) ↔ ∀ 𝑙 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) ) |
| 109 |
108
|
biimpa |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) ) → ∀ 𝑙 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) |
| 110 |
96 103
|
eqeq12d |
⊢ ( 𝑛 = 𝑙 → ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ↔ ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) ) |
| 111 |
110
|
cbvralvw |
⊢ ( ∀ 𝑛 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ↔ ∀ 𝑙 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑙 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑙 ) ∗ 1 ) ) |
| 112 |
109 111
|
sylibr |
⊢ ( ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) ∧ ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) ) → ∀ 𝑛 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ) |
| 113 |
112
|
ex |
⊢ ( ( ( 𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵 ) ∧ ( 𝑠 ∈ ℕ ∧ 𝑏 ∈ ( 𝐵 ↑m ( 0 ... 𝑠 ) ) ) ) → ( ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) = ( ( Poly1 ‘ 𝐴 ) Σg ( 𝑛 ∈ ℕ0 ↦ ( ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ( ·𝑠 ‘ ( Poly1 ‘ 𝐴 ) ) ( 𝑛 ( .g ‘ ( mulGrp ‘ ( Poly1 ‘ 𝐴 ) ) ) ( var1 ‘ 𝐴 ) ) ) ) ) → ∀ 𝑛 ∈ ℕ0 ( 𝑈 ‘ ( 𝐺 ‘ 𝑛 ) ) = ( ( ( coe1 ‘ 𝐾 ) ‘ 𝑛 ) ∗ 1 ) ) ) |