| Step | Hyp | Ref | Expression | 
						
							| 1 |  | exmid | ⊢ ( 𝐴  =  ∅  ∨  ¬  𝐴  =  ∅ ) | 
						
							| 2 | 1 | biantrur | ⊢ ( 𝐴  ∈  Fin  ↔  ( ( 𝐴  =  ∅  ∨  ¬  𝐴  =  ∅ )  ∧  𝐴  ∈  Fin ) ) | 
						
							| 3 |  | andir | ⊢ ( ( ( 𝐴  =  ∅  ∨  ¬  𝐴  =  ∅ )  ∧  𝐴  ∈  Fin )  ↔  ( ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ∨  ( ¬  𝐴  =  ∅  ∧  𝐴  ∈  Fin ) ) ) | 
						
							| 4 | 2 3 | bitri | ⊢ ( 𝐴  ∈  Fin  ↔  ( ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ∨  ( ¬  𝐴  =  ∅  ∧  𝐴  ∈  Fin ) ) ) | 
						
							| 5 |  | simpl | ⊢ ( ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin )  →  𝐴  =  ∅ ) | 
						
							| 6 |  | 0fi | ⊢ ∅  ∈  Fin | 
						
							| 7 |  | eleq1a | ⊢ ( ∅  ∈  Fin  →  ( 𝐴  =  ∅  →  𝐴  ∈  Fin ) ) | 
						
							| 8 | 6 7 | ax-mp | ⊢ ( 𝐴  =  ∅  →  𝐴  ∈  Fin ) | 
						
							| 9 | 8 | ancli | ⊢ ( 𝐴  =  ∅  →  ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin ) ) | 
						
							| 10 | 5 9 | impbii | ⊢ ( ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ↔  𝐴  =  ∅ ) | 
						
							| 11 |  | rp-isfinite5 | ⊢ ( 𝐴  ∈  Fin  ↔  ∃ 𝑛  ∈  ℕ0 ( 1 ... 𝑛 )  ≈  𝐴 ) | 
						
							| 12 |  | df-rex | ⊢ ( ∃ 𝑛  ∈  ℕ0 ( 1 ... 𝑛 )  ≈  𝐴  ↔  ∃ 𝑛 ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 13 | 11 12 | bitri | ⊢ ( 𝐴  ∈  Fin  ↔  ∃ 𝑛 ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 14 | 13 | anbi2i | ⊢ ( ( ¬  𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ↔  ( ¬  𝐴  =  ∅  ∧  ∃ 𝑛 ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 15 |  | df-rex | ⊢ ( ∃ 𝑛  ∈  ℕ ( 1 ... 𝑛 )  ≈  𝐴  ↔  ∃ 𝑛 ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 16 |  | en0 | ⊢ ( 𝐴  ≈  ∅  ↔  𝐴  =  ∅ ) | 
						
							| 17 |  | ensymb | ⊢ ( 𝐴  ≈  ∅  ↔  ∅  ≈  𝐴 ) | 
						
							| 18 | 16 17 | bitr3i | ⊢ ( 𝐴  =  ∅  ↔  ∅  ≈  𝐴 ) | 
						
							| 19 | 18 | notbii | ⊢ ( ¬  𝐴  =  ∅  ↔  ¬  ∅  ≈  𝐴 ) | 
						
							| 20 |  | elnn0 | ⊢ ( 𝑛  ∈  ℕ0  ↔  ( 𝑛  ∈  ℕ  ∨  𝑛  =  0 ) ) | 
						
							| 21 | 20 | anbi1i | ⊢ ( ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ↔  ( ( 𝑛  ∈  ℕ  ∨  𝑛  =  0 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 22 |  | andir | ⊢ ( ( ( 𝑛  ∈  ℕ  ∨  𝑛  =  0 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ↔  ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 23 | 21 22 | bitri | ⊢ ( ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ↔  ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 24 | 19 23 | anbi12i | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ( ¬  ∅  ≈  𝐴  ∧  ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) ) | 
						
							| 25 |  | andi | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) )  ↔  ( ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ∨  ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) ) | 
						
							| 26 | 24 25 | bitri | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ( ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ∨  ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) ) | 
						
							| 27 |  | 3anass | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ↔  ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 28 |  | 3anass | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ↔  ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 29 | 27 28 | orbi12i | ⊢ ( ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( ¬  ∅  ≈  𝐴  ∧  𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ( ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ∨  ( ¬  ∅  ≈  𝐴  ∧  ( 𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) ) | 
						
							| 30 | 26 29 | sylbb2 | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  →  ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( ¬  ∅  ≈  𝐴  ∧  𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 31 |  | simp2 | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  𝑛  ∈  ℕ ) | 
						
							| 32 |  | oveq2 | ⊢ ( 𝑛  =  0  →  ( 1 ... 𝑛 )  =  ( 1 ... 0 ) ) | 
						
							| 33 |  | fz10 | ⊢ ( 1 ... 0 )  =  ∅ | 
						
							| 34 | 32 33 | eqtrdi | ⊢ ( 𝑛  =  0  →  ( 1 ... 𝑛 )  =  ∅ ) | 
						
							| 35 |  | simp2 | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( 1 ... 𝑛 )  =  ∅  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ( 1 ... 𝑛 )  =  ∅ ) | 
						
							| 36 |  | simp3 | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( 1 ... 𝑛 )  =  ∅  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ( 1 ... 𝑛 )  ≈  𝐴 ) | 
						
							| 37 | 35 36 | eqbrtrrd | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( 1 ... 𝑛 )  =  ∅  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ∅  ≈  𝐴 ) | 
						
							| 38 |  | simp1 | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( 1 ... 𝑛 )  =  ∅  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ¬  ∅  ≈  𝐴 ) | 
						
							| 39 | 37 38 | pm2.21dd | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  ( 1 ... 𝑛 )  =  ∅  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  𝑛  ∈  ℕ ) | 
						
							| 40 | 34 39 | syl3an2 | ⊢ ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  𝑛  ∈  ℕ ) | 
						
							| 41 | 31 40 | jaoi | ⊢ ( ( ( ¬  ∅  ≈  𝐴  ∧  𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  ∨  ( ¬  ∅  ≈  𝐴  ∧  𝑛  =  0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  →  𝑛  ∈  ℕ ) | 
						
							| 42 | 30 41 | syl | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  →  𝑛  ∈  ℕ ) | 
						
							| 43 |  | simprr | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  →  ( 1 ... 𝑛 )  ≈  𝐴 ) | 
						
							| 44 | 42 43 | jca | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  →  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 45 |  | nngt0 | ⊢ ( 𝑛  ∈  ℕ  →  0  <  𝑛 ) | 
						
							| 46 |  | hash0 | ⊢ ( ♯ ‘ ∅ )  =  0 | 
						
							| 47 | 46 | a1i | ⊢ ( 𝑛  ∈  ℕ  →  ( ♯ ‘ ∅ )  =  0 ) | 
						
							| 48 |  | nnnn0 | ⊢ ( 𝑛  ∈  ℕ  →  𝑛  ∈  ℕ0 ) | 
						
							| 49 |  | hashfz1 | ⊢ ( 𝑛  ∈  ℕ0  →  ( ♯ ‘ ( 1 ... 𝑛 ) )  =  𝑛 ) | 
						
							| 50 | 48 49 | syl | ⊢ ( 𝑛  ∈  ℕ  →  ( ♯ ‘ ( 1 ... 𝑛 ) )  =  𝑛 ) | 
						
							| 51 | 45 47 50 | 3brtr4d | ⊢ ( 𝑛  ∈  ℕ  →  ( ♯ ‘ ∅ )  <  ( ♯ ‘ ( 1 ... 𝑛 ) ) ) | 
						
							| 52 |  | fzfi | ⊢ ( 1 ... 𝑛 )  ∈  Fin | 
						
							| 53 |  | hashsdom | ⊢ ( ( ∅  ∈  Fin  ∧  ( 1 ... 𝑛 )  ∈  Fin )  →  ( ( ♯ ‘ ∅ )  <  ( ♯ ‘ ( 1 ... 𝑛 ) )  ↔  ∅  ≺  ( 1 ... 𝑛 ) ) ) | 
						
							| 54 | 6 52 53 | mp2an | ⊢ ( ( ♯ ‘ ∅ )  <  ( ♯ ‘ ( 1 ... 𝑛 ) )  ↔  ∅  ≺  ( 1 ... 𝑛 ) ) | 
						
							| 55 | 51 54 | sylib | ⊢ ( 𝑛  ∈  ℕ  →  ∅  ≺  ( 1 ... 𝑛 ) ) | 
						
							| 56 | 55 | anim1i | ⊢ ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ( ∅  ≺  ( 1 ... 𝑛 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 57 |  | sdomentr | ⊢ ( ( ∅  ≺  ( 1 ... 𝑛 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ∅  ≺  𝐴 ) | 
						
							| 58 |  | sdomnen | ⊢ ( ∅  ≺  𝐴  →  ¬  ∅  ≈  𝐴 ) | 
						
							| 59 | 57 58 | syl | ⊢ ( ( ∅  ≺  ( 1 ... 𝑛 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ¬  ∅  ≈  𝐴 ) | 
						
							| 60 |  | en0r | ⊢ ( ∅  ≈  𝐴  ↔  𝐴  =  ∅ ) | 
						
							| 61 | 60 | notbii | ⊢ ( ¬  ∅  ≈  𝐴  ↔  ¬  𝐴  =  ∅ ) | 
						
							| 62 | 59 61 | sylib | ⊢ ( ( ∅  ≺  ( 1 ... 𝑛 )  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ¬  𝐴  =  ∅ ) | 
						
							| 63 | 56 62 | syl | ⊢ ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ¬  𝐴  =  ∅ ) | 
						
							| 64 | 48 | anim1i | ⊢ ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 65 | 63 64 | jca | ⊢ ( ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 )  →  ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 66 | 44 65 | impbii | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 67 | 66 | exbii | ⊢ ( ∃ 𝑛 ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ∃ 𝑛 ( 𝑛  ∈  ℕ  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 68 |  | 19.42v | ⊢ ( ∃ 𝑛 ( ¬  𝐴  =  ∅  ∧  ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ( ¬  𝐴  =  ∅  ∧  ∃ 𝑛 ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) ) ) | 
						
							| 69 | 15 67 68 | 3bitr2ri | ⊢ ( ( ¬  𝐴  =  ∅  ∧  ∃ 𝑛 ( 𝑛  ∈  ℕ0  ∧  ( 1 ... 𝑛 )  ≈  𝐴 ) )  ↔  ∃ 𝑛  ∈  ℕ ( 1 ... 𝑛 )  ≈  𝐴 ) | 
						
							| 70 | 14 69 | bitri | ⊢ ( ( ¬  𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ↔  ∃ 𝑛  ∈  ℕ ( 1 ... 𝑛 )  ≈  𝐴 ) | 
						
							| 71 | 10 70 | orbi12i | ⊢ ( ( ( 𝐴  =  ∅  ∧  𝐴  ∈  Fin )  ∨  ( ¬  𝐴  =  ∅  ∧  𝐴  ∈  Fin ) )  ↔  ( 𝐴  =  ∅  ∨  ∃ 𝑛  ∈  ℕ ( 1 ... 𝑛 )  ≈  𝐴 ) ) | 
						
							| 72 | 4 71 | bitri | ⊢ ( 𝐴  ∈  Fin  ↔  ( 𝐴  =  ∅  ∨  ∃ 𝑛  ∈  ℕ ( 1 ... 𝑛 )  ≈  𝐴 ) ) |