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

Theorem reuxfrd 3702
Description: Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 16-Jan-2012.) Separate variables 𝐵 and 𝐶. (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 3693 . . . . . . 7 (∃*𝑦𝐶 𝑥 = 𝐴 → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
31, 2syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
4 ancom 460 . . . . . . 7 ((𝜓𝑥 = 𝐴) ↔ (𝑥 = 𝐴𝜓))
54rmobii 3354 . . . . . 6 (∃*𝑦𝐶 (𝜓𝑥 = 𝐴) ↔ ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
63, 5sylib 218 . . . . 5 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
76ralrimiva 3124 . . . 4 (𝜑 → ∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
8 2reuswap 3700 . . . 4 (∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
97, 8syl 17 . . 3 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
10 2reuswap2 3701 . . . 4 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓)))
11 moeq 3661 . . . . . . 7 ∃*𝑥 𝑥 = 𝐴
1211moani 2548 . . . . . 6 ∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴)
13 ancom 460 . . . . . . . 8 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)))
14 an12 645 . . . . . . . 8 ((𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1513, 14bitri 275 . . . . . . 7 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1615mobii 2543 . . . . . 6 (∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1712, 16mpbi 230 . . . . 5 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))
1817a1i 11 . . . 4 (𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1910, 18mprg 3053 . . 3 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓))
209, 19impbid1 225 . 2 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
21 reuxfrd.1 . . . 4 ((𝜑𝑦𝐶) → 𝐴𝐵)
22 biidd 262 . . . . 5 (𝑥 = 𝐴 → (𝜓𝜓))
2322ceqsrexv 3605 . . . 4 (𝐴𝐵 → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2421, 23syl 17 . . 3 ((𝜑𝑦𝐶) → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2524reubidva 3360 . 2 (𝜑 → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
2620, 25bitrd 279 1 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1541  wcel 2111  ∃*wmo 2533  wral 3047  wrex 3056  ∃!wreu 3344  ∃*wrmo 3345
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 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-tru 1544  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-ral 3048  df-rex 3057  df-rmo 3346  df-reu 3347
This theorem is referenced by:  reuxfr  3703  reuxfr1d  3704  reuxfr1dd  48838
  Copyright terms: Public domain W3C validator