| Step |
Hyp |
Ref |
Expression |
| 1 |
|
nfa1 |
⊢ Ⅎ 𝑥 ∀ 𝑥 Ⅎ 𝑦 𝜑 |
| 2 |
|
nfmo1 |
⊢ Ⅎ 𝑥 ∃* 𝑥 𝜑 |
| 3 |
|
nfnf1 |
⊢ Ⅎ 𝑦 Ⅎ 𝑦 𝜑 |
| 4 |
3
|
nfal |
⊢ Ⅎ 𝑦 ∀ 𝑥 Ⅎ 𝑦 𝜑 |
| 5 |
|
sp |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → Ⅎ 𝑦 𝜑 ) |
| 6 |
1 5
|
nfmodv |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → Ⅎ 𝑦 ∃* 𝑥 𝜑 ) |
| 7 |
4 6
|
nfan1 |
⊢ Ⅎ 𝑦 ( ∀ 𝑥 Ⅎ 𝑦 𝜑 ∧ ∃* 𝑥 𝜑 ) |
| 8 |
|
df-mo |
⊢ ( ∃* 𝑥 𝜑 ↔ ∃ 𝑢 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) ) |
| 9 |
|
sp |
⊢ ( ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( 𝜑 → 𝑥 = 𝑢 ) ) |
| 10 |
|
spsbim |
⊢ ( ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( [ 𝑦 / 𝑥 ] 𝜑 → [ 𝑦 / 𝑥 ] 𝑥 = 𝑢 ) ) |
| 11 |
|
equsb3 |
⊢ ( [ 𝑦 / 𝑥 ] 𝑥 = 𝑢 ↔ 𝑦 = 𝑢 ) |
| 12 |
10 11
|
imbitrdi |
⊢ ( ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( [ 𝑦 / 𝑥 ] 𝜑 → 𝑦 = 𝑢 ) ) |
| 13 |
9 12
|
anim12d |
⊢ ( ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → ( 𝑥 = 𝑢 ∧ 𝑦 = 𝑢 ) ) ) |
| 14 |
|
equtr2 |
⊢ ( ( 𝑥 = 𝑢 ∧ 𝑦 = 𝑢 ) → 𝑥 = 𝑦 ) |
| 15 |
13 14
|
syl6 |
⊢ ( ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) |
| 16 |
15
|
exlimiv |
⊢ ( ∃ 𝑢 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑢 ) → ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) |
| 17 |
8 16
|
sylbi |
⊢ ( ∃* 𝑥 𝜑 → ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) |
| 18 |
17
|
adantl |
⊢ ( ( ∀ 𝑥 Ⅎ 𝑦 𝜑 ∧ ∃* 𝑥 𝜑 ) → ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) |
| 19 |
7 18
|
alrimi |
⊢ ( ( ∀ 𝑥 Ⅎ 𝑦 𝜑 ∧ ∃* 𝑥 𝜑 ) → ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) |
| 20 |
19
|
ex |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃* 𝑥 𝜑 → ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) ) |
| 21 |
1 2 20
|
alrimd |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃* 𝑥 𝜑 → ∀ 𝑥 ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) ) |
| 22 |
|
nfa1 |
⊢ Ⅎ 𝑥 ∀ 𝑥 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) |
| 23 |
|
nfs1v |
⊢ Ⅎ 𝑥 [ 𝑦 / 𝑥 ] 𝜑 |
| 24 |
|
pm3.3 |
⊢ ( ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( 𝜑 → ( [ 𝑦 / 𝑥 ] 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 25 |
24
|
com23 |
⊢ ( ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( [ 𝑦 / 𝑥 ] 𝜑 → ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 26 |
25
|
sps |
⊢ ( ∀ 𝑥 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( [ 𝑦 / 𝑥 ] 𝜑 → ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 27 |
22 23 26
|
alrimd |
⊢ ( ∀ 𝑥 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( [ 𝑦 / 𝑥 ] 𝜑 → ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 28 |
27
|
aleximi |
⊢ ( ∀ 𝑦 ∀ 𝑥 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( ∃ 𝑦 [ 𝑦 / 𝑥 ] 𝜑 → ∃ 𝑦 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 29 |
28
|
alcoms |
⊢ ( ∀ 𝑥 ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ( ∃ 𝑦 [ 𝑦 / 𝑥 ] 𝜑 → ∃ 𝑦 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 30 |
|
moabs |
⊢ ( ∃* 𝑥 𝜑 ↔ ( ∃ 𝑥 𝜑 → ∃* 𝑥 𝜑 ) ) |
| 31 |
|
wl-sb8eft |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃ 𝑥 𝜑 ↔ ∃ 𝑦 [ 𝑦 / 𝑥 ] 𝜑 ) ) |
| 32 |
|
wl-mo2t |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃* 𝑥 𝜑 ↔ ∃ 𝑦 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) |
| 33 |
31 32
|
imbi12d |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ( ∃ 𝑥 𝜑 → ∃* 𝑥 𝜑 ) ↔ ( ∃ 𝑦 [ 𝑦 / 𝑥 ] 𝜑 → ∃ 𝑦 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) ) |
| 34 |
30 33
|
bitrid |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃* 𝑥 𝜑 ↔ ( ∃ 𝑦 [ 𝑦 / 𝑥 ] 𝜑 → ∃ 𝑦 ∀ 𝑥 ( 𝜑 → 𝑥 = 𝑦 ) ) ) ) |
| 35 |
29 34
|
imbitrrid |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∀ 𝑥 ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) → ∃* 𝑥 𝜑 ) ) |
| 36 |
21 35
|
impbid |
⊢ ( ∀ 𝑥 Ⅎ 𝑦 𝜑 → ( ∃* 𝑥 𝜑 ↔ ∀ 𝑥 ∀ 𝑦 ( ( 𝜑 ∧ [ 𝑦 / 𝑥 ] 𝜑 ) → 𝑥 = 𝑦 ) ) ) |