| Step | Hyp | Ref | Expression | 
						
							| 1 |  | 2arymaptf.h | ⊢ 𝐻  =  ( ℎ  ∈  ( 2 -aryF  𝑋 )  ↦  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( ℎ ‘ { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ) ) ) | 
						
							| 2 | 1 | 2arymaptf | ⊢ ( 𝑋  ∈  𝑉  →  𝐻 : ( 2 -aryF  𝑋 ) ⟶ ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) ) | 
						
							| 3 |  | elmapi | ⊢ ( 𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) )  →  𝑓 : ( 𝑋  ×  𝑋 ) ⟶ 𝑋 ) | 
						
							| 4 |  | eqid | ⊢ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) )  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) | 
						
							| 5 | 4 | 2arympt | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓 : ( 𝑋  ×  𝑋 ) ⟶ 𝑋 )  →  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) )  ∈  ( 2 -aryF  𝑋 ) ) | 
						
							| 6 | 3 5 | sylan2 | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) )  ∈  ( 2 -aryF  𝑋 ) ) | 
						
							| 7 |  | fveq2 | ⊢ ( 𝑔  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) )  →  ( 𝐻 ‘ 𝑔 )  =  ( 𝐻 ‘ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) ) | 
						
							| 8 | 7 | eqeq2d | ⊢ ( 𝑔  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) )  →  ( 𝑓  =  ( 𝐻 ‘ 𝑔 )  ↔  𝑓  =  ( 𝐻 ‘ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) ) ) | 
						
							| 9 | 8 | adantl | ⊢ ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  𝑔  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  →  ( 𝑓  =  ( 𝐻 ‘ 𝑔 )  ↔  𝑓  =  ( 𝐻 ‘ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) ) ) | 
						
							| 10 |  | elmapfn | ⊢ ( 𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) )  →  𝑓  Fn  ( 𝑋  ×  𝑋 ) ) | 
						
							| 11 | 10 | adantl | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  𝑓  Fn  ( 𝑋  ×  𝑋 ) ) | 
						
							| 12 |  | fnov | ⊢ ( 𝑓  Fn  ( 𝑋  ×  𝑋 )  ↔  𝑓  =  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) ) ) | 
						
							| 13 | 11 12 | sylib | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  𝑓  =  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) ) ) | 
						
							| 14 |  | simp1r | ⊢ ( ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) | 
						
							| 15 |  | fveq1 | ⊢ ( 𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  →  ( 𝑎 ‘ 0 )  =  ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 0 ) ) | 
						
							| 16 |  | 0ne1 | ⊢ 0  ≠  1 | 
						
							| 17 |  | c0ex | ⊢ 0  ∈  V | 
						
							| 18 |  | vex | ⊢ 𝑥  ∈  V | 
						
							| 19 | 17 18 | fvpr1 | ⊢ ( 0  ≠  1  →  ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 0 )  =  𝑥 ) | 
						
							| 20 | 16 19 | ax-mp | ⊢ ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 0 )  =  𝑥 | 
						
							| 21 | 15 20 | eqtrdi | ⊢ ( 𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  →  ( 𝑎 ‘ 0 )  =  𝑥 ) | 
						
							| 22 |  | fveq1 | ⊢ ( 𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  →  ( 𝑎 ‘ 1 )  =  ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 1 ) ) | 
						
							| 23 |  | 1ex | ⊢ 1  ∈  V | 
						
							| 24 |  | vex | ⊢ 𝑦  ∈  V | 
						
							| 25 | 23 24 | fvpr2 | ⊢ ( 0  ≠  1  →  ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 1 )  =  𝑦 ) | 
						
							| 26 | 16 25 | ax-mp | ⊢ ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ‘ 1 )  =  𝑦 | 
						
							| 27 | 22 26 | eqtrdi | ⊢ ( 𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  →  ( 𝑎 ‘ 1 )  =  𝑦 ) | 
						
							| 28 | 21 27 | oveq12d | ⊢ ( 𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  →  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) )  =  ( 𝑥 𝑓 𝑦 ) ) | 
						
							| 29 | 28 | adantl | ⊢ ( ( ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  ∧  𝑎  =  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } )  →  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) )  =  ( 𝑥 𝑓 𝑦 ) ) | 
						
							| 30 | 17 23 | pm3.2i | ⊢ ( 0  ∈  V  ∧  1  ∈  V ) | 
						
							| 31 |  | fprg | ⊢ ( ( ( 0  ∈  V  ∧  1  ∈  V )  ∧  ( 𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  ∧  0  ≠  1 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } : { 0 ,  1 } ⟶ { 𝑥 ,  𝑦 } ) | 
						
							| 32 | 30 16 31 | mp3an13 | ⊢ ( ( 𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } : { 0 ,  1 } ⟶ { 𝑥 ,  𝑦 } ) | 
						
							| 33 | 32 | 3adant1 | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } : { 0 ,  1 } ⟶ { 𝑥 ,  𝑦 } ) | 
						
							| 34 |  | prssi | ⊢ ( ( 𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 𝑥 ,  𝑦 }  ⊆  𝑋 ) | 
						
							| 35 | 34 | 3adant1 | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 𝑥 ,  𝑦 }  ⊆  𝑋 ) | 
						
							| 36 | 33 35 | fssd | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } : { 0 ,  1 } ⟶ 𝑋 ) | 
						
							| 37 |  | simp1 | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  𝑋  ∈  𝑉 ) | 
						
							| 38 |  | prex | ⊢ { 0 ,  1 }  ∈  V | 
						
							| 39 | 38 | a1i | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 0 ,  1 }  ∈  V ) | 
						
							| 40 | 37 39 | elmapd | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  ( { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↔  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } : { 0 ,  1 } ⟶ 𝑋 ) ) | 
						
							| 41 | 36 40 | mpbird | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  ∈  ( 𝑋  ↑m  { 0 ,  1 } ) ) | 
						
							| 42 | 41 | 3adant1r | ⊢ ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  ∈  ( 𝑋  ↑m  { 0 ,  1 } ) ) | 
						
							| 43 | 42 | 3adant1r | ⊢ ( ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 }  ∈  ( 𝑋  ↑m  { 0 ,  1 } ) ) | 
						
							| 44 |  | ovexd | ⊢ ( ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  ( 𝑥 𝑓 𝑦 )  ∈  V ) | 
						
							| 45 |  | nfv | ⊢ Ⅎ 𝑎 ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) ) | 
						
							| 46 |  | nfmpt1 | ⊢ Ⅎ 𝑎 ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) | 
						
							| 47 | 46 | nfeq2 | ⊢ Ⅎ 𝑎 ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) | 
						
							| 48 | 45 47 | nfan | ⊢ Ⅎ 𝑎 ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) | 
						
							| 49 |  | nfv | ⊢ Ⅎ 𝑎 𝑥  ∈  𝑋 | 
						
							| 50 |  | nfv | ⊢ Ⅎ 𝑎 𝑦  ∈  𝑋 | 
						
							| 51 | 48 49 50 | nf3an | ⊢ Ⅎ 𝑎 ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 ) | 
						
							| 52 |  | nfcv | ⊢ Ⅎ 𝑎 { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } | 
						
							| 53 |  | nfcv | ⊢ Ⅎ 𝑎 ( 𝑥 𝑓 𝑦 ) | 
						
							| 54 | 14 29 43 44 51 52 53 | fvmptdf | ⊢ ( ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  ∧  𝑥  ∈  𝑋  ∧  𝑦  ∈  𝑋 )  →  ( ℎ ‘ { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } )  =  ( 𝑥 𝑓 𝑦 ) ) | 
						
							| 55 | 54 | mpoeq3dva | ⊢ ( ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  ∧  ℎ  =  ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  →  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( ℎ ‘ { 〈 0 ,  𝑥 〉 ,  〈 1 ,  𝑦 〉 } ) )  =  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) ) ) | 
						
							| 56 |  | mpoexga | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑋  ∈  𝑉 )  →  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) )  ∈  V ) | 
						
							| 57 | 56 | anidms | ⊢ ( 𝑋  ∈  𝑉  →  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) )  ∈  V ) | 
						
							| 58 | 57 | adantr | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) )  ∈  V ) | 
						
							| 59 | 1 55 6 58 | fvmptd2 | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  ( 𝐻 ‘ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) )  =  ( 𝑥  ∈  𝑋 ,  𝑦  ∈  𝑋  ↦  ( 𝑥 𝑓 𝑦 ) ) ) | 
						
							| 60 | 13 59 | eqtr4d | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  𝑓  =  ( 𝐻 ‘ ( 𝑎  ∈  ( 𝑋  ↑m  { 0 ,  1 } )  ↦  ( ( 𝑎 ‘ 0 ) 𝑓 ( 𝑎 ‘ 1 ) ) ) ) ) | 
						
							| 61 | 6 9 60 | rspcedvd | ⊢ ( ( 𝑋  ∈  𝑉  ∧  𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) )  →  ∃ 𝑔  ∈  ( 2 -aryF  𝑋 ) 𝑓  =  ( 𝐻 ‘ 𝑔 ) ) | 
						
							| 62 | 61 | ralrimiva | ⊢ ( 𝑋  ∈  𝑉  →  ∀ 𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) ∃ 𝑔  ∈  ( 2 -aryF  𝑋 ) 𝑓  =  ( 𝐻 ‘ 𝑔 ) ) | 
						
							| 63 |  | dffo3 | ⊢ ( 𝐻 : ( 2 -aryF  𝑋 ) –onto→ ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) )  ↔  ( 𝐻 : ( 2 -aryF  𝑋 ) ⟶ ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) )  ∧  ∀ 𝑓  ∈  ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) ∃ 𝑔  ∈  ( 2 -aryF  𝑋 ) 𝑓  =  ( 𝐻 ‘ 𝑔 ) ) ) | 
						
							| 64 | 2 62 63 | sylanbrc | ⊢ ( 𝑋  ∈  𝑉  →  𝐻 : ( 2 -aryF  𝑋 ) –onto→ ( 𝑋  ↑m  ( 𝑋  ×  𝑋 ) ) ) |