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

Theorem reuxfrd 3741
Description: Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 16-Jan-2012.) Separate variables B and C. (Revised by Thierry Arnoux, 8-Oct-2017.)
Hypotheses
Ref Expression
reuxfrd.1 ((𝜑𝑦𝐶) → 𝐴𝐵)
reuxfrd.2 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 𝑥 = 𝐴)
Assertion
Ref Expression
reuxfrd (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Distinct variable groups:   𝑥,𝑦,𝜑   𝜓,𝑥   𝑥,𝐴   𝑥,𝐵,𝑦   𝑥,𝐶,𝑦
Allowed substitution hints:   𝜓(𝑦)   𝐴(𝑦)

Proof of Theorem reuxfrd
StepHypRef Expression
1 reuxfrd.2 . . . . . . 7 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 𝑥 = 𝐴)
2 rmoan 3732 . . . . . . 7 (∃*𝑦𝐶 𝑥 = 𝐴 → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
31, 2syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
4 ancom 463 . . . . . . 7 ((𝜓𝑥 = 𝐴) ↔ (𝑥 = 𝐴𝜓))
54rmobii 3398 . . . . . 6 (∃*𝑦𝐶 (𝜓𝑥 = 𝐴) ↔ ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
63, 5sylib 220 . . . . 5 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
76ralrimiva 3184 . . . 4 (𝜑 → ∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
8 2reuswap 3739 . . . 4 (∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
97, 8syl 17 . . 3 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
10 2reuswap2 3740 . . . 4 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓)))
11 moeq 3700 . . . . . . 7 ∃*𝑥 𝑥 = 𝐴
1211moani 2637 . . . . . 6 ∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴)
13 ancom 463 . . . . . . . 8 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)))
14 an12 643 . . . . . . . 8 ((𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1513, 14bitri 277 . . . . . . 7 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1615mobii 2631 . . . . . 6 (∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1712, 16mpbi 232 . . . . 5 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))
1817a1i 11 . . . 4 (𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1910, 18mprg 3154 . . 3 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓))
209, 19impbid1 227 . 2 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
21 reuxfrd.1 . . . 4 ((𝜑𝑦𝐶) → 𝐴𝐵)
22 biidd 264 . . . . 5 (𝑥 = 𝐴 → (𝜓𝜓))
2322ceqsrexv 3651 . . . 4 (𝐴𝐵 → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2421, 23syl 17 . . 3 ((𝜑𝑦𝐶) → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2524reubidva 3390 . 2 (𝜑 → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
2620, 25bitrd 281 1 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398   = wceq 1537  wcel 2114  ∃*wmo 2620  wral 3140  wrex 3141  ∃!wreu 3142  ∃*wrmo 3143
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-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2795
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  df-eu 2654  df-cleq 2816  df-clel 2895  df-ral 3145  df-rex 3146  df-reu 3147  df-rmo 3148
This theorem is referenced by:  reuxfr  3742  reuxfr1d  3743
  Copyright terms: Public domain W3C validator