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

Theorem 2reu5lem3 3415
Description: Lemma for 2reu5 3416. This lemma is interesting in its own right, showing that existential restriction in the last conjunct (the "at most one" part) is optional; compare rmo2 3526. (Contributed by Alexander van der Vekens, 17-Jun-2017.)
Assertion
Ref Expression
2reu5lem3 ((∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ∧ ∀𝑥𝐴 ∃*𝑦𝐵 𝜑) ↔ (∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑧𝑤𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
Distinct variable groups:   𝑦,𝑤,𝑧,𝐴   𝑥,𝑤,𝐵,𝑧   𝑥,𝑦   𝜑,𝑤,𝑧
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝐴(𝑥)   𝐵(𝑦)

Proof of Theorem 2reu5lem3
StepHypRef Expression
1 2reu5lem1 3413 . . 3 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ↔ ∃!𝑥∃!𝑦(𝑥𝐴𝑦𝐵𝜑))
2 2reu5lem2 3414 . . 3 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ↔ ∀𝑥∃*𝑦(𝑥𝐴𝑦𝐵𝜑))
31, 2anbi12i 733 . 2 ((∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ∧ ∀𝑥𝐴 ∃*𝑦𝐵 𝜑) ↔ (∃!𝑥∃!𝑦(𝑥𝐴𝑦𝐵𝜑) ∧ ∀𝑥∃*𝑦(𝑥𝐴𝑦𝐵𝜑)))
4 2eu5 2557 . 2 ((∃!𝑥∃!𝑦(𝑥𝐴𝑦𝐵𝜑) ∧ ∀𝑥∃*𝑦(𝑥𝐴𝑦𝐵𝜑)) ↔ (∃𝑥𝑦(𝑥𝐴𝑦𝐵𝜑) ∧ ∃𝑧𝑤𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤))))
5 3anass 1042 . . . . . . 7 ((𝑥𝐴𝑦𝐵𝜑) ↔ (𝑥𝐴 ∧ (𝑦𝐵𝜑)))
65exbii 1774 . . . . . 6 (∃𝑦(𝑥𝐴𝑦𝐵𝜑) ↔ ∃𝑦(𝑥𝐴 ∧ (𝑦𝐵𝜑)))
7 19.42v 1918 . . . . . 6 (∃𝑦(𝑥𝐴 ∧ (𝑦𝐵𝜑)) ↔ (𝑥𝐴 ∧ ∃𝑦(𝑦𝐵𝜑)))
8 df-rex 2918 . . . . . . . 8 (∃𝑦𝐵 𝜑 ↔ ∃𝑦(𝑦𝐵𝜑))
98bicomi 214 . . . . . . 7 (∃𝑦(𝑦𝐵𝜑) ↔ ∃𝑦𝐵 𝜑)
109anbi2i 730 . . . . . 6 ((𝑥𝐴 ∧ ∃𝑦(𝑦𝐵𝜑)) ↔ (𝑥𝐴 ∧ ∃𝑦𝐵 𝜑))
116, 7, 103bitri 286 . . . . 5 (∃𝑦(𝑥𝐴𝑦𝐵𝜑) ↔ (𝑥𝐴 ∧ ∃𝑦𝐵 𝜑))
1211exbii 1774 . . . 4 (∃𝑥𝑦(𝑥𝐴𝑦𝐵𝜑) ↔ ∃𝑥(𝑥𝐴 ∧ ∃𝑦𝐵 𝜑))
13 df-rex 2918 . . . 4 (∃𝑥𝐴𝑦𝐵 𝜑 ↔ ∃𝑥(𝑥𝐴 ∧ ∃𝑦𝐵 𝜑))
1412, 13bitr4i 267 . . 3 (∃𝑥𝑦(𝑥𝐴𝑦𝐵𝜑) ↔ ∃𝑥𝐴𝑦𝐵 𝜑)
15 3anan12 1051 . . . . . . . . . . 11 ((𝑥𝐴𝑦𝐵𝜑) ↔ (𝑦𝐵 ∧ (𝑥𝐴𝜑)))
1615imbi1i 339 . . . . . . . . . 10 (((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ((𝑦𝐵 ∧ (𝑥𝐴𝜑)) → (𝑥 = 𝑧𝑦 = 𝑤)))
17 impexp 462 . . . . . . . . . 10 (((𝑦𝐵 ∧ (𝑥𝐴𝜑)) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ (𝑦𝐵 → ((𝑥𝐴𝜑) → (𝑥 = 𝑧𝑦 = 𝑤))))
18 impexp 462 . . . . . . . . . . 11 (((𝑥𝐴𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
1918imbi2i 326 . . . . . . . . . 10 ((𝑦𝐵 → ((𝑥𝐴𝜑) → (𝑥 = 𝑧𝑦 = 𝑤))) ↔ (𝑦𝐵 → (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))))
2016, 17, 193bitri 286 . . . . . . . . 9 (((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ (𝑦𝐵 → (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))))
2120albii 1747 . . . . . . . 8 (∀𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∀𝑦(𝑦𝐵 → (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))))
22 df-ral 2917 . . . . . . . 8 (∀𝑦𝐵 (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))) ↔ ∀𝑦(𝑦𝐵 → (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))))
23 r19.21v 2960 . . . . . . . 8 (∀𝑦𝐵 (𝑥𝐴 → (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))) ↔ (𝑥𝐴 → ∀𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
2421, 22, 233bitr2i 288 . . . . . . 7 (∀𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ (𝑥𝐴 → ∀𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
2524albii 1747 . . . . . 6 (∀𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∀𝑥(𝑥𝐴 → ∀𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
26 df-ral 2917 . . . . . 6 (∀𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∀𝑥(𝑥𝐴 → ∀𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
2725, 26bitr4i 267 . . . . 5 (∀𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∀𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))
2827exbii 1774 . . . 4 (∃𝑤𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∃𝑤𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))
2928exbii 1774 . . 3 (∃𝑧𝑤𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤)) ↔ ∃𝑧𝑤𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤)))
3014, 29anbi12i 733 . 2 ((∃𝑥𝑦(𝑥𝐴𝑦𝐵𝜑) ∧ ∃𝑧𝑤𝑥𝑦((𝑥𝐴𝑦𝐵𝜑) → (𝑥 = 𝑧𝑦 = 𝑤))) ↔ (∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑧𝑤𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
313, 4, 303bitri 286 1 ((∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ∧ ∀𝑥𝐴 ∃*𝑦𝐵 𝜑) ↔ (∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑧𝑤𝑥𝐴𝑦𝐵 (𝜑 → (𝑥 = 𝑧𝑦 = 𝑤))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384  w3a 1037  wal 1481  wex 1704  wcel 1990  ∃!weu 2470  ∃*wmo 2471  wral 2912  wrex 2913  ∃!wreu 2914  ∃*wrmo 2915
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-eu 2474  df-mo 2475  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920
This theorem is referenced by:  2reu5  3416
  Copyright terms: Public domain W3C validator