| Step | Hyp | Ref | Expression | 
						
							| 1 |  | frgrhash2wsp.v | ⊢ 𝑉  =  ( Vtx ‘ 𝐺 ) | 
						
							| 2 |  | 2nn | ⊢ 2  ∈  ℕ | 
						
							| 3 | 1 | wspniunwspnon | ⊢ ( ( 2  ∈  ℕ  ∧  𝐺  ∈   FriendGraph  )  →  ( 2  WSPathsN  𝐺 )  =  ∪  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) | 
						
							| 4 | 2 3 | mpan | ⊢ ( 𝐺  ∈   FriendGraph   →  ( 2  WSPathsN  𝐺 )  =  ∪  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) | 
						
							| 5 | 4 | fveq2d | ⊢ ( 𝐺  ∈   FriendGraph   →  ( ♯ ‘ ( 2  WSPathsN  𝐺 ) )  =  ( ♯ ‘ ∪  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) ) | 
						
							| 6 | 5 | adantr | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  ( ♯ ‘ ( 2  WSPathsN  𝐺 ) )  =  ( ♯ ‘ ∪  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) ) | 
						
							| 7 |  | simpr | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  𝑉  ∈  Fin ) | 
						
							| 8 |  | eqid | ⊢ ( 𝑉  ∖  { 𝑎 } )  =  ( 𝑉  ∖  { 𝑎 } ) | 
						
							| 9 | 1 | eleq1i | ⊢ ( 𝑉  ∈  Fin  ↔  ( Vtx ‘ 𝐺 )  ∈  Fin ) | 
						
							| 10 |  | wspthnonfi | ⊢ ( ( Vtx ‘ 𝐺 )  ∈  Fin  →  ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 )  ∈  Fin ) | 
						
							| 11 | 9 10 | sylbi | ⊢ ( 𝑉  ∈  Fin  →  ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 )  ∈  Fin ) | 
						
							| 12 | 11 | adantl | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 )  ∈  Fin ) | 
						
							| 13 | 12 | 3ad2ant1 | ⊢ ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 )  ∈  Fin ) | 
						
							| 14 |  | 2wspiundisj | ⊢ Disj  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) | 
						
							| 15 | 14 | a1i | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  Disj  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) | 
						
							| 16 |  | 2wspdisj | ⊢ Disj  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) | 
						
							| 17 | 16 | a1i | ⊢ ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  →  Disj  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) ) | 
						
							| 18 |  | simplll | ⊢ ( ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  𝐺  ∈   FriendGraph  ) | 
						
							| 19 |  | simpr | ⊢ ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  →  𝑎  ∈  𝑉 ) | 
						
							| 20 |  | eldifi | ⊢ ( 𝑏  ∈  ( 𝑉  ∖  { 𝑎 } )  →  𝑏  ∈  𝑉 ) | 
						
							| 21 | 19 20 | anim12i | ⊢ ( ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  ( 𝑎  ∈  𝑉  ∧  𝑏  ∈  𝑉 ) ) | 
						
							| 22 |  | eldifsni | ⊢ ( 𝑏  ∈  ( 𝑉  ∖  { 𝑎 } )  →  𝑏  ≠  𝑎 ) | 
						
							| 23 | 22 | necomd | ⊢ ( 𝑏  ∈  ( 𝑉  ∖  { 𝑎 } )  →  𝑎  ≠  𝑏 ) | 
						
							| 24 | 23 | adantl | ⊢ ( ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  𝑎  ≠  𝑏 ) | 
						
							| 25 | 1 | frgr2wsp1 | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  ( 𝑎  ∈  𝑉  ∧  𝑏  ∈  𝑉 )  ∧  𝑎  ≠  𝑏 )  →  ( ♯ ‘ ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) )  =  1 ) | 
						
							| 26 | 18 21 24 25 | syl3anc | ⊢ ( ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉 )  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  ( ♯ ‘ ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) )  =  1 ) | 
						
							| 27 | 26 | 3impa | ⊢ ( ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  ∧  𝑎  ∈  𝑉  ∧  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) )  →  ( ♯ ‘ ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) )  =  1 ) | 
						
							| 28 | 7 8 13 15 17 27 | hash2iun1dif1 | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  ( ♯ ‘ ∪  𝑎  ∈  𝑉 ∪  𝑏  ∈  ( 𝑉  ∖  { 𝑎 } ) ( 𝑎 ( 2  WSPathsNOn  𝐺 ) 𝑏 ) )  =  ( ( ♯ ‘ 𝑉 )  ·  ( ( ♯ ‘ 𝑉 )  −  1 ) ) ) | 
						
							| 29 | 6 28 | eqtrd | ⊢ ( ( 𝐺  ∈   FriendGraph   ∧  𝑉  ∈  Fin )  →  ( ♯ ‘ ( 2  WSPathsN  𝐺 ) )  =  ( ( ♯ ‘ 𝑉 )  ·  ( ( ♯ ‘ 𝑉 )  −  1 ) ) ) |