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

Theorem eu1 2695
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 2391. (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 2160 . . 3 𝑥[𝑦 / 𝑥]𝜑
21euf 2660 . 2 (∃!𝑦[𝑦 / 𝑥]𝜑 ↔ ∃𝑥𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
3 eu1.nf . . 3 𝑦𝜑
43sb8euv 2684 . 2 (∃!𝑥𝜑 ↔ ∃!𝑦[𝑦 / 𝑥]𝜑)
53sb6rfv 2377 . . . . 5 (𝜑 ↔ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑))
6 equcom 2025 . . . . . . 7 (𝑥 = 𝑦𝑦 = 𝑥)
76imbi2i 339 . . . . . 6 (([𝑦 / 𝑥]𝜑𝑥 = 𝑦) ↔ ([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
87albii 1821 . . . . 5 (∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦) ↔ ∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
95, 8anbi12ci 630 . . . 4 ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ∧ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑)))
10 albiim 1890 . . . 4 (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ↔ (∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥) ∧ ∀𝑦(𝑦 = 𝑥 → [𝑦 / 𝑥]𝜑)))
119, 10bitr4i 281 . . 3 ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ ∀𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
1211exbii 1849 . 2 (∃𝑥(𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)) ↔ ∃𝑥𝑦([𝑦 / 𝑥]𝜑𝑦 = 𝑥))
132, 4, 123bitr4i 306 1 (∃!𝑥𝜑 ↔ ∃𝑥(𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑𝑥 = 𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  wal 1536  wex 1781  wnf 1785  [wsb 2069  ∃!weu 2652
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 1911  ax-6 1970  ax-7 2015  ax-10 2145  ax-11 2161  ax-12 2178
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2622  df-eu 2653
This theorem is referenced by:  kmlem15  9579
  Copyright terms: Public domain W3C validator