Metamath Proof Explorer


Theorem fundcmpsurinj

Description: Every function F : A --> B can be decomposed into a surjective and an injective function. (Contributed by AV, 13-Mar-2024)

Ref Expression
Assertion fundcmpsurinj ⊢ F : A ⟶ B ∧ A ∈ V → ∃ g ∃ h ∃ p g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g

Proof

Step Hyp Ref Expression
1 abrexexg ⊢ A ∈ V → z | ∃ x ∈ A z = F -1 F ⁡ x ∈ V
2 1 adantl ⊢ F : A ⟶ B ∧ A ∈ V → z | ∃ x ∈ A z = F -1 F ⁡ x ∈ V
3 fveq2 ⊢ x = y → F ⁡ x = F ⁡ y
4 3 sneqd ⊢ x = y → F ⁡ x = F ⁡ y
5 4 imaeq2d ⊢ x = y → F -1 F ⁡ x = F -1 F ⁡ y
6 5 eqeq2d ⊢ x = y → z = F -1 F ⁡ x ↔ z = F -1 F ⁡ y
7 6 cbvrexvw ⊢ ∃ x ∈ A z = F -1 F ⁡ x ↔ ∃ y ∈ A z = F -1 F ⁡ y
8 7 abbii ⊢ z | ∃ x ∈ A z = F -1 F ⁡ x = z | ∃ y ∈ A z = F -1 F ⁡ y
9 8 fundcmpsurinjpreimafv ⊢ F : A ⟶ B ∧ A ∈ V → ∃ g ∃ h g : A ⟶ onto z | ∃ x ∈ A z = F -1 F ⁡ x ∧ h : z | ∃ x ∈ A z = F -1 F ⁡ x ⟶ 1-1 B ∧ F = h ∘ g
10 foeq3 ⊢ p = z | ∃ x ∈ A z = F -1 F ⁡ x → g : A ⟶ onto p ↔ g : A ⟶ onto z | ∃ x ∈ A z = F -1 F ⁡ x
11 f1eq2 ⊢ p = z | ∃ x ∈ A z = F -1 F ⁡ x → h : p ⟶ 1-1 B ↔ h : z | ∃ x ∈ A z = F -1 F ⁡ x ⟶ 1-1 B
12 10 11 3anbi12d ⊢ p = z | ∃ x ∈ A z = F -1 F ⁡ x → g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g ↔ g : A ⟶ onto z | ∃ x ∈ A z = F -1 F ⁡ x ∧ h : z | ∃ x ∈ A z = F -1 F ⁡ x ⟶ 1-1 B ∧ F = h ∘ g
13 12 2exbidv ⊢ p = z | ∃ x ∈ A z = F -1 F ⁡ x → ∃ g ∃ h g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g ↔ ∃ g ∃ h g : A ⟶ onto z | ∃ x ∈ A z = F -1 F ⁡ x ∧ h : z | ∃ x ∈ A z = F -1 F ⁡ x ⟶ 1-1 B ∧ F = h ∘ g
14 2 9 13 spcedv ⊢ F : A ⟶ B ∧ A ∈ V → ∃ p ∃ g ∃ h g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g
15 exrot3 ⊢ ∃ p ∃ g ∃ h g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g ↔ ∃ g ∃ h ∃ p g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g
16 14 15 sylib ⊢ F : A ⟶ B ∧ A ∈ V → ∃ g ∃ h ∃ p g : A ⟶ onto p ∧ h : p ⟶ 1-1 B ∧ F = h ∘ g