Step |
Hyp |
Ref |
Expression |
1 |
|
aks5lema.1 |
|- ( ph -> K e. Field ) |
2 |
|
aks5lema.2 |
|- P = ( chr ` K ) |
3 |
|
aks5lema.3 |
|- ( ph -> ( P e. Prime /\ N e. NN /\ P || N ) ) |
4 |
|
aks5lema.9 |
|- B = ( S /s ( S ~QG L ) ) |
5 |
|
aks5lema.10 |
|- L = ( ( RSpan ` S ) ` { ( ( R ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` S ) ( 1r ` S ) ) } ) |
6 |
|
aks5lema.11 |
|- ( ph -> R e. NN ) |
7 |
|
aks5lema.14 |
|- .~ = { <. e , f >. | ( e e. NN /\ f e. ( Base ` ( Poly1 ` K ) ) /\ A. y e. ( ( mulGrp ` K ) PrimRoots R ) ( e ( .g ` ( mulGrp ` K ) ) ( ( ( eval1 ` K ) ` f ) ` y ) ) = ( ( ( eval1 ` K ) ` f ) ` ( e ( .g ` ( mulGrp ` K ) ) y ) ) ) } |
8 |
|
aks5lema.15 |
|- S = ( Poly1 ` ( Z/nZ ` N ) ) |
9 |
|
aks5lem3a.4 |
|- F = ( p e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) |-> ( G o. p ) ) |
10 |
|
aks5lem3a.5 |
|- G = ( q e. ( Base ` ( Z/nZ ` N ) ) |-> U. ( ( ZRHom ` K ) " q ) ) |
11 |
|
aks5lem3a.6 |
|- H = ( r e. ( Base ` ( Poly1 ` K ) ) |-> ( ( ( eval1 ` K ) ` r ) ` M ) ) |
12 |
|
aks5lem3a.7 |
|- ( ph -> M e. ( ( mulGrp ` K ) PrimRoots R ) ) |
13 |
|
aks5lem3a.8 |
|- I = ( s e. ( Base ` B ) |-> U. ( ( H o. F ) " s ) ) |
14 |
|
aks5lem3a.12 |
|- ( ph -> A e. ZZ ) |
15 |
|
aks5lem3a.13 |
|- ( ph -> [ ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( S ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( S ~QG L ) ) |
16 |
1
|
fldcrngd |
|- ( ph -> K e. CRing ) |
17 |
|
eqid |
|- ( mulGrp ` K ) = ( mulGrp ` K ) |
18 |
17
|
crngmgp |
|- ( K e. CRing -> ( mulGrp ` K ) e. CMnd ) |
19 |
16 18
|
syl |
|- ( ph -> ( mulGrp ` K ) e. CMnd ) |
20 |
6
|
nnnn0d |
|- ( ph -> R e. NN0 ) |
21 |
|
eqid |
|- ( .g ` ( mulGrp ` K ) ) = ( .g ` ( mulGrp ` K ) ) |
22 |
19 20 21
|
isprimroot |
|- ( ph -> ( M e. ( ( mulGrp ` K ) PrimRoots R ) <-> ( M e. ( Base ` ( mulGrp ` K ) ) /\ ( R ( .g ` ( mulGrp ` K ) ) M ) = ( 0g ` ( mulGrp ` K ) ) /\ A. d e. NN0 ( ( d ( .g ` ( mulGrp ` K ) ) M ) = ( 0g ` ( mulGrp ` K ) ) -> R || d ) ) ) ) |
23 |
12 22
|
mpbid |
|- ( ph -> ( M e. ( Base ` ( mulGrp ` K ) ) /\ ( R ( .g ` ( mulGrp ` K ) ) M ) = ( 0g ` ( mulGrp ` K ) ) /\ A. d e. NN0 ( ( d ( .g ` ( mulGrp ` K ) ) M ) = ( 0g ` ( mulGrp ` K ) ) -> R || d ) ) ) |
24 |
23
|
simp1d |
|- ( ph -> M e. ( Base ` ( mulGrp ` K ) ) ) |
25 |
|
eqid |
|- ( Base ` K ) = ( Base ` K ) |
26 |
17 25
|
mgpbas |
|- ( Base ` K ) = ( Base ` ( mulGrp ` K ) ) |
27 |
26
|
eqcomi |
|- ( Base ` ( mulGrp ` K ) ) = ( Base ` K ) |
28 |
24 27
|
eleqtrdi |
|- ( ph -> M e. ( Base ` K ) ) |
29 |
1 2 3 9 10 11 28
|
aks5lem1 |
|- ( ph -> ( H o. F ) e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom K ) ) |
30 |
|
eqid |
|- ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
31 |
30 17
|
rhmmhm |
|- ( ( H o. F ) e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom K ) -> ( H o. F ) e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` K ) ) ) |
32 |
29 31
|
syl |
|- ( ph -> ( H o. F ) e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` K ) ) ) |
33 |
3
|
simp2d |
|- ( ph -> N e. NN ) |
34 |
33
|
nnnn0d |
|- ( ph -> N e. NN0 ) |
35 |
|
eqid |
|- ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
36 |
|
eqid |
|- ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
37 |
|
eqid |
|- ( Z/nZ ` N ) = ( Z/nZ ` N ) |
38 |
37
|
zncrng |
|- ( N e. NN0 -> ( Z/nZ ` N ) e. CRing ) |
39 |
34 38
|
syl |
|- ( ph -> ( Z/nZ ` N ) e. CRing ) |
40 |
|
eqid |
|- ( Poly1 ` ( Z/nZ ` N ) ) = ( Poly1 ` ( Z/nZ ` N ) ) |
41 |
40
|
ply1crng |
|- ( ( Z/nZ ` N ) e. CRing -> ( Poly1 ` ( Z/nZ ` N ) ) e. CRing ) |
42 |
39 41
|
syl |
|- ( ph -> ( Poly1 ` ( Z/nZ ` N ) ) e. CRing ) |
43 |
42
|
crngringd |
|- ( ph -> ( Poly1 ` ( Z/nZ ` N ) ) e. Ring ) |
44 |
|
ringgrp |
|- ( ( Poly1 ` ( Z/nZ ` N ) ) e. Ring -> ( Poly1 ` ( Z/nZ ` N ) ) e. Grp ) |
45 |
43 44
|
syl |
|- ( ph -> ( Poly1 ` ( Z/nZ ` N ) ) e. Grp ) |
46 |
39
|
crngringd |
|- ( ph -> ( Z/nZ ` N ) e. Ring ) |
47 |
|
eqid |
|- ( var1 ` ( Z/nZ ` N ) ) = ( var1 ` ( Z/nZ ` N ) ) |
48 |
47 40 35
|
vr1cl |
|- ( ( Z/nZ ` N ) e. Ring -> ( var1 ` ( Z/nZ ` N ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
49 |
46 48
|
syl |
|- ( ph -> ( var1 ` ( Z/nZ ` N ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
50 |
|
eqid |
|- ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
51 |
|
eqid |
|- ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
52 |
|
eqid |
|- ( ZRHom ` ( Z/nZ ` N ) ) = ( ZRHom ` ( Z/nZ ` N ) ) |
53 |
40 50 51 52 39 14
|
ply1asclzrhval |
|- ( ph -> ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) = ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) |
54 |
51
|
zrhrhm |
|- ( ( Poly1 ` ( Z/nZ ` N ) ) e. Ring -> ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) e. ( ZZring RingHom ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
55 |
|
zringbas |
|- ZZ = ( Base ` ZZring ) |
56 |
55 35
|
rhmf |
|- ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) e. ( ZZring RingHom ( Poly1 ` ( Z/nZ ` N ) ) ) -> ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) : ZZ --> ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
57 |
54 56
|
syl |
|- ( ( Poly1 ` ( Z/nZ ` N ) ) e. Ring -> ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) : ZZ --> ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
58 |
43 57
|
syl |
|- ( ph -> ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) : ZZ --> ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
59 |
58 14
|
ffvelcdmd |
|- ( ph -> ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
60 |
53 59
|
eqeltrd |
|- ( ph -> ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
61 |
35 36 45 49 60
|
grpcld |
|- ( ph -> ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
62 |
30 35
|
mgpbas |
|- ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( Base ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
63 |
|
eqid |
|- ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) = ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
64 |
62 63 21
|
mhmmulg |
|- ( ( ( H o. F ) e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` K ) ) /\ N e. NN0 /\ ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) -> ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( N ( .g ` ( mulGrp ` K ) ) ( ( H o. F ) ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
65 |
32 34 61 64
|
syl3anc |
|- ( ph -> ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( N ( .g ` ( mulGrp ` K ) ) ( ( H o. F ) ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
66 |
|
eqid |
|- ( Poly1 ` K ) = ( Poly1 ` K ) |
67 |
16
|
crngringd |
|- ( ph -> K e. Ring ) |
68 |
2
|
eqcomi |
|- ( chr ` K ) = P |
69 |
3
|
simp1d |
|- ( ph -> P e. Prime ) |
70 |
|
prmnn |
|- ( P e. Prime -> P e. NN ) |
71 |
69 70
|
syl |
|- ( ph -> P e. NN ) |
72 |
71
|
nnzd |
|- ( ph -> P e. ZZ ) |
73 |
68 72
|
eqeltrid |
|- ( ph -> ( chr ` K ) e. ZZ ) |
74 |
68
|
a1i |
|- ( ph -> ( chr ` K ) = P ) |
75 |
3
|
simp3d |
|- ( ph -> P || N ) |
76 |
74 75
|
eqbrtrd |
|- ( ph -> ( chr ` K ) || N ) |
77 |
67 33 73 76 37 10
|
zndvdchrrhm |
|- ( ph -> G e. ( ( Z/nZ ` N ) RingHom K ) ) |
78 |
40 66 35 9 77
|
rhmply1 |
|- ( ph -> F e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom ( Poly1 ` K ) ) ) |
79 |
|
eqid |
|- ( Base ` ( Poly1 ` K ) ) = ( Base ` ( Poly1 ` K ) ) |
80 |
35 79
|
rhmf |
|- ( F e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom ( Poly1 ` K ) ) -> F : ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) --> ( Base ` ( Poly1 ` K ) ) ) |
81 |
78 80
|
syl |
|- ( ph -> F : ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) --> ( Base ` ( Poly1 ` K ) ) ) |
82 |
81 61
|
fvco3d |
|- ( ph -> ( ( H o. F ) ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( H ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
83 |
11
|
a1i |
|- ( ph -> H = ( r e. ( Base ` ( Poly1 ` K ) ) |-> ( ( ( eval1 ` K ) ` r ) ` M ) ) ) |
84 |
|
simpr |
|- ( ( ph /\ r = ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> r = ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
85 |
84
|
fveq2d |
|- ( ( ph /\ r = ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> ( ( eval1 ` K ) ` r ) = ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
86 |
85
|
fveq1d |
|- ( ( ph /\ r = ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> ( ( ( eval1 ` K ) ` r ) ` M ) = ( ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) ) |
87 |
81 61
|
ffvelcdmd |
|- ( ph -> ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) e. ( Base ` ( Poly1 ` K ) ) ) |
88 |
|
fvexd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) e. _V ) |
89 |
83 86 87 88
|
fvmptd |
|- ( ph -> ( H ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) ) |
90 |
|
rhmghm |
|- ( F e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom ( Poly1 ` K ) ) -> F e. ( ( Poly1 ` ( Z/nZ ` N ) ) GrpHom ( Poly1 ` K ) ) ) |
91 |
78 90
|
syl |
|- ( ph -> F e. ( ( Poly1 ` ( Z/nZ ` N ) ) GrpHom ( Poly1 ` K ) ) ) |
92 |
|
eqid |
|- ( +g ` ( Poly1 ` K ) ) = ( +g ` ( Poly1 ` K ) ) |
93 |
35 36 92
|
ghmlin |
|- ( ( F e. ( ( Poly1 ` ( Z/nZ ` N ) ) GrpHom ( Poly1 ` K ) ) /\ ( var1 ` ( Z/nZ ` N ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) /\ ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) -> ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
94 |
91 49 60 93
|
syl3anc |
|- ( ph -> ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
95 |
|
eqid |
|- ( var1 ` K ) = ( var1 ` K ) |
96 |
40 66 35 9 47 95 77
|
rhmply1vr1 |
|- ( ph -> ( F ` ( var1 ` ( Z/nZ ` N ) ) ) = ( var1 ` K ) ) |
97 |
53
|
fveq2d |
|- ( ph -> ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) = ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) |
98 |
|
eqid |
|- ( ZRHom ` ( Poly1 ` K ) ) = ( ZRHom ` ( Poly1 ` K ) ) |
99 |
78 14 51 98
|
rhmzrhval |
|- ( ph -> ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) = ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) |
100 |
97 99
|
eqtrd |
|- ( ph -> ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) = ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) |
101 |
|
eqid |
|- ( algSc ` ( Poly1 ` K ) ) = ( algSc ` ( Poly1 ` K ) ) |
102 |
|
eqid |
|- ( ZRHom ` K ) = ( ZRHom ` K ) |
103 |
66 101 98 102 16 14
|
ply1asclzrhval |
|- ( ph -> ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) = ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) |
104 |
100 103
|
eqtr4d |
|- ( ph -> ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) = ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) |
105 |
96 104
|
oveq12d |
|- ( ph -> ( ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) |
106 |
94 105
|
eqtrd |
|- ( ph -> ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) |
107 |
106
|
fveq2d |
|- ( ph -> ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ) |
108 |
107
|
fveq1d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) |
109 |
89 108
|
eqtrd |
|- ( ph -> ( H ` ( F ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) |
110 |
82 109
|
eqtrd |
|- ( ph -> ( ( H o. F ) ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) |
111 |
110
|
oveq2d |
|- ( ph -> ( N ( .g ` ( mulGrp ` K ) ) ( ( H o. F ) ` ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( N ( .g ` ( mulGrp ` K ) ) ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) ) |
112 |
65 111
|
eqtr2d |
|- ( ph -> ( N ( .g ` ( mulGrp ` K ) ) ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) = ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
113 |
|
eceq1 |
|- ( u = ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) -> [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
114 |
113
|
fveq2d |
|- ( u = ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) -> ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( I ` [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) ) |
115 |
|
fveq2 |
|- ( u = ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) -> ( ( H o. F ) ` u ) = ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
116 |
114 115
|
eqeq12d |
|- ( u = ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) -> ( ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` u ) <-> ( I ` [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) ) |
117 |
8
|
oveq1i |
|- ( S ~QG L ) = ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) |
118 |
8 117
|
oveq12i |
|- ( S /s ( S ~QG L ) ) = ( ( Poly1 ` ( Z/nZ ` N ) ) /s ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
119 |
4 118
|
eqtri |
|- B = ( ( Poly1 ` ( Z/nZ ` N ) ) /s ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
120 |
8
|
fveq2i |
|- ( RSpan ` S ) = ( RSpan ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
121 |
8
|
fveq2i |
|- ( mulGrp ` S ) = ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
122 |
121
|
fveq2i |
|- ( .g ` ( mulGrp ` S ) ) = ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
123 |
122
|
oveqi |
|- ( R ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) = ( R ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) |
124 |
8
|
fveq2i |
|- ( 1r ` S ) = ( 1r ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
125 |
8
|
fveq2i |
|- ( -g ` S ) = ( -g ` ( Poly1 ` ( Z/nZ ` N ) ) ) |
126 |
123 124 125
|
oveq123i |
|- ( ( R ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` S ) ( 1r ` S ) ) = ( ( R ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( 1r ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
127 |
126
|
sneqi |
|- { ( ( R ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` S ) ( 1r ` S ) ) } = { ( ( R ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( 1r ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) } |
128 |
120 127
|
fveq12i |
|- ( ( RSpan ` S ) ` { ( ( R ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` S ) ( 1r ` S ) ) } ) = ( ( RSpan ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` { ( ( R ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( 1r ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) } ) |
129 |
5 128
|
eqtri |
|- L = ( ( RSpan ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` { ( ( R ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( -g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( 1r ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) } ) |
130 |
1 2 3 9 10 11 12 13 119 129 6
|
aks5lem2 |
|- ( ph -> ( I e. ( B RingHom K ) /\ A. u e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` u ) ) ) |
131 |
130
|
simprd |
|- ( ph -> A. u e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` u ) ) |
132 |
30
|
ringmgp |
|- ( ( Poly1 ` ( Z/nZ ` N ) ) e. Ring -> ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) e. Mnd ) |
133 |
43 132
|
syl |
|- ( ph -> ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) e. Mnd ) |
134 |
62 63 133 34 61
|
mulgnn0cld |
|- ( ph -> ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
135 |
116 131 134
|
rspcdva |
|- ( ph -> ( I ` [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
136 |
135
|
eqcomd |
|- ( ph -> ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( I ` [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) ) |
137 |
8
|
eqcomi |
|- ( Poly1 ` ( Z/nZ ` N ) ) = S |
138 |
137
|
a1i |
|- ( ph -> ( Poly1 ` ( Z/nZ ` N ) ) = S ) |
139 |
138
|
fveq2d |
|- ( ph -> ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( mulGrp ` S ) ) |
140 |
139
|
fveq2d |
|- ( ph -> ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) = ( .g ` ( mulGrp ` S ) ) ) |
141 |
|
eqidd |
|- ( ph -> N = N ) |
142 |
138
|
fveq2d |
|- ( ph -> ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( +g ` S ) ) |
143 |
|
eqidd |
|- ( ph -> ( var1 ` ( Z/nZ ` N ) ) = ( var1 ` ( Z/nZ ` N ) ) ) |
144 |
138
|
fveq2d |
|- ( ph -> ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) = ( algSc ` S ) ) |
145 |
144
|
fveq1d |
|- ( ph -> ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) = ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) |
146 |
142 143 145
|
oveq123d |
|- ( ph -> ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) = ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) |
147 |
140 141 146
|
oveq123d |
|- ( ph -> ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
148 |
147
|
eceq1d |
|- ( ph -> [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
149 |
138
|
oveq1d |
|- ( ph -> ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = ( S ~QG L ) ) |
150 |
149
|
eceq2d |
|- ( ph -> [ ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( S ~QG L ) ) |
151 |
148 150
|
eqtrd |
|- ( ph -> [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( N ( .g ` ( mulGrp ` S ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( S ~QG L ) ) |
152 |
|
eqcom |
|- ( ( Poly1 ` ( Z/nZ ` N ) ) = S <-> S = ( Poly1 ` ( Z/nZ ` N ) ) ) |
153 |
152
|
imbi2i |
|- ( ( ph -> ( Poly1 ` ( Z/nZ ` N ) ) = S ) <-> ( ph -> S = ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
154 |
138 153
|
mpbi |
|- ( ph -> S = ( Poly1 ` ( Z/nZ ` N ) ) ) |
155 |
154
|
fveq2d |
|- ( ph -> ( +g ` S ) = ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
156 |
154
|
fveq2d |
|- ( ph -> ( mulGrp ` S ) = ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
157 |
156
|
fveq2d |
|- ( ph -> ( .g ` ( mulGrp ` S ) ) = ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ) |
158 |
157
|
oveqd |
|- ( ph -> ( N ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) = ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) |
159 |
154
|
fveq2d |
|- ( ph -> ( algSc ` S ) = ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
160 |
159
|
fveq1d |
|- ( ph -> ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) = ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) |
161 |
155 158 160
|
oveq123d |
|- ( ph -> ( ( N ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) |
162 |
161
|
eceq1d |
|- ( ph -> [ ( ( N ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( S ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( S ~QG L ) ) |
163 |
149
|
eqcomd |
|- ( ph -> ( S ~QG L ) = ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
164 |
163
|
eceq2d |
|- ( ph -> [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( S ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
165 |
162 164
|
eqtrd |
|- ( ph -> [ ( ( N ( .g ` ( mulGrp ` S ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` S ) ( ( algSc ` S ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( S ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
166 |
151 15 165
|
3eqtrd |
|- ( ph -> [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
167 |
166
|
fveq2d |
|- ( ph -> ( I ` [ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( I ` [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) ) |
168 |
|
eceq1 |
|- ( u = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) -> [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) = [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) |
169 |
168
|
fveq2d |
|- ( u = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) -> ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( I ` [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) ) |
170 |
|
fveq2 |
|- ( u = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) -> ( ( H o. F ) ` u ) = ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
171 |
169 170
|
eqeq12d |
|- ( u = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) -> ( ( I ` [ u ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` u ) <-> ( I ` [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
172 |
62 63 133 34 49
|
mulgnn0cld |
|- ( ph -> ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
173 |
35 36 45 172 60
|
grpcld |
|- ( ph -> ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) |
174 |
171 131 173
|
rspcdva |
|- ( ph -> ( I ` [ ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ] ( ( Poly1 ` ( Z/nZ ` N ) ) ~QG L ) ) = ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
175 |
136 167 174
|
3eqtrd |
|- ( ph -> ( ( H o. F ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( ( var1 ` ( Z/nZ ` N ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
176 |
81 173
|
fvco3d |
|- ( ph -> ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( H ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
177 |
|
simpr |
|- ( ( ph /\ r = ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> r = ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
178 |
177
|
fveq2d |
|- ( ( ph /\ r = ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> ( ( eval1 ` K ) ` r ) = ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
179 |
178
|
fveq1d |
|- ( ( ph /\ r = ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) -> ( ( ( eval1 ` K ) ` r ) ` M ) = ( ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) ) |
180 |
81 173
|
ffvelcdmd |
|- ( ph -> ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) e. ( Base ` ( Poly1 ` K ) ) ) |
181 |
|
fvexd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) e. _V ) |
182 |
83 179 180 181
|
fvmptd |
|- ( ph -> ( H ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) ) |
183 |
35 36 92
|
ghmlin |
|- ( ( F e. ( ( Poly1 ` ( Z/nZ ` N ) ) GrpHom ( Poly1 ` K ) ) /\ ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) /\ ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) -> ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
184 |
91 172 60 183
|
syl3anc |
|- ( ph -> ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) |
185 |
184
|
fveq2d |
|- ( ph -> ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( eval1 ` K ) ` ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ) |
186 |
185
|
fveq1d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) ) |
187 |
|
eqid |
|- ( mulGrp ` ( Poly1 ` K ) ) = ( mulGrp ` ( Poly1 ` K ) ) |
188 |
30 187
|
rhmmhm |
|- ( F e. ( ( Poly1 ` ( Z/nZ ` N ) ) RingHom ( Poly1 ` K ) ) -> F e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` ( Poly1 ` K ) ) ) ) |
189 |
78 188
|
syl |
|- ( ph -> F e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` ( Poly1 ` K ) ) ) ) |
190 |
|
eqid |
|- ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) = ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) |
191 |
62 63 190
|
mhmmulg |
|- ( ( F e. ( ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) MndHom ( mulGrp ` ( Poly1 ` K ) ) ) /\ N e. NN0 /\ ( var1 ` ( Z/nZ ` N ) ) e. ( Base ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) -> ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) = ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ) |
192 |
189 34 49 191
|
syl3anc |
|- ( ph -> ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) = ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ) |
193 |
192 97
|
oveq12d |
|- ( ph -> ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) |
194 |
193
|
fveq2d |
|- ( ph -> ( ( eval1 ` K ) ` ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) ) |
195 |
194
|
fveq1d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) ` M ) ) |
196 |
96
|
oveq2d |
|- ( ph -> ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) = ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ) |
197 |
196 99
|
oveq12d |
|- ( ph -> ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) = ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) |
198 |
197
|
fveq2d |
|- ( ph -> ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) = ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) ) |
199 |
198
|
fveq1d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) ` M ) ) |
200 |
|
eqid |
|- ( eval1 ` K ) = ( eval1 ` K ) |
201 |
200 95 25 66 79 16 28
|
evl1vard |
|- ( ph -> ( ( var1 ` K ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( var1 ` K ) ) ` M ) = M ) ) |
202 |
200 66 25 79 16 28 201 190 21 34
|
evl1expd |
|- ( ph -> ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ) ` M ) = ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
203 |
66
|
ply1crng |
|- ( K e. CRing -> ( Poly1 ` K ) e. CRing ) |
204 |
16 203
|
syl |
|- ( ph -> ( Poly1 ` K ) e. CRing ) |
205 |
204
|
crngringd |
|- ( ph -> ( Poly1 ` K ) e. Ring ) |
206 |
98
|
zrhrhm |
|- ( ( Poly1 ` K ) e. Ring -> ( ZRHom ` ( Poly1 ` K ) ) e. ( ZZring RingHom ( Poly1 ` K ) ) ) |
207 |
55 79
|
rhmf |
|- ( ( ZRHom ` ( Poly1 ` K ) ) e. ( ZZring RingHom ( Poly1 ` K ) ) -> ( ZRHom ` ( Poly1 ` K ) ) : ZZ --> ( Base ` ( Poly1 ` K ) ) ) |
208 |
206 207
|
syl |
|- ( ( Poly1 ` K ) e. Ring -> ( ZRHom ` ( Poly1 ` K ) ) : ZZ --> ( Base ` ( Poly1 ` K ) ) ) |
209 |
205 208
|
syl |
|- ( ph -> ( ZRHom ` ( Poly1 ` K ) ) : ZZ --> ( Base ` ( Poly1 ` K ) ) ) |
210 |
209 14
|
ffvelcdmd |
|- ( ph -> ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) e. ( Base ` ( Poly1 ` K ) ) ) |
211 |
|
eqidd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) |
212 |
210 211
|
jca |
|- ( ph -> ( ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) ) |
213 |
|
eqid |
|- ( +g ` K ) = ( +g ` K ) |
214 |
200 66 25 79 16 28 202 212 92 213
|
evl1addd |
|- ( ph -> ( ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) ` M ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) ) ) |
215 |
214
|
simprd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) ` M ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) ) |
216 |
102
|
zrhrhm |
|- ( K e. Ring -> ( ZRHom ` K ) e. ( ZZring RingHom K ) ) |
217 |
55 25
|
rhmf |
|- ( ( ZRHom ` K ) e. ( ZZring RingHom K ) -> ( ZRHom ` K ) : ZZ --> ( Base ` K ) ) |
218 |
216 217
|
syl |
|- ( K e. Ring -> ( ZRHom ` K ) : ZZ --> ( Base ` K ) ) |
219 |
67 218
|
syl |
|- ( ph -> ( ZRHom ` K ) : ZZ --> ( Base ` K ) ) |
220 |
219 14
|
ffvelcdmd |
|- ( ph -> ( ( ZRHom ` K ) ` A ) e. ( Base ` K ) ) |
221 |
200 66 25 101 79 16 220 28
|
evl1scad |
|- ( ph -> ( ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ` M ) = ( ( ZRHom ` K ) ` A ) ) ) |
222 |
221
|
simprd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ` M ) = ( ( ZRHom ` K ) ` A ) ) |
223 |
222
|
eqcomd |
|- ( ph -> ( ( ZRHom ` K ) ` A ) = ( ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ` M ) ) |
224 |
103
|
fveq2d |
|- ( ph -> ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) = ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) |
225 |
224
|
fveq1d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) |
226 |
223 225
|
eqtr2d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) = ( ( ZRHom ` K ) ` A ) ) |
227 |
226
|
oveq2d |
|- ( ph -> ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ( eval1 ` K ) ` ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ` M ) ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ZRHom ` K ) ` A ) ) ) |
228 |
215 227
|
eqtrd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( var1 ` K ) ) ( +g ` ( Poly1 ` K ) ) ( ( ZRHom ` ( Poly1 ` K ) ) ` A ) ) ) ` M ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ZRHom ` K ) ` A ) ) ) |
229 |
199 228
|
eqtrd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) ` M ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ZRHom ` K ) ` A ) ) ) |
230 |
19
|
cmnmndd |
|- ( ph -> ( mulGrp ` K ) e. Mnd ) |
231 |
26 21 230 34 28
|
mulgnn0cld |
|- ( ph -> ( N ( .g ` ( mulGrp ` K ) ) M ) e. ( Base ` K ) ) |
232 |
200 95 25 66 79 16 231
|
evl1vard |
|- ( ph -> ( ( var1 ` K ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( var1 ` K ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) = ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
233 |
200 66 25 101 79 16 220 231
|
evl1scad |
|- ( ph -> ( ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) = ( ( ZRHom ` K ) ` A ) ) ) |
234 |
200 66 25 79 16 231 232 233 92 213
|
evl1addd |
|- ( ph -> ( ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) e. ( Base ` ( Poly1 ` K ) ) /\ ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ZRHom ` K ) ` A ) ) ) ) |
235 |
234
|
simprd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) = ( ( N ( .g ` ( mulGrp ` K ) ) M ) ( +g ` K ) ( ( ZRHom ` K ) ` A ) ) ) |
236 |
229 235
|
eqtr4d |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` K ) ) ) ( F ` ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( ZRHom ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` A ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
237 |
195 236
|
eqtrd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( ( F ` ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ) ( +g ` ( Poly1 ` K ) ) ( F ` ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
238 |
186 237
|
eqtrd |
|- ( ph -> ( ( ( eval1 ` K ) ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) ` M ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
239 |
182 238
|
eqtrd |
|- ( ph -> ( H ` ( F ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
240 |
176 239
|
eqtrd |
|- ( ph -> ( ( H o. F ) ` ( ( N ( .g ` ( mulGrp ` ( Poly1 ` ( Z/nZ ` N ) ) ) ) ( var1 ` ( Z/nZ ` N ) ) ) ( +g ` ( Poly1 ` ( Z/nZ ` N ) ) ) ( ( algSc ` ( Poly1 ` ( Z/nZ ` N ) ) ) ` ( ( ZRHom ` ( Z/nZ ` N ) ) ` A ) ) ) ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |
241 |
112 175 240
|
3eqtrd |
|- ( ph -> ( N ( .g ` ( mulGrp ` K ) ) ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` M ) ) = ( ( ( eval1 ` K ) ` ( ( var1 ` K ) ( +g ` ( Poly1 ` K ) ) ( ( algSc ` ( Poly1 ` K ) ) ` ( ( ZRHom ` K ) ` A ) ) ) ) ` ( N ( .g ` ( mulGrp ` K ) ) M ) ) ) |