Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  2reu1 Structured version   Visualization version   GIF version

Theorem 2reu1 39835
Description: Double restricted existential uniqueness. This theorem shows a condition under which a "naive" definition matches the correct one, analogous to 2eu1 2541. (Contributed by Alexander van der Vekens, 25-Jun-2017.)
Assertion
Ref Expression
2reu1 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ↔ (∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑)))
Distinct variable groups:   𝑥,𝑦,𝐴   𝑥,𝐵
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝐵(𝑦)

Proof of Theorem 2reu1
StepHypRef Expression
1 2reu5a 39826 . . . . . . 7 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ↔ (∃𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑) ∧ ∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑)))
21simprbi 479 . . . . . 6 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → ∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑))
3 simprr 792 . . . . . . . . . . . 12 ((𝑥𝐴 ∧ (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑)) → ∃𝑦𝐵 𝜑)
4 rsp 2913 . . . . . . . . . . . . . 14 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (𝑥𝐴 → ∃*𝑦𝐵 𝜑))
54adantr 480 . . . . . . . . . . . . 13 ((∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑) → (𝑥𝐴 → ∃*𝑦𝐵 𝜑))
65impcom 445 . . . . . . . . . . . 12 ((𝑥𝐴 ∧ (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑)) → ∃*𝑦𝐵 𝜑)
73, 6jca 553 . . . . . . . . . . 11 ((𝑥𝐴 ∧ (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑)) → (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑))
87ex 449 . . . . . . . . . 10 (𝑥𝐴 → ((∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑) → (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑)))
98rmoimia 3375 . . . . . . . . 9 (∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑) → ∃*𝑥𝐴 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑))
10 nfra1 2925 . . . . . . . . . 10 𝑥𝑥𝐴 ∃*𝑦𝐵 𝜑
1110rmoanim 39828 . . . . . . . . 9 (∃*𝑥𝐴 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 ∧ ∃𝑦𝐵 𝜑) ↔ (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → ∃*𝑥𝐴𝑦𝐵 𝜑))
129, 11sylib 207 . . . . . . . 8 (∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑) → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → ∃*𝑥𝐴𝑦𝐵 𝜑))
1312ancrd 575 . . . . . . 7 (∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑) → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∀𝑥𝐴 ∃*𝑦𝐵 𝜑)))
14 2rmoswap 39833 . . . . . . . . 9 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃*𝑥𝐴𝑦𝐵 𝜑 → ∃*𝑦𝐵𝑥𝐴 𝜑))
1514com12 32 . . . . . . . 8 (∃*𝑥𝐴𝑦𝐵 𝜑 → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → ∃*𝑦𝐵𝑥𝐴 𝜑))
1615imdistani 722 . . . . . . 7 ((∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∀𝑥𝐴 ∃*𝑦𝐵 𝜑) → (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑))
1713, 16syl6 34 . . . . . 6 (∃*𝑥𝐴 (∃𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵 𝜑) → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)))
182, 17syl 17 . . . . 5 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)))
19 2reu2rex 39832 . . . . . 6 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → ∃𝑥𝐴𝑦𝐵 𝜑)
20 rexcom 3080 . . . . . . 7 (∃𝑥𝐴𝑦𝐵 𝜑 ↔ ∃𝑦𝐵𝑥𝐴 𝜑)
2119, 20sylib 207 . . . . . 6 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → ∃𝑦𝐵𝑥𝐴 𝜑)
2219, 21jca 553 . . . . 5 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → (∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑦𝐵𝑥𝐴 𝜑))
2318, 22jctild 564 . . . 4 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → ((∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑦𝐵𝑥𝐴 𝜑) ∧ (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑))))
24 reu5 3136 . . . . . 6 (∃!𝑥𝐴𝑦𝐵 𝜑 ↔ (∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑥𝐴𝑦𝐵 𝜑))
25 reu5 3136 . . . . . 6 (∃!𝑦𝐵𝑥𝐴 𝜑 ↔ (∃𝑦𝐵𝑥𝐴 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑))
2624, 25anbi12i 729 . . . . 5 ((∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑) ↔ ((∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑥𝐴𝑦𝐵 𝜑) ∧ (∃𝑦𝐵𝑥𝐴 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)))
27 an4 861 . . . . 5 (((∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑥𝐴𝑦𝐵 𝜑) ∧ (∃𝑦𝐵𝑥𝐴 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)) ↔ ((∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑦𝐵𝑥𝐴 𝜑) ∧ (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)))
2826, 27bitri 263 . . . 4 ((∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑) ↔ ((∃𝑥𝐴𝑦𝐵 𝜑 ∧ ∃𝑦𝐵𝑥𝐴 𝜑) ∧ (∃*𝑥𝐴𝑦𝐵 𝜑 ∧ ∃*𝑦𝐵𝑥𝐴 𝜑)))
2923, 28syl6ibr 241 . . 3 (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑)))
3029com12 32 . 2 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 → (∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑)))
31 2rexreu 39834 . 2 ((∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑) → ∃!𝑥𝐴 ∃!𝑦𝐵 𝜑)
3230, 31impbid1 214 1 (∀𝑥𝐴 ∃*𝑦𝐵 𝜑 → (∃!𝑥𝐴 ∃!𝑦𝐵 𝜑 ↔ (∃!𝑥𝐴𝑦𝐵 𝜑 ∧ ∃!𝑦𝐵𝑥𝐴 𝜑)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383  wcel 1977  wral 2896  wrex 2897  ∃!wreu 2898  ∃*wrmo 2899
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904
This theorem is referenced by:  2reu2  39836  2reu3  39837
  Copyright terms: Public domain W3C validator