| Step | Hyp | Ref | Expression | 
						
							| 1 |  | efgval.w | ⊢ 𝑊  =  (  I  ‘ Word  ( 𝐼  ×  2o ) ) | 
						
							| 2 |  | efgval.r | ⊢  ∼   =  (  ~FG  ‘ 𝐼 ) | 
						
							| 3 |  | efgval2.m | ⊢ 𝑀  =  ( 𝑦  ∈  𝐼 ,  𝑧  ∈  2o  ↦  〈 𝑦 ,  ( 1o  ∖  𝑧 ) 〉 ) | 
						
							| 4 |  | efgval2.t | ⊢ 𝑇  =  ( 𝑣  ∈  𝑊  ↦  ( 𝑛  ∈  ( 0 ... ( ♯ ‘ 𝑣 ) ) ,  𝑤  ∈  ( 𝐼  ×  2o )  ↦  ( 𝑣  splice  〈 𝑛 ,  𝑛 ,  〈“ 𝑤 ( 𝑀 ‘ 𝑤 ) ”〉 〉 ) ) ) | 
						
							| 5 |  | efgred.d | ⊢ 𝐷  =  ( 𝑊  ∖  ∪  𝑥  ∈  𝑊 ran  ( 𝑇 ‘ 𝑥 ) ) | 
						
							| 6 |  | efgred.s | ⊢ 𝑆  =  ( 𝑚  ∈  { 𝑡  ∈  ( Word  𝑊  ∖  { ∅ } )  ∣  ( ( 𝑡 ‘ 0 )  ∈  𝐷  ∧  ∀ 𝑘  ∈  ( 1 ..^ ( ♯ ‘ 𝑡 ) ) ( 𝑡 ‘ 𝑘 )  ∈  ran  ( 𝑇 ‘ ( 𝑡 ‘ ( 𝑘  −  1 ) ) ) ) }  ↦  ( 𝑚 ‘ ( ( ♯ ‘ 𝑚 )  −  1 ) ) ) | 
						
							| 7 |  | efgredlem.1 | ⊢ ( 𝜑  →  ∀ 𝑎  ∈  dom  𝑆 ∀ 𝑏  ∈  dom  𝑆 ( ( ♯ ‘ ( 𝑆 ‘ 𝑎 ) )  <  ( ♯ ‘ ( 𝑆 ‘ 𝐴 ) )  →  ( ( 𝑆 ‘ 𝑎 )  =  ( 𝑆 ‘ 𝑏 )  →  ( 𝑎 ‘ 0 )  =  ( 𝑏 ‘ 0 ) ) ) ) | 
						
							| 8 |  | efgredlem.2 | ⊢ ( 𝜑  →  𝐴  ∈  dom  𝑆 ) | 
						
							| 9 |  | efgredlem.3 | ⊢ ( 𝜑  →  𝐵  ∈  dom  𝑆 ) | 
						
							| 10 |  | efgredlem.4 | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  =  ( 𝑆 ‘ 𝐵 ) ) | 
						
							| 11 |  | efgredlem.5 | ⊢ ( 𝜑  →  ¬  ( 𝐴 ‘ 0 )  =  ( 𝐵 ‘ 0 ) ) | 
						
							| 12 |  | efgredlemb.k | ⊢ 𝐾  =  ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) | 
						
							| 13 |  | efgredlemb.l | ⊢ 𝐿  =  ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) | 
						
							| 14 |  | efgredlemb.p | ⊢ ( 𝜑  →  𝑃  ∈  ( 0 ... ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) ) ) ) | 
						
							| 15 |  | efgredlemb.q | ⊢ ( 𝜑  →  𝑄  ∈  ( 0 ... ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) ) ) ) | 
						
							| 16 |  | efgredlemb.u | ⊢ ( 𝜑  →  𝑈  ∈  ( 𝐼  ×  2o ) ) | 
						
							| 17 |  | efgredlemb.v | ⊢ ( 𝜑  →  𝑉  ∈  ( 𝐼  ×  2o ) ) | 
						
							| 18 |  | efgredlemb.6 | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  =  ( 𝑃 ( 𝑇 ‘ ( 𝐴 ‘ 𝐾 ) ) 𝑈 ) ) | 
						
							| 19 |  | efgredlemb.7 | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐵 )  =  ( 𝑄 ( 𝑇 ‘ ( 𝐵 ‘ 𝐿 ) ) 𝑉 ) ) | 
						
							| 20 |  | fviss | ⊢ (  I  ‘ Word  ( 𝐼  ×  2o ) )  ⊆  Word  ( 𝐼  ×  2o ) | 
						
							| 21 | 1 20 | eqsstri | ⊢ 𝑊  ⊆  Word  ( 𝐼  ×  2o ) | 
						
							| 22 | 1 2 3 4 5 6 7 8 9 10 11 12 13 | efgredlemf | ⊢ ( 𝜑  →  ( ( 𝐴 ‘ 𝐾 )  ∈  𝑊  ∧  ( 𝐵 ‘ 𝐿 )  ∈  𝑊 ) ) | 
						
							| 23 | 22 | simpld | ⊢ ( 𝜑  →  ( 𝐴 ‘ 𝐾 )  ∈  𝑊 ) | 
						
							| 24 | 21 23 | sselid | ⊢ ( 𝜑  →  ( 𝐴 ‘ 𝐾 )  ∈  Word  ( 𝐼  ×  2o ) ) | 
						
							| 25 |  | lencl | ⊢ ( ( 𝐴 ‘ 𝐾 )  ∈  Word  ( 𝐼  ×  2o )  →  ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  ∈  ℕ0 ) | 
						
							| 26 | 24 25 | syl | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  ∈  ℕ0 ) | 
						
							| 27 | 26 | nn0cnd | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  ∈  ℂ ) | 
						
							| 28 | 22 | simprd | ⊢ ( 𝜑  →  ( 𝐵 ‘ 𝐿 )  ∈  𝑊 ) | 
						
							| 29 | 21 28 | sselid | ⊢ ( 𝜑  →  ( 𝐵 ‘ 𝐿 )  ∈  Word  ( 𝐼  ×  2o ) ) | 
						
							| 30 |  | lencl | ⊢ ( ( 𝐵 ‘ 𝐿 )  ∈  Word  ( 𝐼  ×  2o )  →  ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  ∈  ℕ0 ) | 
						
							| 31 | 29 30 | syl | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  ∈  ℕ0 ) | 
						
							| 32 | 31 | nn0cnd | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  ∈  ℂ ) | 
						
							| 33 |  | 2cnd | ⊢ ( 𝜑  →  2  ∈  ℂ ) | 
						
							| 34 | 1 2 3 4 5 6 7 8 9 10 11 | efgredlema | ⊢ ( 𝜑  →  ( ( ( ♯ ‘ 𝐴 )  −  1 )  ∈  ℕ  ∧  ( ( ♯ ‘ 𝐵 )  −  1 )  ∈  ℕ ) ) | 
						
							| 35 | 34 | simpld | ⊢ ( 𝜑  →  ( ( ♯ ‘ 𝐴 )  −  1 )  ∈  ℕ ) | 
						
							| 36 | 1 2 3 4 5 6 | efgsdmi | ⊢ ( ( 𝐴  ∈  dom  𝑆  ∧  ( ( ♯ ‘ 𝐴 )  −  1 )  ∈  ℕ )  →  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐴 ‘ ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) ) ) ) | 
						
							| 37 | 8 35 36 | syl2anc | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐴 ‘ ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) ) ) ) | 
						
							| 38 | 12 | fveq2i | ⊢ ( 𝐴 ‘ 𝐾 )  =  ( 𝐴 ‘ ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) ) | 
						
							| 39 | 38 | fveq2i | ⊢ ( 𝑇 ‘ ( 𝐴 ‘ 𝐾 ) )  =  ( 𝑇 ‘ ( 𝐴 ‘ ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) ) ) | 
						
							| 40 | 39 | rneqi | ⊢ ran  ( 𝑇 ‘ ( 𝐴 ‘ 𝐾 ) )  =  ran  ( 𝑇 ‘ ( 𝐴 ‘ ( ( ( ♯ ‘ 𝐴 )  −  1 )  −  1 ) ) ) | 
						
							| 41 | 37 40 | eleqtrrdi | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐴 ‘ 𝐾 ) ) ) | 
						
							| 42 | 1 2 3 4 | efgtlen | ⊢ ( ( ( 𝐴 ‘ 𝐾 )  ∈  𝑊  ∧  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐴 ‘ 𝐾 ) ) )  →  ( ♯ ‘ ( 𝑆 ‘ 𝐴 ) )  =  ( ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  +  2 ) ) | 
						
							| 43 | 23 41 42 | syl2anc | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝑆 ‘ 𝐴 ) )  =  ( ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  +  2 ) ) | 
						
							| 44 | 34 | simprd | ⊢ ( 𝜑  →  ( ( ♯ ‘ 𝐵 )  −  1 )  ∈  ℕ ) | 
						
							| 45 | 1 2 3 4 5 6 | efgsdmi | ⊢ ( ( 𝐵  ∈  dom  𝑆  ∧  ( ( ♯ ‘ 𝐵 )  −  1 )  ∈  ℕ )  →  ( 𝑆 ‘ 𝐵 )  ∈  ran  ( 𝑇 ‘ ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) ) ) | 
						
							| 46 | 9 44 45 | syl2anc | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐵 )  ∈  ran  ( 𝑇 ‘ ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) ) ) | 
						
							| 47 | 10 46 | eqeltrd | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) ) ) | 
						
							| 48 | 13 | fveq2i | ⊢ ( 𝐵 ‘ 𝐿 )  =  ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) | 
						
							| 49 | 48 | fveq2i | ⊢ ( 𝑇 ‘ ( 𝐵 ‘ 𝐿 ) )  =  ( 𝑇 ‘ ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) ) | 
						
							| 50 | 49 | rneqi | ⊢ ran  ( 𝑇 ‘ ( 𝐵 ‘ 𝐿 ) )  =  ran  ( 𝑇 ‘ ( 𝐵 ‘ ( ( ( ♯ ‘ 𝐵 )  −  1 )  −  1 ) ) ) | 
						
							| 51 | 47 50 | eleqtrrdi | ⊢ ( 𝜑  →  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐵 ‘ 𝐿 ) ) ) | 
						
							| 52 | 1 2 3 4 | efgtlen | ⊢ ( ( ( 𝐵 ‘ 𝐿 )  ∈  𝑊  ∧  ( 𝑆 ‘ 𝐴 )  ∈  ran  ( 𝑇 ‘ ( 𝐵 ‘ 𝐿 ) ) )  →  ( ♯ ‘ ( 𝑆 ‘ 𝐴 ) )  =  ( ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  +  2 ) ) | 
						
							| 53 | 28 51 52 | syl2anc | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝑆 ‘ 𝐴 ) )  =  ( ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  +  2 ) ) | 
						
							| 54 | 43 53 | eqtr3d | ⊢ ( 𝜑  →  ( ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  +  2 )  =  ( ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) )  +  2 ) ) | 
						
							| 55 | 27 32 33 54 | addcan2ad | ⊢ ( 𝜑  →  ( ♯ ‘ ( 𝐴 ‘ 𝐾 ) )  =  ( ♯ ‘ ( 𝐵 ‘ 𝐿 ) ) ) |