Proof of Theorem funcnvmpt
| Step | Hyp | Ref
| Expression |
| 1 | | relcnv 6079 |
. . . 4
⊢ Rel ◡𝐹 |
| 2 | | nfcv 2914 |
. . . . 5
⊢
Ⅎ𝑦◡𝐹 |
| 3 | | funcnvmpt.2 |
. . . . . 6
⊢
Ⅎ𝑥𝐹 |
| 4 | 3 | nfcnv 5839 |
. . . . 5
⊢
Ⅎ𝑥◡𝐹 |
| 5 | 2, 4 | dffun6f 6521 |
. . . 4
⊢ (Fun
◡𝐹 ↔ (Rel ◡𝐹 ∧ ∀𝑦∃*𝑥 𝑦◡𝐹𝑥)) |
| 6 | 1, 5 | mpbiran 717 |
. . 3
⊢ (Fun
◡𝐹 ↔ ∀𝑦∃*𝑥 𝑦◡𝐹𝑥) |
| 7 | | vex 3448 |
. . . . . 6
⊢ 𝑦 ∈ V |
| 8 | | vex 3448 |
. . . . . 6
⊢ 𝑥 ∈ V |
| 9 | 7, 8 | brcnv 5843 |
. . . . 5
⊢ (𝑦◡𝐹𝑥 ↔ 𝑥𝐹𝑦) |
| 10 | 9 | mobii 2565 |
. . . 4
⊢
(∃*𝑥 𝑦◡𝐹𝑥 ↔ ∃*𝑥 𝑥𝐹𝑦) |
| 11 | 10 | albii 1829 |
. . 3
⊢
(∀𝑦∃*𝑥 𝑦◡𝐹𝑥 ↔ ∀𝑦∃*𝑥 𝑥𝐹𝑦) |
| 12 | 6, 11 | bitri 277 |
. 2
⊢ (Fun
◡𝐹 ↔ ∀𝑦∃*𝑥 𝑥𝐹𝑦) |
| 13 | | funcnvmpt.0 |
. . . . 5
⊢
Ⅎ𝑥𝜑 |
| 14 | | funcnvmpt.3 |
. . . . . . . . . 10
⊢ 𝐹 = (𝑥 ∈ 𝐴 ↦ 𝐵) |
| 15 | 14 | funmpt2 6545 |
. . . . . . . . 9
⊢ Fun 𝐹 |
| 16 | | funbrfv2b 6909 |
. . . . . . . . 9
⊢ (Fun
𝐹 → (𝑥𝐹𝑦 ↔ (𝑥 ∈ dom 𝐹 ∧ (𝐹‘𝑥) = 𝑦))) |
| 17 | 15, 16 | ax-mp 5 |
. . . . . . . 8
⊢ (𝑥𝐹𝑦 ↔ (𝑥 ∈ dom 𝐹 ∧ (𝐹‘𝑥) = 𝑦)) |
| 18 | 14 | dmmpt 6212 |
. . . . . . . . . . 11
⊢ dom 𝐹 = {𝑥 ∈ 𝐴 ∣ 𝐵 ∈ V} |
| 19 | | funcnvmpt.4 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ 𝑉) |
| 20 | 19 | elexd 3467 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ V) |
| 21 | 13, 20 | ralrimia 3251 |
. . . . . . . . . . . 12
⊢ (𝜑 → ∀𝑥 ∈ 𝐴 𝐵 ∈ V) |
| 22 | | funcnvmpt.1 |
. . . . . . . . . . . . 13
⊢
Ⅎ𝑥𝐴 |
| 23 | 22 | rabid2f 3435 |
. . . . . . . . . . . 12
⊢ (𝐴 = {𝑥 ∈ 𝐴 ∣ 𝐵 ∈ V} ↔ ∀𝑥 ∈ 𝐴 𝐵 ∈ V) |
| 24 | 21, 23 | sylibr 236 |
. . . . . . . . . . 11
⊢ (𝜑 → 𝐴 = {𝑥 ∈ 𝐴 ∣ 𝐵 ∈ V}) |
| 25 | 18, 24 | eqtr4id 2806 |
. . . . . . . . . 10
⊢ (𝜑 → dom 𝐹 = 𝐴) |
| 26 | 25 | eleq2d 2838 |
. . . . . . . . 9
⊢ (𝜑 → (𝑥 ∈ dom 𝐹 ↔ 𝑥 ∈ 𝐴)) |
| 27 | 26 | anbi1d 639 |
. . . . . . . 8
⊢ (𝜑 → ((𝑥 ∈ dom 𝐹 ∧ (𝐹‘𝑥) = 𝑦) ↔ (𝑥 ∈ 𝐴 ∧ (𝐹‘𝑥) = 𝑦))) |
| 28 | 17, 27 | bitrid 285 |
. . . . . . 7
⊢ (𝜑 → (𝑥𝐹𝑦 ↔ (𝑥 ∈ 𝐴 ∧ (𝐹‘𝑥) = 𝑦))) |
| 29 | 28 | bian1d 587 |
. . . . . 6
⊢ (𝜑 → ((𝑥 ∈ 𝐴 ∧ 𝑥𝐹𝑦) ↔ (𝑥 ∈ 𝐴 ∧ (𝐹‘𝑥) = 𝑦))) |
| 30 | | simpr 487 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝑥 ∈ 𝐴) |
| 31 | 14 | fveq1i 6853 |
. . . . . . . . . . 11
⊢ (𝐹‘𝑥) = ((𝑥 ∈ 𝐴 ↦ 𝐵)‘𝑥) |
| 32 | 22 | fvmpt2f 6961 |
. . . . . . . . . . 11
⊢ ((𝑥 ∈ 𝐴 ∧ 𝐵 ∈ 𝑉) → ((𝑥 ∈ 𝐴 ↦ 𝐵)‘𝑥) = 𝐵) |
| 33 | 31, 32 | eqtrid 2799 |
. . . . . . . . . 10
⊢ ((𝑥 ∈ 𝐴 ∧ 𝐵 ∈ 𝑉) → (𝐹‘𝑥) = 𝐵) |
| 34 | 30, 19, 33 | syl2anc 592 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝐹‘𝑥) = 𝐵) |
| 35 | 34 | eqeq2d 2763 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝑦 = (𝐹‘𝑥) ↔ 𝑦 = 𝐵)) |
| 36 | | eqcom 2759 |
. . . . . . . . 9
⊢ ((𝐹‘𝑥) = 𝑦 ↔ 𝑦 = (𝐹‘𝑥)) |
| 37 | 26 | biimpar 480 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝑥 ∈ dom 𝐹) |
| 38 | | funbrfvb 6905 |
. . . . . . . . . 10
⊢ ((Fun
𝐹 ∧ 𝑥 ∈ dom 𝐹) → ((𝐹‘𝑥) = 𝑦 ↔ 𝑥𝐹𝑦)) |
| 39 | 15, 37, 38 | sylancr 595 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → ((𝐹‘𝑥) = 𝑦 ↔ 𝑥𝐹𝑦)) |
| 40 | 36, 39 | bitr3id 287 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝑦 = (𝐹‘𝑥) ↔ 𝑥𝐹𝑦)) |
| 41 | 35, 40 | bitr3d 283 |
. . . . . . 7
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝑦 = 𝐵 ↔ 𝑥𝐹𝑦)) |
| 42 | 41 | pm5.32da 586 |
. . . . . 6
⊢ (𝜑 → ((𝑥 ∈ 𝐴 ∧ 𝑦 = 𝐵) ↔ (𝑥 ∈ 𝐴 ∧ 𝑥𝐹𝑦))) |
| 43 | 29, 42, 28 | 3bitr4rd 314 |
. . . . 5
⊢ (𝜑 → (𝑥𝐹𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝑦 = 𝐵))) |
| 44 | 13, 43 | mobid 2567 |
. . . 4
⊢ (𝜑 → (∃*𝑥 𝑥𝐹𝑦 ↔ ∃*𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = 𝐵))) |
| 45 | | df-rmo 3357 |
. . . 4
⊢
(∃*𝑥 ∈
𝐴 𝑦 = 𝐵 ↔ ∃*𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = 𝐵)) |
| 46 | 44, 45 | bitr4di 291 |
. . 3
⊢ (𝜑 → (∃*𝑥 𝑥𝐹𝑦 ↔ ∃*𝑥 ∈ 𝐴 𝑦 = 𝐵)) |
| 47 | 46 | albidv 1930 |
. 2
⊢ (𝜑 → (∀𝑦∃*𝑥 𝑥𝐹𝑦 ↔ ∀𝑦∃*𝑥 ∈ 𝐴 𝑦 = 𝐵)) |
| 48 | 12, 47 | bitrid 285 |
1
⊢ (𝜑 → (Fun ◡𝐹 ↔ ∀𝑦∃*𝑥 ∈ 𝐴 𝑦 = 𝐵)) |