Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  reuxfrdf Structured version   Visualization version   GIF version

Theorem reuxfrdf 32952
Description: Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Cf. reuxfrd 3709 (Contributed by Thierry Arnoux, 7-Apr-2017.) (Revised by Thierry Arnoux, 8-Oct-2017.) (Revised by Thierry Arnoux, 30-Mar-2018.)
Hypotheses
Ref Expression
reuxfrdf.0 𝑦𝐵
reuxfrdf.1 ((𝜑𝑦𝐶) → 𝐴𝐵)
reuxfrdf.2 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 𝑥 = 𝐴)
Assertion
Ref Expression
reuxfrdf (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Distinct variable groups:   𝑥,𝑦,𝜑   𝜓,𝑥   𝑥,𝐴   𝑥,𝐵   𝑥,𝐶,𝑦
Allowed substitution hints:   𝜓(𝑦)   𝐴(𝑦)   𝐵(𝑦)

Proof of Theorem reuxfrdf
StepHypRef Expression
1 reuxfrdf.2 . . . . . . 7 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 𝑥 = 𝐴)
2 rmoan 3700 . . . . . . 7 (∃*𝑦𝐶 𝑥 = 𝐴 → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
31, 2syl 18 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝜓𝑥 = 𝐴))
4 ancom 466 . . . . . . 7 ((𝜓𝑥 = 𝐴) ↔ (𝑥 = 𝐴𝜓))
54rmobii 3375 . . . . . 6 (∃*𝑦𝐶 (𝜓𝑥 = 𝐴) ↔ ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
63, 5sylib 221 . . . . 5 ((𝜑𝑥𝐵) → ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
76ralrimiva 3156 . . . 4 (𝜑 → ∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓))
8 df-rmo 3367 . . . . . 6 (∃*𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)))
98ralbii 3110 . . . . 5 (∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∀𝑥𝐵 ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)))
10 df-ral 3079 . . . . . . 7 (∀𝑥𝐵 ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ ∀𝑥(𝑥𝐵 → ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
11 reuxfrdf.0 . . . . . . . . . 10 𝑦𝐵
1211nfcri 2916 . . . . . . . . 9 𝑦 𝑥𝐵
1312moanim 2647 . . . . . . . 8 (∃*𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) ↔ (𝑥𝐵 → ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
1413albii 1852 . . . . . . 7 (∀𝑥∃*𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) ↔ ∀𝑥(𝑥𝐵 → ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
1510, 14bitr4i 281 . . . . . 6 (∀𝑥𝐵 ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ ∀𝑥∃*𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
16 2euswapv 2657 . . . . . . 7 (∀𝑥∃*𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) → (∃!𝑥𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) → ∃!𝑦𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)))))
17 df-reu 3368 . . . . . . . 8 (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑥(𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)))
1812r19.41 3268 . . . . . . . . . . . 12 (∃𝑦𝐶 ((𝑥 = 𝐴𝜓) ∧ 𝑥𝐵) ↔ (∃𝑦𝐶 (𝑥 = 𝐴𝜓) ∧ 𝑥𝐵))
19 ancom 466 . . . . . . . . . . . . 13 ((𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ ((𝑥 = 𝐴𝜓) ∧ 𝑥𝐵))
2019rexbii 3111 . . . . . . . . . . . 12 (∃𝑦𝐶 (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ ∃𝑦𝐶 ((𝑥 = 𝐴𝜓) ∧ 𝑥𝐵))
21 ancom 466 . . . . . . . . . . . 12 ((𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)) ↔ (∃𝑦𝐶 (𝑥 = 𝐴𝜓) ∧ 𝑥𝐵))
2218, 20, 213bitr4i 306 . . . . . . . . . . 11 (∃𝑦𝐶 (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ (𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)))
23 df-rex 3089 . . . . . . . . . . 11 (∃𝑦𝐶 (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ ∃𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
2422, 23bitr3i 280 . . . . . . . . . 10 ((𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)) ↔ ∃𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
25 an12 658 . . . . . . . . . . 11 ((𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) ↔ (𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
2625exbii 1881 . . . . . . . . . 10 (∃𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) ↔ ∃𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
2724, 26bitri 278 . . . . . . . . 9 ((𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)) ↔ ∃𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
2827eubii 2612 . . . . . . . 8 (∃!𝑥(𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)) ↔ ∃!𝑥𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
2917, 28bitri 278 . . . . . . 7 (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑥𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
30 df-reu 3368 . . . . . . . 8 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦(𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)))
31 nfv 1947 . . . . . . . . . . . 12 𝑥 𝑦𝐶
3231r19.41 3268 . . . . . . . . . . 11 (∃𝑥𝐵 ((𝑥 = 𝐴𝜓) ∧ 𝑦𝐶) ↔ (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ∧ 𝑦𝐶))
33 ancom 466 . . . . . . . . . . . 12 ((𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ ((𝑥 = 𝐴𝜓) ∧ 𝑦𝐶))
3433rexbii 3111 . . . . . . . . . . 11 (∃𝑥𝐵 (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ ∃𝑥𝐵 ((𝑥 = 𝐴𝜓) ∧ 𝑦𝐶))
35 ancom 466 . . . . . . . . . . 11 ((𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ∧ 𝑦𝐶))
3632, 34, 353bitr4i 306 . . . . . . . . . 10 (∃𝑥𝐵 (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ (𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)))
37 df-rex 3089 . . . . . . . . . 10 (∃𝑥𝐵 (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ ∃𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
3836, 37bitr3i 280 . . . . . . . . 9 ((𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ ∃𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
3938eubii 2612 . . . . . . . 8 (∃!𝑦(𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ ∃!𝑦𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
4030, 39bitri 278 . . . . . . 7 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
4116, 29, 403imtr4g 299 . . . . . 6 (∀𝑥∃*𝑦(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
4215, 41sylbi 220 . . . . 5 (∀𝑥𝐵 ∃*𝑦(𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
439, 42sylbi 220 . . . 4 (∀𝑥𝐵 ∃*𝑦𝐶 (𝑥 = 𝐴𝜓) → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
447, 43syl 18 . . 3 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) → ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
45 df-ral 3079 . . . . . 6 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ ∀𝑦(𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
46 moanimv 2646 . . . . . . 7 (∃*𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) ↔ (𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
4746albii 1852 . . . . . 6 (∀𝑦∃*𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) ↔ ∀𝑦(𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
4845, 47bitr4i 281 . . . . 5 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) ↔ ∀𝑦∃*𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
49 2euswapv 2657 . . . . . 6 (∀𝑦∃*𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) → (∃!𝑦𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) → ∃!𝑥𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))))
50 r19.42v 3196 . . . . . . . . . 10 (∃𝑥𝐵 (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓)) ↔ (𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)))
5150, 37bitr3i 280 . . . . . . . . 9 ((𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ ∃𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))))
52 an12 658 . . . . . . . . . 10 ((𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) ↔ (𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5352exbii 1881 . . . . . . . . 9 (∃𝑥(𝑥𝐵 ∧ (𝑦𝐶 ∧ (𝑥 = 𝐴𝜓))) ↔ ∃𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5451, 53bitri 278 . . . . . . . 8 ((𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ ∃𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5554eubii 2612 . . . . . . 7 (∃!𝑦(𝑦𝐶 ∧ ∃𝑥𝐵 (𝑥 = 𝐴𝜓)) ↔ ∃!𝑦𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5630, 55bitri 278 . . . . . 6 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5724eubii 2612 . . . . . . 7 (∃!𝑥(𝑥𝐵 ∧ ∃𝑦𝐶 (𝑥 = 𝐴𝜓)) ↔ ∃!𝑥𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5817, 57bitri 278 . . . . . 6 (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑥𝑦(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))))
5949, 56, 583imtr4g 299 . . . . 5 (∀𝑦∃*𝑥(𝑦𝐶 ∧ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))) → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓)))
6048, 59sylbi 220 . . . 4 (∀𝑦𝐶 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)) → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓)))
61 moeq 3668 . . . . . . 7 ∃*𝑥 𝑥 = 𝐴
6261moani 2580 . . . . . 6 ∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴)
63 ancom 466 . . . . . . . 8 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)))
64 an12 658 . . . . . . . 8 ((𝑥 = 𝐴 ∧ (𝑥𝐵𝜓)) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
6563, 64bitri 278 . . . . . . 7 (((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ (𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
6665mobii 2575 . . . . . 6 (∃*𝑥((𝑥𝐵𝜓) ∧ 𝑥 = 𝐴) ↔ ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
6762, 66mpbi 233 . . . . 5 ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓))
6867a1i 11 . . . 4 (𝑦𝐶 → ∃*𝑥(𝑥𝐵 ∧ (𝑥 = 𝐴𝜓)))
6960, 68mprg 3084 . . 3 (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) → ∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓))
7044, 69impbid1 228 . 2 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓)))
71 reuxfrdf.1 . . . 4 ((𝜑𝑦𝐶) → 𝐴𝐵)
72 biidd 265 . . . . 5 (𝑥 = 𝐴 → (𝜓𝜓))
7372ceqsrexv 3612 . . . 4 (𝐴𝐵 → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
7471, 73syl 18 . . 3 ((𝜑𝑦𝐶) → (∃𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ 𝜓))
7574reubidva 3381 . 2 (𝜑 → (∃!𝑦𝐶𝑥𝐵 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
7670, 75bitrd 282 1 (𝜑 → (∃!𝑥𝐵𝑦𝐶 (𝑥 = 𝐴𝜓) ↔ ∃!𝑦𝐶 𝜓))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  wal 1568   = wceq 1570  wex 1812  wcel 2145  ∃*wmo 2564  ∃!weu 2595  wnfc 2909  wral 3078  wrex 3088  ∃!wreu 3365  ∃*wrmo 3366
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-tru 1573  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator