| Step | 
						Hyp | 
						Ref | 
						Expression | 
					
						
							| 1 | 
							
								
							 | 
							relcnv | 
							 |-  Rel `' R  | 
						
						
							| 2 | 
							
								
							 | 
							relxp | 
							 |-  Rel ( { x } X. ( `' R " { x } ) ) | 
						
						
							| 3 | 
							
								2
							 | 
							rgenw | 
							 |-  A. x e. A Rel ( { x } X. ( `' R " { x } ) ) | 
						
						
							| 4 | 
							
								
							 | 
							reliun | 
							 |-  ( Rel U_ x e. A ( { x } X. ( `' R " { x } ) ) <-> A. x e. A Rel ( { x } X. ( `' R " { x } ) ) ) | 
						
						
							| 5 | 
							
								3 4
							 | 
							mpbir | 
							 |-  Rel U_ x e. A ( { x } X. ( `' R " { x } ) ) | 
						
						
							| 6 | 
							
								
							 | 
							vex | 
							 |-  z e. _V  | 
						
						
							| 7 | 
							
								
							 | 
							vex | 
							 |-  y e. _V  | 
						
						
							| 8 | 
							
								6 7
							 | 
							opeldm | 
							 |-  ( <. z , y >. e. `' R -> z e. dom `' R )  | 
						
						
							| 9 | 
							
								
							 | 
							df-rn | 
							 |-  ran R = dom `' R  | 
						
						
							| 10 | 
							
								8 9
							 | 
							eleqtrrdi | 
							 |-  ( <. z , y >. e. `' R -> z e. ran R )  | 
						
						
							| 11 | 
							
								
							 | 
							ssel2 | 
							 |-  ( ( ran R C_ A /\ z e. ran R ) -> z e. A )  | 
						
						
							| 12 | 
							
								10 11
							 | 
							sylan2 | 
							 |-  ( ( ran R C_ A /\ <. z , y >. e. `' R ) -> z e. A )  | 
						
						
							| 13 | 
							
								12
							 | 
							ex | 
							 |-  ( ran R C_ A -> ( <. z , y >. e. `' R -> z e. A ) )  | 
						
						
							| 14 | 
							
								13
							 | 
							pm4.71rd | 
							 |-  ( ran R C_ A -> ( <. z , y >. e. `' R <-> ( z e. A /\ <. z , y >. e. `' R ) ) )  | 
						
						
							| 15 | 
							
								6 7
							 | 
							elimasn | 
							 |-  ( y e. ( `' R " { z } ) <-> <. z , y >. e. `' R ) | 
						
						
							| 16 | 
							
								15
							 | 
							anbi2i | 
							 |-  ( ( z e. A /\ y e. ( `' R " { z } ) ) <-> ( z e. A /\ <. z , y >. e. `' R ) ) | 
						
						
							| 17 | 
							
								14 16
							 | 
							bitr4di | 
							 |-  ( ran R C_ A -> ( <. z , y >. e. `' R <-> ( z e. A /\ y e. ( `' R " { z } ) ) ) ) | 
						
						
							| 18 | 
							
								
							 | 
							sneq | 
							 |-  ( x = z -> { x } = { z } ) | 
						
						
							| 19 | 
							
								18
							 | 
							imaeq2d | 
							 |-  ( x = z -> ( `' R " { x } ) = ( `' R " { z } ) ) | 
						
						
							| 20 | 
							
								19
							 | 
							opeliunxp2 | 
							 |-  ( <. z , y >. e. U_ x e. A ( { x } X. ( `' R " { x } ) ) <-> ( z e. A /\ y e. ( `' R " { z } ) ) ) | 
						
						
							| 21 | 
							
								17 20
							 | 
							bitr4di | 
							 |-  ( ran R C_ A -> ( <. z , y >. e. `' R <-> <. z , y >. e. U_ x e. A ( { x } X. ( `' R " { x } ) ) ) ) | 
						
						
							| 22 | 
							
								1 5 21
							 | 
							eqrelrdv | 
							 |-  ( ran R C_ A -> `' R = U_ x e. A ( { x } X. ( `' R " { x } ) ) ) |