| Step | Hyp | Ref | Expression | 
						
							| 1 |  | dfrn2 | ⊢ ran  𝐴  =  { 𝑦  ∣  ∃ 𝑥 𝑥 𝐴 𝑦 } | 
						
							| 2 | 1 | eqabri | ⊢ ( 𝑦  ∈  ran  𝐴  ↔  ∃ 𝑥 𝑥 𝐴 𝑦 ) | 
						
							| 3 | 2 | biimpi | ⊢ ( 𝑦  ∈  ran  𝐴  →  ∃ 𝑥 𝑥 𝐴 𝑦 ) | 
						
							| 4 | 3 | biantrurd | ⊢ ( 𝑦  ∈  ran  𝐴  →  ( ∃* 𝑥 𝑥 𝐴 𝑦  ↔  ( ∃ 𝑥 𝑥 𝐴 𝑦  ∧  ∃* 𝑥 𝑥 𝐴 𝑦 ) ) ) | 
						
							| 5 | 4 | ralbiia | ⊢ ( ∀ 𝑦  ∈  ran  𝐴 ∃* 𝑥 𝑥 𝐴 𝑦  ↔  ∀ 𝑦  ∈  ran  𝐴 ( ∃ 𝑥 𝑥 𝐴 𝑦  ∧  ∃* 𝑥 𝑥 𝐴 𝑦 ) ) | 
						
							| 6 |  | funcnv | ⊢ ( Fun  ◡ 𝐴  ↔  ∀ 𝑦  ∈  ran  𝐴 ∃* 𝑥 𝑥 𝐴 𝑦 ) | 
						
							| 7 |  | df-reu | ⊢ ( ∃! 𝑥  ∈  dom  𝐴 𝑥 𝐴 𝑦  ↔  ∃! 𝑥 ( 𝑥  ∈  dom  𝐴  ∧  𝑥 𝐴 𝑦 ) ) | 
						
							| 8 |  | vex | ⊢ 𝑥  ∈  V | 
						
							| 9 |  | vex | ⊢ 𝑦  ∈  V | 
						
							| 10 | 8 9 | breldm | ⊢ ( 𝑥 𝐴 𝑦  →  𝑥  ∈  dom  𝐴 ) | 
						
							| 11 | 10 | pm4.71ri | ⊢ ( 𝑥 𝐴 𝑦  ↔  ( 𝑥  ∈  dom  𝐴  ∧  𝑥 𝐴 𝑦 ) ) | 
						
							| 12 | 11 | eubii | ⊢ ( ∃! 𝑥 𝑥 𝐴 𝑦  ↔  ∃! 𝑥 ( 𝑥  ∈  dom  𝐴  ∧  𝑥 𝐴 𝑦 ) ) | 
						
							| 13 |  | df-eu | ⊢ ( ∃! 𝑥 𝑥 𝐴 𝑦  ↔  ( ∃ 𝑥 𝑥 𝐴 𝑦  ∧  ∃* 𝑥 𝑥 𝐴 𝑦 ) ) | 
						
							| 14 | 7 12 13 | 3bitr2i | ⊢ ( ∃! 𝑥  ∈  dom  𝐴 𝑥 𝐴 𝑦  ↔  ( ∃ 𝑥 𝑥 𝐴 𝑦  ∧  ∃* 𝑥 𝑥 𝐴 𝑦 ) ) | 
						
							| 15 | 14 | ralbii | ⊢ ( ∀ 𝑦  ∈  ran  𝐴 ∃! 𝑥  ∈  dom  𝐴 𝑥 𝐴 𝑦  ↔  ∀ 𝑦  ∈  ran  𝐴 ( ∃ 𝑥 𝑥 𝐴 𝑦  ∧  ∃* 𝑥 𝑥 𝐴 𝑦 ) ) | 
						
							| 16 | 5 6 15 | 3bitr4i | ⊢ ( Fun  ◡ 𝐴  ↔  ∀ 𝑦  ∈  ran  𝐴 ∃! 𝑥  ∈  dom  𝐴 𝑥 𝐴 𝑦 ) |