Step | Hyp | Ref
| Expression |
1 | | id 22 |
. . 3
  g    coe1           g 
 
                   g 
  coe1     
     g                        |
2 | | simp1 1061 |
. . . . . 6
 
   |
3 | 2 | ad2antrr 762 |
. . . . 5
   


      
  |
4 | | crngring 18558 |
. . . . . . 7

  |
5 | 4 | 3ad2ant2 1083 |
. . . . . 6
 
   |
6 | 5 | ad2antrr 762 |
. . . . 5
   


      
  |
7 | | chcoeffeq.b |
. . . . . 6
     |
8 | | eqid 2622 |
. . . . . 6
         |
9 | | chcoeffeq.a |
. . . . . . . . . . 11
 Mat   |
10 | 9 | matring 20249 |
. . . . . . . . . 10
 

  |
11 | 4, 10 | sylan2 491 |
. . . . . . . . 9
 

  |
12 | | ringcmn 18581 |
. . . . . . . . 9

CMnd |
13 | 11, 12 | syl 17 |
. . . . . . . 8
 

CMnd |
14 | 13 | 3adant3 1081 |
. . . . . . 7
 
 CMnd |
15 | 14 | ad2antrr 762 |
. . . . . 6
   


      
CMnd |
16 | | nn0ex 11298 |
. . . . . . 7
 |
17 | 16 | a1i 11 |
. . . . . 6
   


      
  |
18 | 3, 6, 10 | syl2anc 693 |
. . . . . . . . 9
   


      
  |
19 | 18 | adantr 481 |
. . . . . . . 8
    
            |
20 | 2, 5, 10 | syl2anc 693 |
. . . . . . . . . . 11
 
   |
21 | | eqid 2622 |
. . . . . . . . . . . 12
mulGrp  mulGrp   |
22 | 21 | ringmgp 18553 |
. . . . . . . . . . 11

mulGrp    |
23 | 20, 22 | syl 17 |
. . . . . . . . . 10
 
 mulGrp    |
24 | 23 | ad3antrrr 766 |
. . . . . . . . 9
    
          mulGrp    |
25 | | simpr 477 |
. . . . . . . . 9
    
            |
26 | | simpll3 1102 |
. . . . . . . . . 10
   


      
  |
27 | 26 | adantr 481 |
. . . . . . . . 9
    
            |
28 | 21, 7 | mgpbas 18495 |
. . . . . . . . . 10
   mulGrp    |
29 | | cayhamlem.e1 |
. . . . . . . . . 10
.g mulGrp    |
30 | 28, 29 | mulgnn0cl 17558 |
. . . . . . . . 9
  mulGrp 
 
   |
31 | 24, 25, 27, 30 | syl3anc 1326 |
. . . . . . . 8
    
          
   |
32 | | eqid 2622 |
. . . . . . . . . . . 12
 ConstPolyMat   ConstPolyMat   |
33 | | chcoeffeq.u |
. . . . . . . . . . . 12

cPolyMatToMat   |
34 | 9, 7, 32, 33 | cpm2mf 20557 |
. . . . . . . . . . 11
 
    ConstPolyMat      |
35 | 2, 5, 34 | syl2anc 693 |
. . . . . . . . . 10
 
    ConstPolyMat      |
36 | 35 | ad3antrrr 766 |
. . . . . . . . 9
    
             ConstPolyMat      |
37 | | simplr 792 |
. . . . . . . . . . 11
   


      
  |
38 | | simpr 477 |
. . . . . . . . . . 11
   


      

       |
39 | | chcoeffeq.p |
. . . . . . . . . . . 12
Poly1   |
40 | | chcoeffeq.y |
. . . . . . . . . . . 12
 Mat   |
41 | | chcoeffeq.r |
. . . . . . . . . . . 12
     |
42 | | chcoeffeq.s |
. . . . . . . . . . . 12
     |
43 | | chcoeffeq.0 |
. . . . . . . . . . . 12
     |
44 | | chcoeffeq.t |
. . . . . . . . . . . 12

matToPolyMat   |
45 | | chcoeffeq.g |
. . . . . . . . . . . 12
                     
                                                |
46 | 9, 7, 39, 40, 41, 42, 43, 44, 45, 32 | chfacfisfcpmat 20660 |
. . . . . . . . . . 11
    
             ConstPolyMat    |
47 | 3, 6, 26, 37, 38, 46 | syl32anc 1334 |
. . . . . . . . . 10
   


      
    
ConstPolyMat    |
48 | 47 | ffvelrnda 6359 |
. . . . . . . . 9
    
              
ConstPolyMat    |
49 | 36, 48 | ffvelrnd 6360 |
. . . . . . . 8
    
                    |
50 | | eqid 2622 |
. . . . . . . . 9
         |
51 | 7, 50 | ringcl 18561 |
. . . . . . . 8
  

                             |
52 | 19, 31, 49, 51 | syl3anc 1326 |
. . . . . . 7
    
                              |
53 | | eqid 2622 |
. . . . . . 7

 
                                      |
54 | 52, 53 | fmptd 6385 |
. . . . . 6
   


      
                          |
55 | | fvexd 6203 |
. . . . . . 7
   


      
      |
56 | | ovexd 6680 |
. . . . . . 7
    
                              |
57 | 9, 7, 39, 40, 41, 42, 43, 44, 45 | chfacffsupp 20661 |
. . . . . . . . 9
    
       
finSupp       |
58 | 57 | anassrs 680 |
. . . . . . . 8
   


      
finSupp       |
59 | | ovex 6678 |
. . . . . . . . . . . . 13
 ConstPolyMat   |
60 | 59, 16 | pm3.2i 471 |
. . . . . . . . . . . 12
  ConstPolyMat 
  |
61 | | elmapg 7870 |
. . . . . . . . . . . 12
  
ConstPolyMat 
    ConstPolyMat  
    
ConstPolyMat     |
62 | 60, 61 | mp1i 13 |
. . . . . . . . . . 11
   


      
   ConstPolyMat  
    
ConstPolyMat     |
63 | 47, 62 | mpbird 247 |
. . . . . . . . . 10
   


      
  ConstPolyMat     |
64 | | fvex 6201 |
. . . . . . . . . 10
     |
65 | | fsuppmapnn0ub 12795 |
. . . . . . . . . 10
    ConstPolyMat         finSupp     
 
            |
66 | 63, 64, 65 | sylancl 694 |
. . . . . . . . 9
   


      
 finSupp       
            |
67 | | csbov12g 6689 |
. . . . . . . . . . . . . . . . 17

  ![]_ ]_](_urbrack.gif)  
                   ![]_ ]_](_urbrack.gif)           ![]_ ]_](_urbrack.gif)            |
68 | | csbov1g 6690 |
. . . . . . . . . . . . . . . . . . 19

  ![]_ ]_](_urbrack.gif)      ![]_ ]_](_urbrack.gif)    |
69 | | csbvarg 4003 |
. . . . . . . . . . . . . . . . . . . 20

  ![]_ ]_](_urbrack.gif)   |
70 | 69 | oveq1d 6665 |
. . . . . . . . . . . . . . . . . . 19

   ![]_ ]_](_urbrack.gif)  
   |
71 | 68, 70 | eqtrd 2656 |
. . . . . . . . . . . . . . . . . 18

  ![]_ ]_](_urbrack.gif)       |
72 | | csbfv2g 6232 |
. . . . . . . . . . . . . . . . . . 19

  ![]_ ]_](_urbrack.gif)              ![]_ ]_](_urbrack.gif)        |
73 | | csbfv 6233 |
. . . . . . . . . . . . . . . . . . . . 21
  ![]_ ]_](_urbrack.gif)          |
74 | 73 | a1i 11 |
. . . . . . . . . . . . . . . . . . . 20

  ![]_ ]_](_urbrack.gif)           |
75 | 74 | fveq2d 6195 |
. . . . . . . . . . . . . . . . . . 19

     ![]_ ]_](_urbrack.gif)                |
76 | 72, 75 | eqtrd 2656 |
. . . . . . . . . . . . . . . . . 18

  ![]_ ]_](_urbrack.gif)                   |
77 | 71, 76 | oveq12d 6668 |
. . . . . . . . . . . . . . . . 17

   ![]_ ]_](_urbrack.gif) 
         ![]_ ]_](_urbrack.gif)                              |
78 | 67, 77 | eqtrd 2656 |
. . . . . . . . . . . . . . . 16

  ![]_ ]_](_urbrack.gif)  
                                    |
79 | 78 | ad2antlr 763 |
. . . . . . . . . . . . . . 15
     
                   
 ![]_ ]_](_urbrack.gif)                    
                  |
80 | | fveq2 6191 |
. . . . . . . . . . . . . . . . 17
                           |
81 | 2, 5 | jca 554 |
. . . . . . . . . . . . . . . . . . . 20
 
 
   |
82 | 81 | adantr 481 |
. . . . . . . . . . . . . . . . . . 19
     
   |
83 | | eqid 2622 |
. . . . . . . . . . . . . . . . . . . 20
         |
84 | 9, 33, 39, 40, 8, 83 | m2cpminv0 20566 |
. . . . . . . . . . . . . . . . . . 19
 
               |
85 | 82, 84 | syl 17 |
. . . . . . . . . . . . . . . . . 18
                   |
86 | 85 | ad2antrr 762 |
. . . . . . . . . . . . . . . . 17
    
                        |
87 | 80, 86 | sylan9eqr 2678 |
. . . . . . . . . . . . . . . 16
     
                                 |
88 | 87 | oveq2d 6666 |
. . . . . . . . . . . . . . 15
     
                                      
              |
89 | 18 | adantr 481 |
. . . . . . . . . . . . . . . . . 18
    
            |
90 | 23 | ad3antrrr 766 |
. . . . . . . . . . . . . . . . . . 19
    
          mulGrp    |
91 | | simpr 477 |
. . . . . . . . . . . . . . . . . . 19
    
            |
92 | 26 | adantr 481 |
. . . . . . . . . . . . . . . . . . 19
    
            |
93 | 28, 29 | mulgnn0cl 17558 |
. . . . . . . . . . . . . . . . . . 19
  mulGrp 
 
   |
94 | 90, 91, 92, 93 | syl3anc 1326 |
. . . . . . . . . . . . . . . . . 18
    
          
   |
95 | 89, 94 | jca 554 |
. . . . . . . . . . . . . . . . 17
    
          

    |
96 | 95 | adantr 481 |
. . . . . . . . . . . . . . . 16
     
                         |
97 | 7, 50, 8 | ringrz 18588 |
. . . . . . . . . . . . . . . 16
  
                      |
98 | 96, 97 | syl 17 |
. . . . . . . . . . . . . . 15
     
                                       |
99 | 79, 88, 98 | 3eqtrd 2660 |
. . . . . . . . . . . . . 14
     
                   
 ![]_ ]_](_urbrack.gif)                         |
100 | 99 | ex 450 |
. . . . . . . . . . . . 13
    
                   
 ![]_ ]_](_urbrack.gif)                          |
101 | 100 | adantlr 751 |
. . . . . . . . . . . 12
     
                    
 ![]_ ]_](_urbrack.gif)                          |
102 | 101 | imim2d 57 |
. . . . . . . . . . 11
     
                      
  ![]_ ]_](_urbrack.gif)                           |
103 | 102 | ralimdva 2962 |
. . . . . . . . . 10
    
           

          

 ![]_ ]_](_urbrack.gif)                           |
104 | 103 | reximdva 3017 |
. . . . . . . . 9
   


      
 
 
        
  
  ![]_ ]_](_urbrack.gif)                           |
105 | 66, 104 | syld 47 |
. . . . . . . 8
   


      
 finSupp       
  ![]_ ]_](_urbrack.gif)                           |
106 | 58, 105 | mpd 15 |
. . . . . . 7
   


      
  
  ![]_ ]_](_urbrack.gif)                          |
107 | 55, 56, 106 | mptnn0fsupp 12797 |
. . . . . 6
   


      
                    finSupp       |
108 | 7, 8, 15, 17, 54, 107 | gsumcl 18316 |
. . . . 5
   


      
 g   
                    |
109 | 33, 9, 7, 44 | m2cpminvid 20558 |
. . . . 5
 
 g                              g                         g 
                      |
110 | 3, 6, 108, 109 | syl3anc 1326 |
. . . 4
   


      
       g                         g 
                      |
111 | 39, 40 | pmatring 20498 |
. . . . . . . . . 10
 

  |
112 | 2, 5, 111 | syl2anc 693 |
. . . . . . . . 9
 
   |
113 | | ringmnd 18556 |
. . . . . . . . 9

  |
114 | 112, 113 | syl 17 |
. . . . . . . 8
 
   |
115 | 114 | ad2antrr 762 |
. . . . . . 7
   


      
  |
116 | | chcoeffeq.w |
. . . . . . . . . 10
     |
117 | 44, 9, 7, 39, 40, 116 | mat2pmatghm 20535 |
. . . . . . . . 9
 

    |
118 | 3, 6, 117 | syl2anc 693 |
. . . . . . . 8
   


      

   |
119 | | ghmmhm 17670 |
. . . . . . . 8
  

MndHom    |
120 | 118, 119 | syl 17 |
. . . . . . 7
   


      

MndHom    |
121 | 20 | ad3antrrr 766 |
. . . . . . . 8
    
            |
122 | 4, 34 | sylan2 491 |
. . . . . . . . . . 11
 
    ConstPolyMat      |
123 | 122 | 3adant3 1081 |
. . . . . . . . . 10
 
    ConstPolyMat      |
124 | 123 | ad3antrrr 766 |
. . . . . . . . 9
    
             ConstPolyMat      |
125 | 124, 48 | ffvelrnd 6360 |
. . . . . . . 8
    
                    |
126 | 121, 31, 125, 51 | syl3anc 1326 |
. . . . . . 7
    
                              |
127 | 7, 8, 15, 115, 17, 120, 126, 107 | gsummptmhm 18340 |
. . . . . 6
   


      
 g                              g 
 
                     |
128 | 44, 9, 7, 39, 40, 116 | mat2pmatrhm 20539 |
. . . . . . . . . . . 12
 

 RingHom    |
129 | 128 | 3adant3 1081 |
. . . . . . . . . . 11
 
  RingHom
   |
130 | 129 | ad3antrrr 766 |
. . . . . . . . . 10
    
           RingHom
   |
131 | 7, 50, 41 | rhmmul 18727 |
. . . . . . . . . 10
   RingHom  

             
                     
 
               |
132 | 130, 31, 125, 131 | syl3anc 1326 |
. . . . . . . . 9
    
              
                     
 
               |
133 | 44, 9, 7, 39, 40, 116 | mat2pmatmhm 20538 |
. . . . . . . . . . . . 13
 

 mulGrp  MndHom mulGrp     |
134 | 133 | 3adant3 1081 |
. . . . . . . . . . . 12
 
  mulGrp  MndHom mulGrp     |
135 | 134 | ad3antrrr 766 |
. . . . . . . . . . 11
    
           mulGrp  MndHom mulGrp     |
136 | | cayhamlem.e2 |
. . . . . . . . . . . 12
.g mulGrp    |
137 | 28, 29, 136 | mhmmulg 17583 |
. . . . . . . . . . 11
   mulGrp  MndHom mulGrp  
                 |
138 | 135, 25, 27, 137 | syl3anc 1326 |
. . . . . . . . . 10
    
                          |
139 | 2 | ad3antrrr 766 |
. . . . . . . . . . 11
    
            |
140 | 5 | ad3antrrr 766 |
. . . . . . . . . . 11
    
            |
141 | 32, 33, 44 | m2cpminvid2 20560 |
. . . . . . . . . . 11
 
    
ConstPolyMat                     |
142 | 139, 140,
48, 141 | syl3anc 1326 |
. . . . . . . . . 10
    
                            |
143 | 138, 142 | oveq12d 6668 |
. . . . . . . . 9
    
              
 
                             |
144 | 132, 143 | eqtrd 2656 |
. . . . . . . 8
    
              
                                 |
145 | 144 | mpteq2dva 4744 |
. . . . . . 7
   


      
                                          |
146 | 145 | oveq2d 6666 |
. . . . . 6
   


      
 g                           g 
                  |
147 | 127, 146 | eqtr3d 2658 |
. . . . 5
   


      
    g                        g 
                  |
148 | 147 | fveq2d 6195 |
. . . 4
   


      
       g                            g 
                   |
149 | 110, 148 | eqtr3d 2658 |
. . 3
   


      
 g   
                     
g                     |
150 | 1, 149 | sylan9eqr 2678 |
. 2
    
          g 
  coe1           g 
 
                  
 g    coe1     
        g                     |
151 | | chcoeffeq.c |
. . 3
 CharPlyMat
  |
152 | | chcoeffeq.k |
. . 3
     |
153 | | chcoeffeq.1 |
. . 3
     |
154 | | chcoeffeq.m |
. . 3
     |
155 | 9, 7, 39, 40, 41, 42, 43, 44, 151, 152, 45, 116, 153, 154, 33, 29, 50 | cayhamlem3 20692 |
. 2
 
           g    coe1           g 
 
                    |
156 | 150, 155 | reximddv2 3020 |
1
 
           g    coe1             
g                     |