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

Theorem reuind 3692
 Description: Existential uniqueness via an indirect equality. (Contributed by NM, 16-Oct-2010.)
Hypotheses
Ref Expression
reuind.1 (𝑥 = 𝑦 → (𝜑𝜓))
reuind.2 (𝑥 = 𝑦𝐴 = 𝐵)
Assertion
Ref Expression
reuind ((∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴𝐶𝜑)) → ∃!𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴))
Distinct variable groups:   𝑦,𝑧,𝐴   𝑥,𝑧,𝐵   𝑥,𝑦,𝐶,𝑧   𝜑,𝑦,𝑧   𝜓,𝑥,𝑧
Allowed substitution hints:   𝜑(𝑥)   𝜓(𝑦)   𝐴(𝑥)   𝐵(𝑦)

Proof of Theorem reuind
Dummy variable 𝑤 is distinct from all other variables.
StepHypRef Expression
1 reuind.2 . . . . . . . 8 (𝑥 = 𝑦𝐴 = 𝐵)
21eleq1d 2874 . . . . . . 7 (𝑥 = 𝑦 → (𝐴𝐶𝐵𝐶))
3 reuind.1 . . . . . . 7 (𝑥 = 𝑦 → (𝜑𝜓))
42, 3anbi12d 633 . . . . . 6 (𝑥 = 𝑦 → ((𝐴𝐶𝜑) ↔ (𝐵𝐶𝜓)))
54cbvexvw 2044 . . . . 5 (∃𝑥(𝐴𝐶𝜑) ↔ ∃𝑦(𝐵𝐶𝜓))
6 r19.41v 3300 . . . . . . 7 (∃𝑧𝐶 (𝑧 = 𝐵𝜓) ↔ (∃𝑧𝐶 𝑧 = 𝐵𝜓))
76exbii 1849 . . . . . 6 (∃𝑦𝑧𝐶 (𝑧 = 𝐵𝜓) ↔ ∃𝑦(∃𝑧𝐶 𝑧 = 𝐵𝜓))
8 rexcom4 3212 . . . . . 6 (∃𝑧𝐶𝑦(𝑧 = 𝐵𝜓) ↔ ∃𝑦𝑧𝐶 (𝑧 = 𝐵𝜓))
9 risset 3226 . . . . . . . 8 (𝐵𝐶 ↔ ∃𝑧𝐶 𝑧 = 𝐵)
109anbi1i 626 . . . . . . 7 ((𝐵𝐶𝜓) ↔ (∃𝑧𝐶 𝑧 = 𝐵𝜓))
1110exbii 1849 . . . . . 6 (∃𝑦(𝐵𝐶𝜓) ↔ ∃𝑦(∃𝑧𝐶 𝑧 = 𝐵𝜓))
127, 8, 113bitr4ri 307 . . . . 5 (∃𝑦(𝐵𝐶𝜓) ↔ ∃𝑧𝐶𝑦(𝑧 = 𝐵𝜓))
135, 12bitri 278 . . . 4 (∃𝑥(𝐴𝐶𝜑) ↔ ∃𝑧𝐶𝑦(𝑧 = 𝐵𝜓))
14 eqeq2 2810 . . . . . . . . . 10 (𝐴 = 𝐵 → (𝑧 = 𝐴𝑧 = 𝐵))
1514imim2i 16 . . . . . . . . 9 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → (((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐴𝑧 = 𝐵)))
16 biimpr 223 . . . . . . . . . . 11 ((𝑧 = 𝐴𝑧 = 𝐵) → (𝑧 = 𝐵𝑧 = 𝐴))
1716imim2i 16 . . . . . . . . . 10 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐴𝑧 = 𝐵)) → (((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐵𝑧 = 𝐴)))
18 an31 647 . . . . . . . . . . . 12 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) ∧ 𝑧 = 𝐵) ↔ ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ∧ (𝐴𝐶𝜑)))
1918imbi1i 353 . . . . . . . . . . 11 (((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) ∧ 𝑧 = 𝐵) → 𝑧 = 𝐴) ↔ (((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ∧ (𝐴𝐶𝜑)) → 𝑧 = 𝐴))
20 impexp 454 . . . . . . . . . . 11 (((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) ∧ 𝑧 = 𝐵) → 𝑧 = 𝐴) ↔ (((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐵𝑧 = 𝐴)))
21 impexp 454 . . . . . . . . . . 11 ((((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ∧ (𝐴𝐶𝜑)) → 𝑧 = 𝐴) ↔ ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
2219, 20, 213bitr3i 304 . . . . . . . . . 10 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐵𝑧 = 𝐴)) ↔ ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
2317, 22sylib 221 . . . . . . . . 9 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → (𝑧 = 𝐴𝑧 = 𝐵)) → ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
2415, 23syl 17 . . . . . . . 8 ((((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
25242alimi 1814 . . . . . . 7 (∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → ∀𝑥𝑦((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
26 19.23v 1943 . . . . . . . . . 10 (∀𝑦((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ (∃𝑦(𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
27 an12 644 . . . . . . . . . . . . . 14 ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ↔ (𝐵𝐶 ∧ (𝑧 = 𝐵𝜓)))
28 eleq1 2877 . . . . . . . . . . . . . . . 16 (𝑧 = 𝐵 → (𝑧𝐶𝐵𝐶))
2928adantr 484 . . . . . . . . . . . . . . 15 ((𝑧 = 𝐵𝜓) → (𝑧𝐶𝐵𝐶))
3029pm5.32ri 579 . . . . . . . . . . . . . 14 ((𝑧𝐶 ∧ (𝑧 = 𝐵𝜓)) ↔ (𝐵𝐶 ∧ (𝑧 = 𝐵𝜓)))
3127, 30bitr4i 281 . . . . . . . . . . . . 13 ((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ↔ (𝑧𝐶 ∧ (𝑧 = 𝐵𝜓)))
3231exbii 1849 . . . . . . . . . . . 12 (∃𝑦(𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ↔ ∃𝑦(𝑧𝐶 ∧ (𝑧 = 𝐵𝜓)))
33 19.42v 1954 . . . . . . . . . . . 12 (∃𝑦(𝑧𝐶 ∧ (𝑧 = 𝐵𝜓)) ↔ (𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)))
3432, 33bitri 278 . . . . . . . . . . 11 (∃𝑦(𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) ↔ (𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)))
3534imbi1i 353 . . . . . . . . . 10 ((∃𝑦(𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ ((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
3626, 35bitri 278 . . . . . . . . 9 (∀𝑦((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ ((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
3736albii 1821 . . . . . . . 8 (∀𝑥𝑦((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ ∀𝑥((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
38 19.21v 1940 . . . . . . . 8 (∀𝑥((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ ((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
3937, 38bitri 278 . . . . . . 7 (∀𝑥𝑦((𝑧 = 𝐵 ∧ (𝐵𝐶𝜓)) → ((𝐴𝐶𝜑) → 𝑧 = 𝐴)) ↔ ((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
4025, 39sylib 221 . . . . . 6 (∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → ((𝑧𝐶 ∧ ∃𝑦(𝑧 = 𝐵𝜓)) → ∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
4140expd 419 . . . . 5 (∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → (𝑧𝐶 → (∃𝑦(𝑧 = 𝐵𝜓) → ∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴))))
4241reximdvai 3231 . . . 4 (∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → (∃𝑧𝐶𝑦(𝑧 = 𝐵𝜓) → ∃𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
4313, 42syl5bi 245 . . 3 (∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) → (∃𝑥(𝐴𝐶𝜑) → ∃𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴)))
4443imp 410 . 2 ((∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴𝐶𝜑)) → ∃𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴))
45 pm4.24 567 . . . . . . . . . 10 ((𝐴𝐶𝜑) ↔ ((𝐴𝐶𝜑) ∧ (𝐴𝐶𝜑)))
4645biimpi 219 . . . . . . . . 9 ((𝐴𝐶𝜑) → ((𝐴𝐶𝜑) ∧ (𝐴𝐶𝜑)))
47 anim12 808 . . . . . . . . 9 ((((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → (((𝐴𝐶𝜑) ∧ (𝐴𝐶𝜑)) → (𝑧 = 𝐴𝑤 = 𝐴)))
48 eqtr3 2820 . . . . . . . . 9 ((𝑧 = 𝐴𝑤 = 𝐴) → 𝑧 = 𝑤)
4946, 47, 48syl56 36 . . . . . . . 8 ((((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → ((𝐴𝐶𝜑) → 𝑧 = 𝑤))
5049alanimi 1818 . . . . . . 7 ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → ∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝑤))
51 19.23v 1943 . . . . . . 7 (∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝑤) ↔ (∃𝑥(𝐴𝐶𝜑) → 𝑧 = 𝑤))
5250, 51sylib 221 . . . . . 6 ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → (∃𝑥(𝐴𝐶𝜑) → 𝑧 = 𝑤))
5352com12 32 . . . . 5 (∃𝑥(𝐴𝐶𝜑) → ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → 𝑧 = 𝑤))
5453a1d 25 . . . 4 (∃𝑥(𝐴𝐶𝜑) → ((𝑧𝐶𝑤𝐶) → ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → 𝑧 = 𝑤)))
5554ralrimivv 3155 . . 3 (∃𝑥(𝐴𝐶𝜑) → ∀𝑧𝐶𝑤𝐶 ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → 𝑧 = 𝑤))
5655adantl 485 . 2 ((∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴𝐶𝜑)) → ∀𝑧𝐶𝑤𝐶 ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → 𝑧 = 𝑤))
57 eqeq1 2802 . . . . 5 (𝑧 = 𝑤 → (𝑧 = 𝐴𝑤 = 𝐴))
5857imbi2d 344 . . . 4 (𝑧 = 𝑤 → (((𝐴𝐶𝜑) → 𝑧 = 𝐴) ↔ ((𝐴𝐶𝜑) → 𝑤 = 𝐴)))
5958albidv 1921 . . 3 (𝑧 = 𝑤 → (∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ↔ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)))
6059reu4 3670 . 2 (∃!𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ↔ (∃𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑧𝐶𝑤𝐶 ((∀𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴) ∧ ∀𝑥((𝐴𝐶𝜑) → 𝑤 = 𝐴)) → 𝑧 = 𝑤)))
6144, 56, 60sylanbrc 586 1 ((∀𝑥𝑦(((𝐴𝐶𝜑) ∧ (𝐵𝐶𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴𝐶𝜑)) → ∃!𝑧𝐶𝑥((𝐴𝐶𝜑) → 𝑧 = 𝐴))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 209   ∧ wa 399  ∀wal 1536   = wceq 1538  ∃wex 1781   ∈ wcel 2111  ∀wral 3106  ∃wrex 3107  ∃!wreu 3108 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-8 2113  ax-9 2121  ax-11 2158  ax-ext 2770 This theorem depends on definitions:  df-bi 210  df-an 400  df-ex 1782  df-mo 2598  df-eu 2629  df-cleq 2791  df-clel 2870  df-ral 3111  df-rex 3112  df-reu 3113  df-rmo 3114 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator