Metamath Proof Explorer


Theorem eujustALT

Description: Alternate proof of eujust illustrating the use of dvelim . (Contributed by NM, 11-Mar-2010) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion eujustALT ( ∃ 𝑦𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∃ 𝑧𝑥 ( 𝜑𝑥 = 𝑧 ) )

Proof

Step Hyp Ref Expression
1 equequ2 ( 𝑦 = 𝑧 → ( 𝑥 = 𝑦𝑥 = 𝑧 ) )
2 1 bibi2d ( 𝑦 = 𝑧 → ( ( 𝜑𝑥 = 𝑦 ) ↔ ( 𝜑𝑥 = 𝑧 ) ) )
3 2 albidv ( 𝑦 = 𝑧 → ( ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
4 3 sps ( ∀ 𝑦 𝑦 = 𝑧 → ( ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
5 4 drex1 ( ∀ 𝑦 𝑦 = 𝑧 → ( ∃ 𝑦𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∃ 𝑧𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
6 hbnae ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ∀ 𝑦 ¬ ∀ 𝑦 𝑦 = 𝑧 )
7 hbnae ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ∀ 𝑧 ¬ ∀ 𝑦 𝑦 = 𝑧 )
8 6 7 alrimih ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ∀ 𝑦𝑧 ¬ ∀ 𝑦 𝑦 = 𝑧 )
9 ax-5 ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) → ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) )
10 equequ2 ( 𝑤 = 𝑦 → ( 𝑥 = 𝑤𝑥 = 𝑦 ) )
11 10 bibi2d ( 𝑤 = 𝑦 → ( ( 𝜑𝑥 = 𝑤 ) ↔ ( 𝜑𝑥 = 𝑦 ) ) )
12 11 albidv ( 𝑤 = 𝑦 → ( ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) ↔ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ) )
13 12 notbid ( 𝑤 = 𝑦 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) ↔ ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ) )
14 9 13 dvelim ( ¬ ∀ 𝑧 𝑧 = 𝑦 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) → ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ) )
15 14 naecoms ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) → ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ) )
16 ax-5 ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) → ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) )
17 equequ2 ( 𝑤 = 𝑧 → ( 𝑥 = 𝑤𝑥 = 𝑧 ) )
18 17 bibi2d ( 𝑤 = 𝑧 → ( ( 𝜑𝑥 = 𝑤 ) ↔ ( 𝜑𝑥 = 𝑧 ) ) )
19 18 albidv ( 𝑤 = 𝑧 → ( ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) ↔ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
20 19 notbid ( 𝑤 = 𝑧 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑤 ) ↔ ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
21 16 20 dvelim ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) → ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
22 3 notbid ( 𝑦 = 𝑧 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
23 22 a1i ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( 𝑦 = 𝑧 → ( ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) ) )
24 15 21 23 cbv2h ( ∀ 𝑦𝑧 ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
25 8 24 syl ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
26 25 notbid ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ¬ ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ¬ ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
27 df-ex ( ∃ 𝑦𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ¬ ∀ 𝑦 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑦 ) )
28 df-ex ( ∃ 𝑧𝑥 ( 𝜑𝑥 = 𝑧 ) ↔ ¬ ∀ 𝑧 ¬ ∀ 𝑥 ( 𝜑𝑥 = 𝑧 ) )
29 26 27 28 3bitr4g ( ¬ ∀ 𝑦 𝑦 = 𝑧 → ( ∃ 𝑦𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∃ 𝑧𝑥 ( 𝜑𝑥 = 𝑧 ) ) )
30 5 29 pm2.61i ( ∃ 𝑦𝑥 ( 𝜑𝑥 = 𝑦 ) ↔ ∃ 𝑧𝑥 ( 𝜑𝑥 = 𝑧 ) )