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

Theorem eu1 2638
Description: An alternate way to express uniqueness used by some authors. Exercise 2(b) of [Margaris] p. 110. (Contributed by NM, 20-Aug-1993.) (Revised by Mario Carneiro, 7-Oct-2016.) (Proof shortened by Wolf Lammen, 29-Oct-2018.) Avoid ax-13 2404. (Revised by Wolf Lammen, 7-Feb-2023.)
Hypothesis
Ref Expression
eu1.nf 𝑦𝜑
Assertion
Ref Expression
eu1 (∃!𝑥𝜑 ↔ ∃𝑥(𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)))
Distinct variable group:   𝑥,𝑦
Allowed substitution hints:   𝜑(𝑥,𝑦)

Proof of Theorem eu1
StepHypRef Expression
1 nfs1v 2191 . . 3 𝑥[𝑦 / 𝑥]𝜑
21euf 2604 . 2 (∃!𝑦[𝑦 / 𝑥]𝜑 ↔ ∃𝑥𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
3 eu1.nf . . 3 𝑦𝜑
43sb8euv 2627 . 2 (∃!𝑥𝜑 ↔ ∃!𝑦[𝑦 / 𝑥]𝜑)
53sb6rfv 2389 . . . . 5 (𝜑 ↔ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑))
6 equcom 2048 . . . . . . 7 (𝑥 = 𝑦𝑦 = 𝑥)
76imbi2i 339 . . . . . 6 (([𝑦 / 𝑥]𝜑𝑥 = 𝑦) ↔ ([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
87albii 1849 . . . . 5 (∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦) ↔ ∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
95, 8anbi12ci 640 . . . 4 ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ∧ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑)))
10 albiim 1919 . . . 4 (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ↔ (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ∧ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑)))
119, 10bitr4i 281 . . 3 ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ ∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
1211exbii 1878 . 2 (∃𝑥(𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ ∃𝑥𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
132, 4, 123bitr4i 306 1 (∃!𝑥𝜑 ↔ ∃𝑥(𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400  wal 1568  wex 1809  wnf 1813  [wsb 2096  ∃!weu 2596
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-10 2176  ax-11 2192  ax-12 2213
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-tru 1573  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597
This theorem is referenced by:  kmlem15  10144
  Copyright terms: Public domain W3C validator