| Step | Hyp | Ref
| Expression |
| 1 | | dffo4 7123 |
. . . 4
⊢ (𝑓:𝐴–onto→𝐵 ↔ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥)) |
| 2 | | dff4 7121 |
. . . . . 6
⊢ (𝑓:𝐴⟶𝐵 ↔ (𝑓 ⊆ (𝐴 × 𝐵) ∧ ∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦)) |
| 3 | 2 | simprbi 496 |
. . . . 5
⊢ (𝑓:𝐴⟶𝐵 → ∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦) |
| 4 | 3 | anim1i 615 |
. . . 4
⊢ ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → (∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥)) |
| 5 | 1, 4 | sylbi 217 |
. . 3
⊢ (𝑓:𝐴–onto→𝐵 → (∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥)) |
| 6 | 5 | eximi 1835 |
. 2
⊢
(∃𝑓 𝑓:𝐴–onto→𝐵 → ∃𝑓(∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥)) |
| 7 | | brinxp 5764 |
. . . . . . . . . . . 12
⊢ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) → (𝑥𝑓𝑦 ↔ 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦)) |
| 8 | 7 | reubidva 3396 |
. . . . . . . . . . 11
⊢ (𝑥 ∈ 𝐴 → (∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ↔ ∃!𝑦 ∈ 𝐵 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦)) |
| 9 | 8 | biimpd 229 |
. . . . . . . . . 10
⊢ (𝑥 ∈ 𝐴 → (∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 → ∃!𝑦 ∈ 𝐵 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦)) |
| 10 | 9 | ralimia 3080 |
. . . . . . . . 9
⊢
(∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 → ∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦) |
| 11 | | inss2 4238 |
. . . . . . . . 9
⊢ (𝑓 ∩ (𝐴 × 𝐵)) ⊆ (𝐴 × 𝐵) |
| 12 | 10, 11 | jctil 519 |
. . . . . . . 8
⊢
(∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 → ((𝑓 ∩ (𝐴 × 𝐵)) ⊆ (𝐴 × 𝐵) ∧ ∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦)) |
| 13 | | dff4 7121 |
. . . . . . . 8
⊢ ((𝑓 ∩ (𝐴 × 𝐵)):𝐴⟶𝐵 ↔ ((𝑓 ∩ (𝐴 × 𝐵)) ⊆ (𝐴 × 𝐵) ∧ ∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥(𝑓 ∩ (𝐴 × 𝐵))𝑦)) |
| 14 | 12, 13 | sylibr 234 |
. . . . . . 7
⊢
(∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 → (𝑓 ∩ (𝐴 × 𝐵)):𝐴⟶𝐵) |
| 15 | | rninxp 6199 |
. . . . . . . 8
⊢ (ran
(𝑓 ∩ (𝐴 × 𝐵)) = 𝐵 ↔ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) |
| 16 | 15 | biimpri 228 |
. . . . . . 7
⊢
(∀𝑥 ∈
𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥 → ran (𝑓 ∩ (𝐴 × 𝐵)) = 𝐵) |
| 17 | 14, 16 | anim12i 613 |
. . . . . 6
⊢
((∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → ((𝑓 ∩ (𝐴 × 𝐵)):𝐴⟶𝐵 ∧ ran (𝑓 ∩ (𝐴 × 𝐵)) = 𝐵)) |
| 18 | | dffo2 6824 |
. . . . . 6
⊢ ((𝑓 ∩ (𝐴 × 𝐵)):𝐴–onto→𝐵 ↔ ((𝑓 ∩ (𝐴 × 𝐵)):𝐴⟶𝐵 ∧ ran (𝑓 ∩ (𝐴 × 𝐵)) = 𝐵)) |
| 19 | 17, 18 | sylibr 234 |
. . . . 5
⊢
((∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → (𝑓 ∩ (𝐴 × 𝐵)):𝐴–onto→𝐵) |
| 20 | | vex 3484 |
. . . . . . 7
⊢ 𝑓 ∈ V |
| 21 | 20 | inex1 5317 |
. . . . . 6
⊢ (𝑓 ∩ (𝐴 × 𝐵)) ∈ V |
| 22 | | foeq1 6816 |
. . . . . 6
⊢ (𝑔 = (𝑓 ∩ (𝐴 × 𝐵)) → (𝑔:𝐴–onto→𝐵 ↔ (𝑓 ∩ (𝐴 × 𝐵)):𝐴–onto→𝐵)) |
| 23 | 21, 22 | spcev 3606 |
. . . . 5
⊢ ((𝑓 ∩ (𝐴 × 𝐵)):𝐴–onto→𝐵 → ∃𝑔 𝑔:𝐴–onto→𝐵) |
| 24 | 19, 23 | syl 17 |
. . . 4
⊢
((∀𝑥 ∈
𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → ∃𝑔 𝑔:𝐴–onto→𝐵) |
| 25 | 24 | exlimiv 1930 |
. . 3
⊢
(∃𝑓(∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → ∃𝑔 𝑔:𝐴–onto→𝐵) |
| 26 | | foeq1 6816 |
. . . 4
⊢ (𝑔 = 𝑓 → (𝑔:𝐴–onto→𝐵 ↔ 𝑓:𝐴–onto→𝐵)) |
| 27 | 26 | cbvexvw 2036 |
. . 3
⊢
(∃𝑔 𝑔:𝐴–onto→𝐵 ↔ ∃𝑓 𝑓:𝐴–onto→𝐵) |
| 28 | 25, 27 | sylib 218 |
. 2
⊢
(∃𝑓(∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥) → ∃𝑓 𝑓:𝐴–onto→𝐵) |
| 29 | 6, 28 | impbii 209 |
1
⊢
(∃𝑓 𝑓:𝐴–onto→𝐵 ↔ ∃𝑓(∀𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝑥𝑓𝑦 ∧ ∀𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐴 𝑦𝑓𝑥)) |