This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: If the domain of a function G equals the range of a function F , then the composition ( G o. F ) is surjective iff G and F as function to the domain of G are both surjective. Symmetric version of fnfocofob including the fact that F is a surjection onto its range. (Contributed by GL and AV, 20-Sep-2024) (Proof shortened by AV, 29-Sep-2024)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | focofob | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( ( 𝐺 ∘ 𝐹 ) : 𝐴 –onto→ 𝐷 ↔ ( 𝐹 : 𝐴 –onto→ 𝐶 ∧ 𝐺 : 𝐶 –onto→ 𝐷 ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ffn | ⊢ ( 𝐹 : 𝐴 ⟶ 𝐵 → 𝐹 Fn 𝐴 ) | |
| 2 | fnfocofob | ⊢ ( ( 𝐹 Fn 𝐴 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( ( 𝐺 ∘ 𝐹 ) : 𝐴 –onto→ 𝐷 ↔ 𝐺 : 𝐶 –onto→ 𝐷 ) ) | |
| 3 | 1 2 | syl3an1 | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( ( 𝐺 ∘ 𝐹 ) : 𝐴 –onto→ 𝐷 ↔ 𝐺 : 𝐶 –onto→ 𝐷 ) ) |
| 4 | dffn4 | ⊢ ( 𝐹 Fn 𝐴 ↔ 𝐹 : 𝐴 –onto→ ran 𝐹 ) | |
| 5 | 1 4 | sylib | ⊢ ( 𝐹 : 𝐴 ⟶ 𝐵 → 𝐹 : 𝐴 –onto→ ran 𝐹 ) |
| 6 | 5 | 3ad2ant1 | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → 𝐹 : 𝐴 –onto→ ran 𝐹 ) |
| 7 | foeq3 | ⊢ ( ran 𝐹 = 𝐶 → ( 𝐹 : 𝐴 –onto→ ran 𝐹 ↔ 𝐹 : 𝐴 –onto→ 𝐶 ) ) | |
| 8 | 7 | 3ad2ant3 | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( 𝐹 : 𝐴 –onto→ ran 𝐹 ↔ 𝐹 : 𝐴 –onto→ 𝐶 ) ) |
| 9 | 6 8 | mpbid | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → 𝐹 : 𝐴 –onto→ 𝐶 ) |
| 10 | 9 | biantrurd | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( 𝐺 : 𝐶 –onto→ 𝐷 ↔ ( 𝐹 : 𝐴 –onto→ 𝐶 ∧ 𝐺 : 𝐶 –onto→ 𝐷 ) ) ) |
| 11 | 3 10 | bitrd | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐺 : 𝐶 ⟶ 𝐷 ∧ ran 𝐹 = 𝐶 ) → ( ( 𝐺 ∘ 𝐹 ) : 𝐴 –onto→ 𝐷 ↔ ( 𝐹 : 𝐴 –onto→ 𝐶 ∧ 𝐺 : 𝐶 –onto→ 𝐷 ) ) ) |