| Step | Hyp | Ref | Expression | 
						
							| 1 |  | fundcmpsurinj.p | ⊢ 𝑃  =  { 𝑧  ∣  ∃ 𝑥  ∈  𝐴 𝑧  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑥 ) } ) } | 
						
							| 2 |  | fundcmpsurinj.h | ⊢ 𝐻  =  ( 𝑝  ∈  𝑃  ↦  ∪  ( 𝐹  “  𝑝 ) ) | 
						
							| 3 | 1 2 | imasetpreimafvbijlemf | ⊢ ( 𝐹  Fn  𝐴  →  𝐻 : 𝑃 ⟶ ( 𝐹  “  𝐴 ) ) | 
						
							| 4 | 3 | adantr | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  𝐻 : 𝑃 ⟶ ( 𝐹  “  𝐴 ) ) | 
						
							| 5 | 1 | preimafvelsetpreimafv | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉  ∧  𝑎  ∈  𝐴 )  →  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  ∈  𝑃 ) | 
						
							| 6 | 5 | 3expa | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  ∈  𝑃 ) | 
						
							| 7 |  | imaeq2 | ⊢ ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ( 𝐹  “  𝑝 )  =  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) ) | 
						
							| 8 | 7 | unieqd | ⊢ ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ∪  ( 𝐹  “  𝑝 )  =  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) ) | 
						
							| 9 | 8 | eqeq2d | ⊢ ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ( ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 )  ↔  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) ) ) | 
						
							| 10 | 9 | adantl | ⊢ ( ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  ∧  𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) )  →  ( ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 )  ↔  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) ) ) | 
						
							| 11 |  | uniimaprimaeqfv | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝑎  ∈  𝐴 )  →  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) )  =  ( 𝐹 ‘ 𝑎 ) ) | 
						
							| 12 | 11 | adantlr | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) )  =  ( 𝐹 ‘ 𝑎 ) ) | 
						
							| 13 | 12 | eqcomd | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) ) | 
						
							| 14 | 6 10 13 | rspcedvd | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ∃ 𝑝  ∈  𝑃 ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) | 
						
							| 15 |  | eqeq1 | ⊢ ( 𝑦  =  ( 𝐹 ‘ 𝑎 )  →  ( 𝑦  =  ∪  ( 𝐹  “  𝑝 )  ↔  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 16 | 15 | eqcoms | ⊢ ( ( 𝐹 ‘ 𝑎 )  =  𝑦  →  ( 𝑦  =  ∪  ( 𝐹  “  𝑝 )  ↔  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 17 | 16 | rexbidv | ⊢ ( ( 𝐹 ‘ 𝑎 )  =  𝑦  →  ( ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 )  ↔  ∃ 𝑝  ∈  𝑃 ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 18 | 14 17 | syl5ibrcom | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ( ( 𝐹 ‘ 𝑎 )  =  𝑦  →  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 19 | 18 | rexlimdva | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦  →  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 20 | 8 | eqcomd | ⊢ ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ∪  ( 𝐹  “  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) )  =  ∪  ( 𝐹  “  𝑝 ) ) | 
						
							| 21 | 13 20 | sylan9eq | ⊢ ( ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  ∧  𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) )  →  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) | 
						
							| 22 | 21 | ex | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑎  ∈  𝐴 )  →  ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 23 | 22 | reximdva | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( ∃ 𝑎  ∈  𝐴 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  →  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 24 | 1 | elsetpreimafv | ⊢ ( 𝑝  ∈  𝑃  →  ∃ 𝑥  ∈  𝐴 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑥 ) } ) ) | 
						
							| 25 |  | fveq2 | ⊢ ( 𝑎  =  𝑥  →  ( 𝐹 ‘ 𝑎 )  =  ( 𝐹 ‘ 𝑥 ) ) | 
						
							| 26 | 25 | sneqd | ⊢ ( 𝑎  =  𝑥  →  { ( 𝐹 ‘ 𝑎 ) }  =  { ( 𝐹 ‘ 𝑥 ) } ) | 
						
							| 27 | 26 | imaeq2d | ⊢ ( 𝑎  =  𝑥  →  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑥 ) } ) ) | 
						
							| 28 | 27 | eqeq2d | ⊢ ( 𝑎  =  𝑥  →  ( 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  ↔  𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑥 ) } ) ) ) | 
						
							| 29 | 28 | cbvrexvw | ⊢ ( ∃ 𝑎  ∈  𝐴 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } )  ↔  ∃ 𝑥  ∈  𝐴 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑥 ) } ) ) | 
						
							| 30 | 24 29 | sylibr | ⊢ ( 𝑝  ∈  𝑃  →  ∃ 𝑎  ∈  𝐴 𝑝  =  ( ◡ 𝐹  “  { ( 𝐹 ‘ 𝑎 ) } ) ) | 
						
							| 31 | 23 30 | impel | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑝  ∈  𝑃 )  →  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) | 
						
							| 32 |  | eqeq2 | ⊢ ( 𝑦  =  ∪  ( 𝐹  “  𝑝 )  →  ( ( 𝐹 ‘ 𝑎 )  =  𝑦  ↔  ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 33 | 32 | rexbidv | ⊢ ( 𝑦  =  ∪  ( 𝐹  “  𝑝 )  →  ( ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦  ↔  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 34 | 31 33 | syl5ibrcom | ⊢ ( ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  ∧  𝑝  ∈  𝑃 )  →  ( 𝑦  =  ∪  ( 𝐹  “  𝑝 )  →  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦 ) ) | 
						
							| 35 | 34 | rexlimdva | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 )  →  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦 ) ) | 
						
							| 36 | 19 35 | impbid | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦  ↔  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) ) ) | 
						
							| 37 | 36 | abbidv | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  { 𝑦  ∣  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦 }  =  { 𝑦  ∣  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) } ) | 
						
							| 38 |  | fnfun | ⊢ ( 𝐹  Fn  𝐴  →  Fun  𝐹 ) | 
						
							| 39 |  | fndm | ⊢ ( 𝐹  Fn  𝐴  →  dom  𝐹  =  𝐴 ) | 
						
							| 40 |  | eqimss2 | ⊢ ( dom  𝐹  =  𝐴  →  𝐴  ⊆  dom  𝐹 ) | 
						
							| 41 | 39 40 | syl | ⊢ ( 𝐹  Fn  𝐴  →  𝐴  ⊆  dom  𝐹 ) | 
						
							| 42 | 38 41 | jca | ⊢ ( 𝐹  Fn  𝐴  →  ( Fun  𝐹  ∧  𝐴  ⊆  dom  𝐹 ) ) | 
						
							| 43 | 42 | adantr | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( Fun  𝐹  ∧  𝐴  ⊆  dom  𝐹 ) ) | 
						
							| 44 |  | dfimafn | ⊢ ( ( Fun  𝐹  ∧  𝐴  ⊆  dom  𝐹 )  →  ( 𝐹  “  𝐴 )  =  { 𝑦  ∣  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦 } ) | 
						
							| 45 | 43 44 | syl | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ( 𝐹  “  𝐴 )  =  { 𝑦  ∣  ∃ 𝑎  ∈  𝐴 ( 𝐹 ‘ 𝑎 )  =  𝑦 } ) | 
						
							| 46 | 2 | rnmpt | ⊢ ran  𝐻  =  { 𝑦  ∣  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) } | 
						
							| 47 | 46 | a1i | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ran  𝐻  =  { 𝑦  ∣  ∃ 𝑝  ∈  𝑃 𝑦  =  ∪  ( 𝐹  “  𝑝 ) } ) | 
						
							| 48 | 37 45 47 | 3eqtr4rd | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  ran  𝐻  =  ( 𝐹  “  𝐴 ) ) | 
						
							| 49 |  | dffo2 | ⊢ ( 𝐻 : 𝑃 –onto→ ( 𝐹  “  𝐴 )  ↔  ( 𝐻 : 𝑃 ⟶ ( 𝐹  “  𝐴 )  ∧  ran  𝐻  =  ( 𝐹  “  𝐴 ) ) ) | 
						
							| 50 | 4 48 49 | sylanbrc | ⊢ ( ( 𝐹  Fn  𝐴  ∧  𝐴  ∈  𝑉 )  →  𝐻 : 𝑃 –onto→ ( 𝐹  “  𝐴 ) ) |