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

Theorem mo3 2648
Description: Alternate definition of the at-most-one quantifier. Definition of [BellMachover] p. 460, except that definition has the side condition that 𝑦 not occur in 𝜑 in place of our hypothesis. (Contributed by NM, 8-Mar-1995.) (Proof shortened by Wolf Lammen, 18-Aug-2019.) Remove dependency on ax-13 2390. (Revised by BJ and WL, 29-Jan-2023.)
Hypothesis
Ref Expression
mo3.nf 𝑦𝜑
Assertion
Ref Expression
mo3 (∃*𝑥𝜑 ↔ ∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
Distinct variable group:   𝑥,𝑦
Allowed substitution hints:   𝜑(𝑥,𝑦)

Proof of Theorem mo3
Dummy variable 𝑧 is distinct from all other variables.
StepHypRef Expression
1 nfmo1 2641 . . 3 𝑥∃*𝑥𝜑
2 mo3.nf . . . . 5 𝑦𝜑
32nfmov 2644 . . . 4 𝑦∃*𝑥𝜑
4 df-mo 2622 . . . . 5 (∃*𝑥𝜑 ↔ ∃𝑧𝑥(𝜑𝑥 = 𝑧))
5 sp 2182 . . . . . . . 8 (∀𝑥(𝜑𝑥 = 𝑧) → (𝜑𝑥 = 𝑧))
6 spsbim 2077 . . . . . . . . 9 (∀𝑥(𝜑𝑥 = 𝑧) → ([𝑦 / 𝑥]𝜑 → [𝑦 / 𝑥]𝑥 = 𝑧))
7 equsb3 2109 . . . . . . . . 9 ([𝑦 / 𝑥]𝑥 = 𝑧𝑦 = 𝑧)
86, 7syl6ib 253 . . . . . . . 8 (∀𝑥(𝜑𝑥 = 𝑧) → ([𝑦 / 𝑥]𝜑𝑦 = 𝑧))
95, 8anim12d 610 . . . . . . 7 (∀𝑥(𝜑𝑥 = 𝑧) → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → (𝑥 = 𝑧𝑦 = 𝑧)))
10 equtr2 2034 . . . . . . 7 ((𝑥 = 𝑧𝑦 = 𝑧) → 𝑥 = 𝑦)
119, 10syl6 35 . . . . . 6 (∀𝑥(𝜑𝑥 = 𝑧) → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
1211exlimiv 1931 . . . . 5 (∃𝑧𝑥(𝜑𝑥 = 𝑧) → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
134, 12sylbi 219 . . . 4 (∃*𝑥𝜑 → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
143, 13alrimi 2213 . . 3 (∃*𝑥𝜑 → ∀𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
151, 14alrimi 2213 . 2 (∃*𝑥𝜑 → ∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
16 nfs1v 2160 . . . . . . . 8 𝑥[𝑦 / 𝑥]𝜑
17 pm3.21 474 . . . . . . . . 9 ([𝑦 / 𝑥]𝜑 → (𝜑 → (𝜑 ∧ [𝑦 / 𝑥]𝜑)))
1817imim1d 82 . . . . . . . 8 ([𝑦 / 𝑥]𝜑 → (((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → (𝜑𝑥 = 𝑦)))
1916, 18alimd 2212 . . . . . . 7 ([𝑦 / 𝑥]𝜑 → (∀𝑥((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ∀𝑥(𝜑𝑥 = 𝑦)))
2019com12 32 . . . . . 6 (∀𝑥((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ([𝑦 / 𝑥]𝜑 → ∀𝑥(𝜑𝑥 = 𝑦)))
2120aleximi 1832 . . . . 5 (∀𝑦𝑥((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → (∃𝑦[𝑦 / 𝑥]𝜑 → ∃𝑦𝑥(𝜑𝑥 = 𝑦)))
222sb8ev 2374 . . . . 5 (∃𝑥𝜑 ↔ ∃𝑦[𝑦 / 𝑥]𝜑)
232mof 2647 . . . . 5 (∃*𝑥𝜑 ↔ ∃𝑦𝑥(𝜑𝑥 = 𝑦))
2421, 22, 233imtr4g 298 . . . 4 (∀𝑦𝑥((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → (∃𝑥𝜑 → ∃*𝑥𝜑))
25 moabs 2625 . . . 4 (∃*𝑥𝜑 ↔ (∃𝑥𝜑 → ∃*𝑥𝜑))
2624, 25sylibr 236 . . 3 (∀𝑦𝑥((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ∃*𝑥𝜑)
2726alcoms 2162 . 2 (∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ∃*𝑥𝜑)
2815, 27impbii 211 1 (∃*𝑥𝜑 ↔ ∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  wal 1535  wex 1780  wnf 1784  [wsb 2069  ∃*wmo 2620
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-10 2145  ax-11 2161  ax-12 2177
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-tru 1540  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622
This theorem is referenced by:  mo  2649  mo4f  2651  eu2  2693  2mo  2733  rmo3f  3727  rmo3  3874  rmo3OLD  3875  isarep2  6445  mo5f  30255  bnj580  32187  pm14.12  40760
  Copyright terms: Public domain W3C validator