MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  euotd Structured version   Visualization version   GIF version

Theorem euotd 5390
Description: Prove existential uniqueness for an ordered triple. (Contributed by Mario Carneiro, 20-May-2015.)
Hypotheses
Ref Expression
euotd.1 (𝜑𝐴 ∈ V)
euotd.2 (𝜑𝐵 ∈ V)
euotd.3 (𝜑𝐶 ∈ V)
euotd.4 (𝜑 → (𝜓 ↔ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)))
Assertion
Ref Expression
euotd (𝜑 → ∃!𝑥𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
Distinct variable groups:   𝑎,𝑏,𝑐,𝑥,𝐴   𝐵,𝑎,𝑏,𝑐,𝑥   𝐶,𝑎,𝑏,𝑐,𝑥   𝜑,𝑎,𝑏,𝑐,𝑥
Allowed substitution hints:   𝜓(𝑥,𝑎,𝑏,𝑐)

Proof of Theorem euotd
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 euotd.4 . . . . . . . . . . . . 13 (𝜑 → (𝜓 ↔ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)))
21biimpa 480 . . . . . . . . . . . 12 ((𝜑𝜓) → (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶))
3 vex 3483 . . . . . . . . . . . . 13 𝑎 ∈ V
4 vex 3483 . . . . . . . . . . . . 13 𝑏 ∈ V
5 vex 3483 . . . . . . . . . . . . 13 𝑐 ∈ V
63, 4, 5otth 5363 . . . . . . . . . . . 12 (⟨𝑎, 𝑏, 𝑐⟩ = ⟨𝐴, 𝐵, 𝐶⟩ ↔ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶))
72, 6sylibr 237 . . . . . . . . . . 11 ((𝜑𝜓) → ⟨𝑎, 𝑏, 𝑐⟩ = ⟨𝐴, 𝐵, 𝐶⟩)
87eqeq2d 2835 . . . . . . . . . 10 ((𝜑𝜓) → (𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
98biimpd 232 . . . . . . . . 9 ((𝜑𝜓) → (𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ → 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
109impancom 455 . . . . . . . 8 ((𝜑𝑥 = ⟨𝑎, 𝑏, 𝑐⟩) → (𝜓𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
1110expimpd 457 . . . . . . 7 (𝜑 → ((𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) → 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
1211exlimdv 1935 . . . . . 6 (𝜑 → (∃𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) → 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
1312exlimdvv 1936 . . . . 5 (𝜑 → (∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) → 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
14 euotd.3 . . . . . . . 8 (𝜑𝐶 ∈ V)
15 euotd.2 . . . . . . . . 9 (𝜑𝐵 ∈ V)
16 tru 1542 . . . . . . . . . . 11
17 euotd.1 . . . . . . . . . . . 12 (𝜑𝐴 ∈ V)
1815adantr 484 . . . . . . . . . . . . 13 ((𝜑𝑎 = 𝐴) → 𝐵 ∈ V)
1914ad2antrr 725 . . . . . . . . . . . . . 14 (((𝜑𝑎 = 𝐴) ∧ 𝑏 = 𝐵) → 𝐶 ∈ V)
20 simpr 488 . . . . . . . . . . . . . . . . . . 19 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶))
2120, 6sylibr 237 . . . . . . . . . . . . . . . . . 18 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → ⟨𝑎, 𝑏, 𝑐⟩ = ⟨𝐴, 𝐵, 𝐶⟩)
2221eqcomd 2830 . . . . . . . . . . . . . . . . 17 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → ⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩)
231biimpar 481 . . . . . . . . . . . . . . . . 17 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → 𝜓)
2422, 23jca 515 . . . . . . . . . . . . . . . 16 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → (⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
25 trud 1548 . . . . . . . . . . . . . . . 16 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → ⊤)
2624, 252thd 268 . . . . . . . . . . . . . . 15 ((𝜑 ∧ (𝑎 = 𝐴𝑏 = 𝐵𝑐 = 𝐶)) → ((⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ⊤))
27263anassrs 1357 . . . . . . . . . . . . . 14 ((((𝜑𝑎 = 𝐴) ∧ 𝑏 = 𝐵) ∧ 𝑐 = 𝐶) → ((⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ⊤))
2819, 27sbcied 3800 . . . . . . . . . . . . 13 (((𝜑𝑎 = 𝐴) ∧ 𝑏 = 𝐵) → ([𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ⊤))
2918, 28sbcied 3800 . . . . . . . . . . . 12 ((𝜑𝑎 = 𝐴) → ([𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ⊤))
3017, 29sbcied 3800 . . . . . . . . . . 11 (𝜑 → ([𝐴 / 𝑎][𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ⊤))
3116, 30mpbiri 261 . . . . . . . . . 10 (𝜑[𝐴 / 𝑎][𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
3231spesbcd 3850 . . . . . . . . 9 (𝜑 → ∃𝑎[𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
33 nfcv 2982 . . . . . . . . . 10 𝑏𝐵
34 nfsbc1v 3778 . . . . . . . . . . 11 𝑏[𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)
3534nfex 2345 . . . . . . . . . 10 𝑏𝑎[𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)
36 sbceq1a 3769 . . . . . . . . . . 11 (𝑏 = 𝐵 → ([𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ [𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
3736exbidv 1923 . . . . . . . . . 10 (𝑏 = 𝐵 → (∃𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ∃𝑎[𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
3833, 35, 37spcegf 3577 . . . . . . . . 9 (𝐵 ∈ V → (∃𝑎[𝐵 / 𝑏][𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) → ∃𝑏𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
3915, 32, 38sylc 65 . . . . . . . 8 (𝜑 → ∃𝑏𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
40 nfcv 2982 . . . . . . . . 9 𝑐𝐶
41 nfsbc1v 3778 . . . . . . . . . . 11 𝑐[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)
4241nfex 2345 . . . . . . . . . 10 𝑐𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)
4342nfex 2345 . . . . . . . . 9 𝑐𝑏𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)
44 sbceq1a 3769 . . . . . . . . . 10 (𝑐 = 𝐶 → ((⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ [𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
45442exbidv 1926 . . . . . . . . 9 (𝑐 = 𝐶 → (∃𝑏𝑎(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ∃𝑏𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
4640, 43, 45spcegf 3577 . . . . . . . 8 (𝐶 ∈ V → (∃𝑏𝑎[𝐶 / 𝑐](⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) → ∃𝑐𝑏𝑎(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
4714, 39, 46sylc 65 . . . . . . 7 (𝜑 → ∃𝑐𝑏𝑎(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
48 excom13 2172 . . . . . . 7 (∃𝑐𝑏𝑎(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ∃𝑎𝑏𝑐(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
4947, 48sylib 221 . . . . . 6 (𝜑 → ∃𝑎𝑏𝑐(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
50 eqeq1 2828 . . . . . . . 8 (𝑥 = ⟨𝐴, 𝐵, 𝐶⟩ → (𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ↔ ⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩))
5150anbi1d 632 . . . . . . 7 (𝑥 = ⟨𝐴, 𝐵, 𝐶⟩ → ((𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ (⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
52513exbidv 1927 . . . . . 6 (𝑥 = ⟨𝐴, 𝐵, 𝐶⟩ → (∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ∃𝑎𝑏𝑐(⟨𝐴, 𝐵, 𝐶⟩ = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
5349, 52syl5ibrcom 250 . . . . 5 (𝜑 → (𝑥 = ⟨𝐴, 𝐵, 𝐶⟩ → ∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓)))
5413, 53impbid 215 . . . 4 (𝜑 → (∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
5554alrimiv 1929 . . 3 (𝜑 → ∀𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
56 otex 5344 . . . 4 𝐴, 𝐵, 𝐶⟩ ∈ V
57 eqeq2 2836 . . . . . 6 (𝑦 = ⟨𝐴, 𝐵, 𝐶⟩ → (𝑥 = 𝑦𝑥 = ⟨𝐴, 𝐵, 𝐶⟩))
5857bibi2d 346 . . . . 5 (𝑦 = ⟨𝐴, 𝐵, 𝐶⟩ → ((∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = 𝑦) ↔ (∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩)))
5958albidv 1922 . . . 4 (𝑦 = ⟨𝐴, 𝐵, 𝐶⟩ → (∀𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = 𝑦) ↔ ∀𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩)))
6056, 59spcev 3593 . . 3 (∀𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = ⟨𝐴, 𝐵, 𝐶⟩) → ∃𝑦𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = 𝑦))
6155, 60syl 17 . 2 (𝜑 → ∃𝑦𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = 𝑦))
62 eu6 2660 . 2 (∃!𝑥𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ ∃𝑦𝑥(∃𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓) ↔ 𝑥 = 𝑦))
6361, 62sylibr 237 1 (𝜑 → ∃!𝑥𝑎𝑏𝑐(𝑥 = ⟨𝑎, 𝑏, 𝑐⟩ ∧ 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  w3a 1084  wal 1536   = wceq 1538  wtru 1539  wex 1781  wcel 2115  ∃!weu 2654  Vcvv 3480  [wsbc 3758  cotp 4558
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1971  ax-7 2016  ax-8 2117  ax-9 2125  ax-10 2146  ax-11 2162  ax-12 2179  ax-ext 2796  ax-sep 5189  ax-nul 5196  ax-pr 5317
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2071  df-mo 2624  df-eu 2655  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2964  df-ral 3138  df-rex 3139  df-v 3482  df-sbc 3759  df-dif 3922  df-un 3924  df-in 3926  df-ss 3936  df-nul 4277  df-if 4451  df-sn 4551  df-pr 4553  df-op 4557  df-ot 4559
This theorem is referenced by:  oeeu  8225
  Copyright terms: Public domain W3C validator