| Step | Hyp | Ref | Expression | 
						
							| 1 |  | chpmatply1.c | ⊢ 𝐶  =  ( 𝑁  CharPlyMat  𝑅 ) | 
						
							| 2 |  | chpmatply1.a | ⊢ 𝐴  =  ( 𝑁  Mat  𝑅 ) | 
						
							| 3 |  | chpmatply1.b | ⊢ 𝐵  =  ( Base ‘ 𝐴 ) | 
						
							| 4 |  | chpmatply1.p | ⊢ 𝑃  =  ( Poly1 ‘ 𝑅 ) | 
						
							| 5 |  | chpmatply1.e | ⊢ 𝐸  =  ( Base ‘ 𝑃 ) | 
						
							| 6 |  | eqid | ⊢ ( 𝑁  Mat  𝑃 )  =  ( 𝑁  Mat  𝑃 ) | 
						
							| 7 |  | eqid | ⊢ ( 𝑁  maDet  𝑃 )  =  ( 𝑁  maDet  𝑃 ) | 
						
							| 8 |  | eqid | ⊢ ( -g ‘ ( 𝑁  Mat  𝑃 ) )  =  ( -g ‘ ( 𝑁  Mat  𝑃 ) ) | 
						
							| 9 |  | eqid | ⊢ ( var1 ‘ 𝑅 )  =  ( var1 ‘ 𝑅 ) | 
						
							| 10 |  | eqid | ⊢ (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) )  =  (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) | 
						
							| 11 |  | eqid | ⊢ ( 𝑁  matToPolyMat  𝑅 )  =  ( 𝑁  matToPolyMat  𝑅 ) | 
						
							| 12 |  | eqid | ⊢ ( 1r ‘ ( 𝑁  Mat  𝑃 ) )  =  ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) | 
						
							| 13 | 1 2 3 4 6 7 8 9 10 11 12 | chpmatval | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  CRing  ∧  𝑀  ∈  𝐵 )  →  ( 𝐶 ‘ 𝑀 )  =  ( ( 𝑁  maDet  𝑃 ) ‘ ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) ) ) ) | 
						
							| 14 | 4 | ply1crng | ⊢ ( 𝑅  ∈  CRing  →  𝑃  ∈  CRing ) | 
						
							| 15 | 14 | 3ad2ant2 | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  CRing  ∧  𝑀  ∈  𝐵 )  →  𝑃  ∈  CRing ) | 
						
							| 16 |  | crngring | ⊢ ( 𝑅  ∈  CRing  →  𝑅  ∈  Ring ) | 
						
							| 17 |  | eqid | ⊢ ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) )  =  ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) ) | 
						
							| 18 | 2 3 4 6 9 11 8 10 12 17 | chmatcl | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  Ring  ∧  𝑀  ∈  𝐵 )  →  ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) )  ∈  ( Base ‘ ( 𝑁  Mat  𝑃 ) ) ) | 
						
							| 19 | 16 18 | syl3an2 | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  CRing  ∧  𝑀  ∈  𝐵 )  →  ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) )  ∈  ( Base ‘ ( 𝑁  Mat  𝑃 ) ) ) | 
						
							| 20 |  | eqid | ⊢ ( Base ‘ ( 𝑁  Mat  𝑃 ) )  =  ( Base ‘ ( 𝑁  Mat  𝑃 ) ) | 
						
							| 21 | 7 6 20 5 | mdetcl | ⊢ ( ( 𝑃  ∈  CRing  ∧  ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) )  ∈  ( Base ‘ ( 𝑁  Mat  𝑃 ) ) )  →  ( ( 𝑁  maDet  𝑃 ) ‘ ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) ) )  ∈  𝐸 ) | 
						
							| 22 | 15 19 21 | syl2anc | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  CRing  ∧  𝑀  ∈  𝐵 )  →  ( ( 𝑁  maDet  𝑃 ) ‘ ( ( ( var1 ‘ 𝑅 ) (  ·𝑠  ‘ ( 𝑁  Mat  𝑃 ) ) ( 1r ‘ ( 𝑁  Mat  𝑃 ) ) ) ( -g ‘ ( 𝑁  Mat  𝑃 ) ) ( ( 𝑁  matToPolyMat  𝑅 ) ‘ 𝑀 ) ) )  ∈  𝐸 ) | 
						
							| 23 | 13 22 | eqeltrd | ⊢ ( ( 𝑁  ∈  Fin  ∧  𝑅  ∈  CRing  ∧  𝑀  ∈  𝐵 )  →  ( 𝐶 ‘ 𝑀 )  ∈  𝐸 ) |