| Step | Hyp | Ref | Expression | 
						
							| 1 |  | cshwrepswhash1.m | ⊢ 𝑀  =  { 𝑤  ∈  Word  𝑉  ∣  ∃ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊  cyclShift  𝑛 )  =  𝑤 } | 
						
							| 2 | 1 | cshwsiun | ⊢ ( 𝑊  ∈  Word  𝑉  →  𝑀  =  ∪  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) { ( 𝑊  cyclShift  𝑛 ) } ) | 
						
							| 3 | 2 | ad2antrr | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  𝑀  =  ∪  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) { ( 𝑊  cyclShift  𝑛 ) } ) | 
						
							| 4 | 3 | fveq2d | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  ( ♯ ‘ 𝑀 )  =  ( ♯ ‘ ∪  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) { ( 𝑊  cyclShift  𝑛 ) } ) ) | 
						
							| 5 |  | fzofi | ⊢ ( 0 ..^ ( ♯ ‘ 𝑊 ) )  ∈  Fin | 
						
							| 6 | 5 | a1i | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  ( 0 ..^ ( ♯ ‘ 𝑊 ) )  ∈  Fin ) | 
						
							| 7 |  | snfi | ⊢ { ( 𝑊  cyclShift  𝑛 ) }  ∈  Fin | 
						
							| 8 | 7 | a1i | ⊢ ( ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  ∧  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  →  { ( 𝑊  cyclShift  𝑛 ) }  ∈  Fin ) | 
						
							| 9 |  | id | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ ) ) | 
						
							| 10 | 9 | cshwsdisj | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  Disj  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) { ( 𝑊  cyclShift  𝑛 ) } ) | 
						
							| 11 | 6 8 10 | hashiun | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  ( ♯ ‘ ∪  𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) { ( 𝑊  cyclShift  𝑛 ) } )  =  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( ♯ ‘ { ( 𝑊  cyclShift  𝑛 ) } ) ) | 
						
							| 12 |  | ovex | ⊢ ( 𝑊  cyclShift  𝑛 )  ∈  V | 
						
							| 13 |  | hashsng | ⊢ ( ( 𝑊  cyclShift  𝑛 )  ∈  V  →  ( ♯ ‘ { ( 𝑊  cyclShift  𝑛 ) } )  =  1 ) | 
						
							| 14 | 12 13 | mp1i | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  ( ♯ ‘ { ( 𝑊  cyclShift  𝑛 ) } )  =  1 ) | 
						
							| 15 | 14 | sumeq2sdv | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( ♯ ‘ { ( 𝑊  cyclShift  𝑛 ) } )  =  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) 1 ) | 
						
							| 16 |  | 1cnd | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  1  ∈  ℂ ) | 
						
							| 17 |  | fsumconst | ⊢ ( ( ( 0 ..^ ( ♯ ‘ 𝑊 ) )  ∈  Fin  ∧  1  ∈  ℂ )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) 1  =  ( ( ♯ ‘ ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  ·  1 ) ) | 
						
							| 18 | 5 16 17 | sylancr | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) 1  =  ( ( ♯ ‘ ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  ·  1 ) ) | 
						
							| 19 |  | lencl | ⊢ ( 𝑊  ∈  Word  𝑉  →  ( ♯ ‘ 𝑊 )  ∈  ℕ0 ) | 
						
							| 20 | 19 | adantr | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ♯ ‘ 𝑊 )  ∈  ℕ0 ) | 
						
							| 21 |  | hashfzo0 | ⊢ ( ( ♯ ‘ 𝑊 )  ∈  ℕ0  →  ( ♯ ‘ ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 22 | 20 21 | syl | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ♯ ‘ ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 23 | 22 | oveq1d | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ( ♯ ‘ ( 0 ..^ ( ♯ ‘ 𝑊 ) ) )  ·  1 )  =  ( ( ♯ ‘ 𝑊 )  ·  1 ) ) | 
						
							| 24 |  | prmnn | ⊢ ( ( ♯ ‘ 𝑊 )  ∈  ℙ  →  ( ♯ ‘ 𝑊 )  ∈  ℕ ) | 
						
							| 25 | 24 | nnred | ⊢ ( ( ♯ ‘ 𝑊 )  ∈  ℙ  →  ( ♯ ‘ 𝑊 )  ∈  ℝ ) | 
						
							| 26 | 25 | adantl | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ♯ ‘ 𝑊 )  ∈  ℝ ) | 
						
							| 27 |  | ax-1rid | ⊢ ( ( ♯ ‘ 𝑊 )  ∈  ℝ  →  ( ( ♯ ‘ 𝑊 )  ·  1 )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 28 | 26 27 | syl | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ( ♯ ‘ 𝑊 )  ·  1 )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 29 | 18 23 28 | 3eqtrd | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) 1  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 30 | 29 | adantr | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) 1  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 31 | 15 30 | eqtrd | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  Σ 𝑛  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( ♯ ‘ { ( 𝑊  cyclShift  𝑛 ) } )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 32 | 4 11 31 | 3eqtrd | ⊢ ( ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  ∧  ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 ) )  →  ( ♯ ‘ 𝑀 )  =  ( ♯ ‘ 𝑊 ) ) | 
						
							| 33 | 32 | ex | ⊢ ( ( 𝑊  ∈  Word  𝑉  ∧  ( ♯ ‘ 𝑊 )  ∈  ℙ )  →  ( ∃ 𝑖  ∈  ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ( 𝑊 ‘ 𝑖 )  ≠  ( 𝑊 ‘ 0 )  →  ( ♯ ‘ 𝑀 )  =  ( ♯ ‘ 𝑊 ) ) ) |