Proof of Theorem mosubopt
| Step | Hyp | Ref
| Expression |
| 1 | | nfa1 2152 |
. . 3
⊢
Ⅎ𝑦∀𝑦∀𝑧∃*𝑥𝜑 |
| 2 | | nfe1 2151 |
. . . 4
⊢
Ⅎ𝑦∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) |
| 3 | 2 | nfmov 2560 |
. . 3
⊢
Ⅎ𝑦∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) |
| 4 | | nfa1 2152 |
. . . . 5
⊢
Ⅎ𝑧∀𝑧∃*𝑥𝜑 |
| 5 | | nfe1 2151 |
. . . . . . 7
⊢
Ⅎ𝑧∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) |
| 6 | 5 | nfex 2325 |
. . . . . 6
⊢
Ⅎ𝑧∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) |
| 7 | 6 | nfmov 2560 |
. . . . 5
⊢
Ⅎ𝑧∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) |
| 8 | | copsexgw 5470 |
. . . . . . . 8
⊢ (𝐴 = 〈𝑦, 𝑧〉 → (𝜑 ↔ ∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 9 | 8 | mobidv 2549 |
. . . . . . 7
⊢ (𝐴 = 〈𝑦, 𝑧〉 → (∃*𝑥𝜑 ↔ ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 10 | 9 | biimpcd 249 |
. . . . . 6
⊢
(∃*𝑥𝜑 → (𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 11 | 10 | sps 2186 |
. . . . 5
⊢
(∀𝑧∃*𝑥𝜑 → (𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 12 | 4, 7, 11 | exlimd 2219 |
. . . 4
⊢
(∀𝑧∃*𝑥𝜑 → (∃𝑧 𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 13 | 12 | sps 2186 |
. . 3
⊢
(∀𝑦∀𝑧∃*𝑥𝜑 → (∃𝑧 𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 14 | 1, 3, 13 | exlimd 2219 |
. 2
⊢
(∀𝑦∀𝑧∃*𝑥𝜑 → (∃𝑦∃𝑧 𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑))) |
| 15 | | simpl 482 |
. . . . 5
⊢ ((𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) → 𝐴 = 〈𝑦, 𝑧〉) |
| 16 | 15 | 2eximi 1836 |
. . . 4
⊢
(∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) → ∃𝑦∃𝑧 𝐴 = 〈𝑦, 𝑧〉) |
| 17 | 16 | exlimiv 1930 |
. . 3
⊢
(∃𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) → ∃𝑦∃𝑧 𝐴 = 〈𝑦, 𝑧〉) |
| 18 | | nexmo 2541 |
. . 3
⊢ (¬
∃𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑) → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑)) |
| 19 | 17, 18 | nsyl5 159 |
. 2
⊢ (¬
∃𝑦∃𝑧 𝐴 = 〈𝑦, 𝑧〉 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑)) |
| 20 | 14, 19 | pm2.61d1 180 |
1
⊢
(∀𝑦∀𝑧∃*𝑥𝜑 → ∃*𝑥∃𝑦∃𝑧(𝐴 = 〈𝑦, 𝑧〉 ∧ 𝜑)) |