| Step | Hyp | Ref | Expression | 
						
							| 1 |  | f1oresrab.1 | ⊢ 𝐹  =  ( 𝑥  ∈  𝐴  ↦  𝐶 ) | 
						
							| 2 |  | f1oresrab.2 | ⊢ ( 𝜑  →  𝐹 : 𝐴 –1-1-onto→ 𝐵 ) | 
						
							| 3 |  | f1oresrab.3 | ⊢ ( ( 𝜑  ∧  𝑥  ∈  𝐴  ∧  𝑦  =  𝐶 )  →  ( 𝜒  ↔  𝜓 ) ) | 
						
							| 4 |  | f1ofun | ⊢ ( 𝐹 : 𝐴 –1-1-onto→ 𝐵  →  Fun  𝐹 ) | 
						
							| 5 |  | funcnvcnv | ⊢ ( Fun  𝐹  →  Fun  ◡ ◡ 𝐹 ) | 
						
							| 6 | 2 4 5 | 3syl | ⊢ ( 𝜑  →  Fun  ◡ ◡ 𝐹 ) | 
						
							| 7 |  | f1ocnv | ⊢ ( 𝐹 : 𝐴 –1-1-onto→ 𝐵  →  ◡ 𝐹 : 𝐵 –1-1-onto→ 𝐴 ) | 
						
							| 8 |  | f1of1 | ⊢ ( ◡ 𝐹 : 𝐵 –1-1-onto→ 𝐴  →  ◡ 𝐹 : 𝐵 –1-1→ 𝐴 ) | 
						
							| 9 | 2 7 8 | 3syl | ⊢ ( 𝜑  →  ◡ 𝐹 : 𝐵 –1-1→ 𝐴 ) | 
						
							| 10 |  | ssrab2 | ⊢ { 𝑦  ∈  𝐵  ∣  𝜒 }  ⊆  𝐵 | 
						
							| 11 |  | f1ores | ⊢ ( ( ◡ 𝐹 : 𝐵 –1-1→ 𝐴  ∧  { 𝑦  ∈  𝐵  ∣  𝜒 }  ⊆  𝐵 )  →  ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ ( ◡ 𝐹  “  { 𝑦  ∈  𝐵  ∣  𝜒 } ) ) | 
						
							| 12 | 9 10 11 | sylancl | ⊢ ( 𝜑  →  ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ ( ◡ 𝐹  “  { 𝑦  ∈  𝐵  ∣  𝜒 } ) ) | 
						
							| 13 | 1 | mptpreima | ⊢ ( ◡ 𝐹  “  { 𝑦  ∈  𝐵  ∣  𝜒 } )  =  { 𝑥  ∈  𝐴  ∣  𝐶  ∈  { 𝑦  ∈  𝐵  ∣  𝜒 } } | 
						
							| 14 | 3 | 3expia | ⊢ ( ( 𝜑  ∧  𝑥  ∈  𝐴 )  →  ( 𝑦  =  𝐶  →  ( 𝜒  ↔  𝜓 ) ) ) | 
						
							| 15 | 14 | alrimiv | ⊢ ( ( 𝜑  ∧  𝑥  ∈  𝐴 )  →  ∀ 𝑦 ( 𝑦  =  𝐶  →  ( 𝜒  ↔  𝜓 ) ) ) | 
						
							| 16 |  | f1of | ⊢ ( 𝐹 : 𝐴 –1-1-onto→ 𝐵  →  𝐹 : 𝐴 ⟶ 𝐵 ) | 
						
							| 17 | 2 16 | syl | ⊢ ( 𝜑  →  𝐹 : 𝐴 ⟶ 𝐵 ) | 
						
							| 18 | 1 | fmpt | ⊢ ( ∀ 𝑥  ∈  𝐴 𝐶  ∈  𝐵  ↔  𝐹 : 𝐴 ⟶ 𝐵 ) | 
						
							| 19 | 17 18 | sylibr | ⊢ ( 𝜑  →  ∀ 𝑥  ∈  𝐴 𝐶  ∈  𝐵 ) | 
						
							| 20 | 19 | r19.21bi | ⊢ ( ( 𝜑  ∧  𝑥  ∈  𝐴 )  →  𝐶  ∈  𝐵 ) | 
						
							| 21 |  | elrab3t | ⊢ ( ( ∀ 𝑦 ( 𝑦  =  𝐶  →  ( 𝜒  ↔  𝜓 ) )  ∧  𝐶  ∈  𝐵 )  →  ( 𝐶  ∈  { 𝑦  ∈  𝐵  ∣  𝜒 }  ↔  𝜓 ) ) | 
						
							| 22 | 15 20 21 | syl2anc | ⊢ ( ( 𝜑  ∧  𝑥  ∈  𝐴 )  →  ( 𝐶  ∈  { 𝑦  ∈  𝐵  ∣  𝜒 }  ↔  𝜓 ) ) | 
						
							| 23 | 22 | rabbidva | ⊢ ( 𝜑  →  { 𝑥  ∈  𝐴  ∣  𝐶  ∈  { 𝑦  ∈  𝐵  ∣  𝜒 } }  =  { 𝑥  ∈  𝐴  ∣  𝜓 } ) | 
						
							| 24 | 13 23 | eqtrid | ⊢ ( 𝜑  →  ( ◡ 𝐹  “  { 𝑦  ∈  𝐵  ∣  𝜒 } )  =  { 𝑥  ∈  𝐴  ∣  𝜓 } ) | 
						
							| 25 | 24 | f1oeq3d | ⊢ ( 𝜑  →  ( ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ ( ◡ 𝐹  “  { 𝑦  ∈  𝐵  ∣  𝜒 } )  ↔  ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ { 𝑥  ∈  𝐴  ∣  𝜓 } ) ) | 
						
							| 26 | 12 25 | mpbid | ⊢ ( 𝜑  →  ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ { 𝑥  ∈  𝐴  ∣  𝜓 } ) | 
						
							| 27 |  | f1orescnv | ⊢ ( ( Fun  ◡ ◡ 𝐹  ∧  ( ◡ 𝐹  ↾  { 𝑦  ∈  𝐵  ∣  𝜒 } ) : { 𝑦  ∈  𝐵  ∣  𝜒 } –1-1-onto→ { 𝑥  ∈  𝐴  ∣  𝜓 } )  →  ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 } ) | 
						
							| 28 | 6 26 27 | syl2anc | ⊢ ( 𝜑  →  ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 } ) | 
						
							| 29 |  | rescnvcnv | ⊢ ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } )  =  ( 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) | 
						
							| 30 |  | f1oeq1 | ⊢ ( ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } )  =  ( 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } )  →  ( ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 }  ↔  ( 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 } ) ) | 
						
							| 31 | 29 30 | ax-mp | ⊢ ( ( ◡ ◡ 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 }  ↔  ( 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 } ) | 
						
							| 32 | 28 31 | sylib | ⊢ ( 𝜑  →  ( 𝐹  ↾  { 𝑥  ∈  𝐴  ∣  𝜓 } ) : { 𝑥  ∈  𝐴  ∣  𝜓 } –1-1-onto→ { 𝑦  ∈  𝐵  ∣  𝜒 } ) |