| Step | Hyp | Ref | Expression | 
						
							| 1 |  | erdsze.n | ⊢ ( 𝜑  →  𝑁  ∈  ℕ ) | 
						
							| 2 |  | erdsze.f | ⊢ ( 𝜑  →  𝐹 : ( 1 ... 𝑁 ) –1-1→ ℝ ) | 
						
							| 3 |  | erdszelem.i | ⊢ 𝐼  =  ( 𝑥  ∈  ( 1 ... 𝑁 )  ↦  sup ( ( ♯  “  { 𝑦  ∈  𝒫  ( 1 ... 𝑥 )  ∣  ( ( 𝐹  ↾  𝑦 )  Isom   <  ,   <  ( 𝑦 ,  ( 𝐹  “  𝑦 ) )  ∧  𝑥  ∈  𝑦 ) } ) ,  ℝ ,   <  ) ) | 
						
							| 4 |  | erdszelem.j | ⊢ 𝐽  =  ( 𝑥  ∈  ( 1 ... 𝑁 )  ↦  sup ( ( ♯  “  { 𝑦  ∈  𝒫  ( 1 ... 𝑥 )  ∣  ( ( 𝐹  ↾  𝑦 )  Isom   <  ,  ◡  <  ( 𝑦 ,  ( 𝐹  “  𝑦 ) )  ∧  𝑥  ∈  𝑦 ) } ) ,  ℝ ,   <  ) ) | 
						
							| 5 |  | erdszelem.t | ⊢ 𝑇  =  ( 𝑛  ∈  ( 1 ... 𝑁 )  ↦  〈 ( 𝐼 ‘ 𝑛 ) ,  ( 𝐽 ‘ 𝑛 ) 〉 ) | 
						
							| 6 |  | erdszelem.r | ⊢ ( 𝜑  →  𝑅  ∈  ℕ ) | 
						
							| 7 |  | erdszelem.s | ⊢ ( 𝜑  →  𝑆  ∈  ℕ ) | 
						
							| 8 |  | erdszelem.m | ⊢ ( 𝜑  →  ( ( 𝑅  −  1 )  ·  ( 𝑆  −  1 ) )  <  𝑁 ) | 
						
							| 9 |  | fzfi | ⊢ ( 1 ... ( 𝑅  −  1 ) )  ∈  Fin | 
						
							| 10 |  | fzfi | ⊢ ( 1 ... ( 𝑆  −  1 ) )  ∈  Fin | 
						
							| 11 |  | xpfi | ⊢ ( ( ( 1 ... ( 𝑅  −  1 ) )  ∈  Fin  ∧  ( 1 ... ( 𝑆  −  1 ) )  ∈  Fin )  →  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ∈  Fin ) | 
						
							| 12 | 9 10 11 | mp2an | ⊢ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ∈  Fin | 
						
							| 13 |  | ssdomg | ⊢ ( ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ∈  Fin  →  ( ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  →  ran  𝑇  ≼  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 14 | 12 13 | ax-mp | ⊢ ( ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  →  ran  𝑇  ≼  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 15 |  | domnsym | ⊢ ( ran  𝑇  ≼  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  →  ¬  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ran  𝑇 ) | 
						
							| 16 | 14 15 | syl | ⊢ ( ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  →  ¬  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ran  𝑇 ) | 
						
							| 17 |  | hashxp | ⊢ ( ( ( 1 ... ( 𝑅  −  1 ) )  ∈  Fin  ∧  ( 1 ... ( 𝑆  −  1 ) )  ∈  Fin )  →  ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  =  ( ( ♯ ‘ ( 1 ... ( 𝑅  −  1 ) ) )  ·  ( ♯ ‘ ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 18 | 9 10 17 | mp2an | ⊢ ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  =  ( ( ♯ ‘ ( 1 ... ( 𝑅  −  1 ) ) )  ·  ( ♯ ‘ ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 19 |  | nnm1nn0 | ⊢ ( 𝑅  ∈  ℕ  →  ( 𝑅  −  1 )  ∈  ℕ0 ) | 
						
							| 20 |  | hashfz1 | ⊢ ( ( 𝑅  −  1 )  ∈  ℕ0  →  ( ♯ ‘ ( 1 ... ( 𝑅  −  1 ) ) )  =  ( 𝑅  −  1 ) ) | 
						
							| 21 | 6 19 20 | 3syl | ⊢ ( 𝜑  →  ( ♯ ‘ ( 1 ... ( 𝑅  −  1 ) ) )  =  ( 𝑅  −  1 ) ) | 
						
							| 22 |  | nnm1nn0 | ⊢ ( 𝑆  ∈  ℕ  →  ( 𝑆  −  1 )  ∈  ℕ0 ) | 
						
							| 23 |  | hashfz1 | ⊢ ( ( 𝑆  −  1 )  ∈  ℕ0  →  ( ♯ ‘ ( 1 ... ( 𝑆  −  1 ) ) )  =  ( 𝑆  −  1 ) ) | 
						
							| 24 | 7 22 23 | 3syl | ⊢ ( 𝜑  →  ( ♯ ‘ ( 1 ... ( 𝑆  −  1 ) ) )  =  ( 𝑆  −  1 ) ) | 
						
							| 25 | 21 24 | oveq12d | ⊢ ( 𝜑  →  ( ( ♯ ‘ ( 1 ... ( 𝑅  −  1 ) ) )  ·  ( ♯ ‘ ( 1 ... ( 𝑆  −  1 ) ) ) )  =  ( ( 𝑅  −  1 )  ·  ( 𝑆  −  1 ) ) ) | 
						
							| 26 | 18 25 | eqtrid | ⊢ ( 𝜑  →  ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  =  ( ( 𝑅  −  1 )  ·  ( 𝑆  −  1 ) ) ) | 
						
							| 27 | 1 | nnnn0d | ⊢ ( 𝜑  →  𝑁  ∈  ℕ0 ) | 
						
							| 28 |  | hashfz1 | ⊢ ( 𝑁  ∈  ℕ0  →  ( ♯ ‘ ( 1 ... 𝑁 ) )  =  𝑁 ) | 
						
							| 29 | 27 28 | syl | ⊢ ( 𝜑  →  ( ♯ ‘ ( 1 ... 𝑁 ) )  =  𝑁 ) | 
						
							| 30 | 8 26 29 | 3brtr4d | ⊢ ( 𝜑  →  ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  <  ( ♯ ‘ ( 1 ... 𝑁 ) ) ) | 
						
							| 31 |  | fzfid | ⊢ ( 𝜑  →  ( 1 ... 𝑁 )  ∈  Fin ) | 
						
							| 32 |  | hashsdom | ⊢ ( ( ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ∈  Fin  ∧  ( 1 ... 𝑁 )  ∈  Fin )  →  ( ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  <  ( ♯ ‘ ( 1 ... 𝑁 ) )  ↔  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ( 1 ... 𝑁 ) ) ) | 
						
							| 33 | 12 31 32 | sylancr | ⊢ ( 𝜑  →  ( ( ♯ ‘ ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) )  <  ( ♯ ‘ ( 1 ... 𝑁 ) )  ↔  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ( 1 ... 𝑁 ) ) ) | 
						
							| 34 | 30 33 | mpbid | ⊢ ( 𝜑  →  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ( 1 ... 𝑁 ) ) | 
						
							| 35 | 1 2 3 4 5 | erdszelem9 | ⊢ ( 𝜑  →  𝑇 : ( 1 ... 𝑁 ) –1-1→ ( ℕ  ×  ℕ ) ) | 
						
							| 36 |  | f1f1orn | ⊢ ( 𝑇 : ( 1 ... 𝑁 ) –1-1→ ( ℕ  ×  ℕ )  →  𝑇 : ( 1 ... 𝑁 ) –1-1-onto→ ran  𝑇 ) | 
						
							| 37 |  | ovex | ⊢ ( 1 ... 𝑁 )  ∈  V | 
						
							| 38 | 37 | f1oen | ⊢ ( 𝑇 : ( 1 ... 𝑁 ) –1-1-onto→ ran  𝑇  →  ( 1 ... 𝑁 )  ≈  ran  𝑇 ) | 
						
							| 39 | 35 36 38 | 3syl | ⊢ ( 𝜑  →  ( 1 ... 𝑁 )  ≈  ran  𝑇 ) | 
						
							| 40 |  | sdomentr | ⊢ ( ( ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ( 1 ... 𝑁 )  ∧  ( 1 ... 𝑁 )  ≈  ran  𝑇 )  →  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ran  𝑇 ) | 
						
							| 41 | 34 39 40 | syl2anc | ⊢ ( 𝜑  →  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ≺  ran  𝑇 ) | 
						
							| 42 | 16 41 | nsyl3 | ⊢ ( 𝜑  →  ¬  ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 43 |  | nss | ⊢ ( ¬  ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑠 ( 𝑠  ∈  ran  𝑇  ∧  ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 44 |  | df-rex | ⊢ ( ∃ 𝑠  ∈  ran  𝑇 ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑠 ( 𝑠  ∈  ran  𝑇  ∧  ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 45 | 43 44 | bitr4i | ⊢ ( ¬  ran  𝑇  ⊆  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑠  ∈  ran  𝑇 ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 46 | 42 45 | sylib | ⊢ ( 𝜑  →  ∃ 𝑠  ∈  ran  𝑇 ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 47 |  | f1fn | ⊢ ( 𝑇 : ( 1 ... 𝑁 ) –1-1→ ( ℕ  ×  ℕ )  →  𝑇  Fn  ( 1 ... 𝑁 ) ) | 
						
							| 48 |  | eleq1 | ⊢ ( 𝑠  =  ( 𝑇 ‘ 𝑚 )  →  ( 𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 49 | 48 | notbid | ⊢ ( 𝑠  =  ( 𝑇 ‘ 𝑚 )  →  ( ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 50 | 49 | rexrn | ⊢ ( 𝑇  Fn  ( 1 ... 𝑁 )  →  ( ∃ 𝑠  ∈  ran  𝑇 ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 51 | 35 47 50 | 3syl | ⊢ ( 𝜑  →  ( ∃ 𝑠  ∈  ran  𝑇 ¬  𝑠  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 52 | 46 51 | mpbid | ⊢ ( 𝜑  →  ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 53 |  | fveq2 | ⊢ ( 𝑛  =  𝑚  →  ( 𝐼 ‘ 𝑛 )  =  ( 𝐼 ‘ 𝑚 ) ) | 
						
							| 54 |  | fveq2 | ⊢ ( 𝑛  =  𝑚  →  ( 𝐽 ‘ 𝑛 )  =  ( 𝐽 ‘ 𝑚 ) ) | 
						
							| 55 | 53 54 | opeq12d | ⊢ ( 𝑛  =  𝑚  →  〈 ( 𝐼 ‘ 𝑛 ) ,  ( 𝐽 ‘ 𝑛 ) 〉  =  〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉 ) | 
						
							| 56 |  | opex | ⊢ 〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉  ∈  V | 
						
							| 57 | 55 5 56 | fvmpt | ⊢ ( 𝑚  ∈  ( 1 ... 𝑁 )  →  ( 𝑇 ‘ 𝑚 )  =  〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉 ) | 
						
							| 58 | 57 | adantl | ⊢ ( ( 𝜑  ∧  𝑚  ∈  ( 1 ... 𝑁 ) )  →  ( 𝑇 ‘ 𝑚 )  =  〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉 ) | 
						
							| 59 | 58 | eleq1d | ⊢ ( ( 𝜑  ∧  𝑚  ∈  ( 1 ... 𝑁 ) )  →  ( ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 60 |  | opelxp | ⊢ ( 〈 ( 𝐼 ‘ 𝑚 ) ,  ( 𝐽 ‘ 𝑚 ) 〉  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ( ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∧  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 61 | 59 60 | bitrdi | ⊢ ( ( 𝜑  ∧  𝑚  ∈  ( 1 ... 𝑁 ) )  →  ( ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ( ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∧  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 62 | 61 | notbid | ⊢ ( ( 𝜑  ∧  𝑚  ∈  ( 1 ... 𝑁 ) )  →  ( ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ¬  ( ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∧  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 63 |  | ianor | ⊢ ( ¬  ( ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∧  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ( ¬  ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∨  ¬  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) | 
						
							| 64 | 62 63 | bitrdi | ⊢ ( ( 𝜑  ∧  𝑚  ∈  ( 1 ... 𝑁 ) )  →  ( ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ( ¬  ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∨  ¬  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 65 | 64 | rexbidva | ⊢ ( 𝜑  →  ( ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ¬  ( 𝑇 ‘ 𝑚 )  ∈  ( ( 1 ... ( 𝑅  −  1 ) )  ×  ( 1 ... ( 𝑆  −  1 ) ) )  ↔  ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ( ¬  ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∨  ¬  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) ) | 
						
							| 66 | 52 65 | mpbid | ⊢ ( 𝜑  →  ∃ 𝑚  ∈  ( 1 ... 𝑁 ) ( ¬  ( 𝐼 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑅  −  1 ) )  ∨  ¬  ( 𝐽 ‘ 𝑚 )  ∈  ( 1 ... ( 𝑆  −  1 ) ) ) ) |