| Step | Hyp | Ref | Expression | 
						
							| 1 |  | homarcl.h | ⊢ 𝐻  =  ( Homa ‘ 𝐶 ) | 
						
							| 2 |  | homafval.b | ⊢ 𝐵  =  ( Base ‘ 𝐶 ) | 
						
							| 3 |  | homafval.c | ⊢ ( 𝜑  →  𝐶  ∈  Cat ) | 
						
							| 4 |  | homaval.j | ⊢ 𝐽  =  ( Hom  ‘ 𝐶 ) | 
						
							| 5 |  | homaval.x | ⊢ ( 𝜑  →  𝑋  ∈  𝐵 ) | 
						
							| 6 |  | homaval.y | ⊢ ( 𝜑  →  𝑌  ∈  𝐵 ) | 
						
							| 7 |  | df-ov | ⊢ ( 𝑋 𝐻 𝑌 )  =  ( 𝐻 ‘ 〈 𝑋 ,  𝑌 〉 ) | 
						
							| 8 | 1 2 3 4 | homafval | ⊢ ( 𝜑  →  𝐻  =  ( 𝑧  ∈  ( 𝐵  ×  𝐵 )  ↦  ( { 𝑧 }  ×  ( 𝐽 ‘ 𝑧 ) ) ) ) | 
						
							| 9 |  | simpr | ⊢ ( ( 𝜑  ∧  𝑧  =  〈 𝑋 ,  𝑌 〉 )  →  𝑧  =  〈 𝑋 ,  𝑌 〉 ) | 
						
							| 10 | 9 | sneqd | ⊢ ( ( 𝜑  ∧  𝑧  =  〈 𝑋 ,  𝑌 〉 )  →  { 𝑧 }  =  { 〈 𝑋 ,  𝑌 〉 } ) | 
						
							| 11 | 9 | fveq2d | ⊢ ( ( 𝜑  ∧  𝑧  =  〈 𝑋 ,  𝑌 〉 )  →  ( 𝐽 ‘ 𝑧 )  =  ( 𝐽 ‘ 〈 𝑋 ,  𝑌 〉 ) ) | 
						
							| 12 |  | df-ov | ⊢ ( 𝑋 𝐽 𝑌 )  =  ( 𝐽 ‘ 〈 𝑋 ,  𝑌 〉 ) | 
						
							| 13 | 11 12 | eqtr4di | ⊢ ( ( 𝜑  ∧  𝑧  =  〈 𝑋 ,  𝑌 〉 )  →  ( 𝐽 ‘ 𝑧 )  =  ( 𝑋 𝐽 𝑌 ) ) | 
						
							| 14 | 10 13 | xpeq12d | ⊢ ( ( 𝜑  ∧  𝑧  =  〈 𝑋 ,  𝑌 〉 )  →  ( { 𝑧 }  ×  ( 𝐽 ‘ 𝑧 ) )  =  ( { 〈 𝑋 ,  𝑌 〉 }  ×  ( 𝑋 𝐽 𝑌 ) ) ) | 
						
							| 15 | 5 6 | opelxpd | ⊢ ( 𝜑  →  〈 𝑋 ,  𝑌 〉  ∈  ( 𝐵  ×  𝐵 ) ) | 
						
							| 16 |  | snex | ⊢ { 〈 𝑋 ,  𝑌 〉 }  ∈  V | 
						
							| 17 |  | ovex | ⊢ ( 𝑋 𝐽 𝑌 )  ∈  V | 
						
							| 18 | 16 17 | xpex | ⊢ ( { 〈 𝑋 ,  𝑌 〉 }  ×  ( 𝑋 𝐽 𝑌 ) )  ∈  V | 
						
							| 19 | 18 | a1i | ⊢ ( 𝜑  →  ( { 〈 𝑋 ,  𝑌 〉 }  ×  ( 𝑋 𝐽 𝑌 ) )  ∈  V ) | 
						
							| 20 | 8 14 15 19 | fvmptd | ⊢ ( 𝜑  →  ( 𝐻 ‘ 〈 𝑋 ,  𝑌 〉 )  =  ( { 〈 𝑋 ,  𝑌 〉 }  ×  ( 𝑋 𝐽 𝑌 ) ) ) | 
						
							| 21 | 7 20 | eqtrid | ⊢ ( 𝜑  →  ( 𝑋 𝐻 𝑌 )  =  ( { 〈 𝑋 ,  𝑌 〉 }  ×  ( 𝑋 𝐽 𝑌 ) ) ) |