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

Theorem reuxfrd 3678
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 3669 . . . . . . 7 (∃*𝑦𝐶 𝑥 = 𝐴 → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
31, 2syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
4 ancom 460 . . . . . . 7 ((𝜓𝑥 = 𝐴) ↔ (𝑥 = 𝐴𝜓))
54rmobii 3322 . . . . . 6 (∃*𝑦𝐶 (𝜓𝑥 = 𝐴) ↔ ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
63, 5sylib 217 . . . . 5 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
76ralrimiva 3107 . . . 4 (𝜑 → ∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
8 2reuswap 3676 . . . 4 (∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
97, 8syl 17 . . 3 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
10 2reuswap2 3677 . . . 4 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓)))
11 moeq 3637 . . . . . . 7 ∃*𝑥 𝑥 = 𝐴
1211moani 2553 . . . . . 6 ∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴)
13 ancom 460 . . . . . . . 8 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)))
14 an12 641 . . . . . . . 8 ((𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1513, 14bitri 274 . . . . . . 7 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1615mobii 2548 . . . . . 6 (∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1712, 16mpbi 229 . . . . 5 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))
1817a1i 11 . . . 4 (𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
1910, 18mprg 3077 . . 3 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓))
209, 19impbid1 224 . 2 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
21 reuxfrd.1 . . . 4 ((𝜑𝑦𝐶) → 𝐴𝐵)
22 biidd 261 . . . . 5 (𝑥 = 𝐴 → (𝜓𝜓))
2322ceqsrexv 3578 . . . 4 (𝐴𝐵 → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2421, 23syl 17 . . 3 ((𝜑𝑦𝐶) → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
2524reubidva 3314 . 2 (𝜑 → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
2620, 25bitrd 278 1 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395   = wceq 1539  wcel 2108  ∃*wmo 2538  wral 3063  wrex 3064  ∃!wreu 3065  ∃*wrmo 3066
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-tru 1542  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-ral 3068  df-rex 3069  df-reu 3070  df-rmo 3071
This theorem is referenced by:  reuxfr  3679  reuxfr1d  3680
  Copyright terms: Public domain W3C validator