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

Theorem wdom2d 9174
Description: Deduce weak dominance from an implicit onto function (stated in a way which avoids ax-rep 5164). (Contributed by Stefan O'Rear, 13-Feb-2015.)
Hypotheses
Ref Expression
wdom2d.a (𝜑𝐴𝑉)
wdom2d.b (𝜑𝐵𝑊)
wdom2d.o ((𝜑𝑥𝐴) → ∃𝑦𝐵 𝑥 = 𝑋)
Assertion
Ref Expression
wdom2d (𝜑𝐴* 𝐵)
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝑋   𝜑,𝑥,𝑦
Allowed substitution hints:   𝑉(𝑥,𝑦)   𝑊(𝑥,𝑦)   𝑋(𝑦)

Proof of Theorem wdom2d
Dummy variables 𝑣 𝑤 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 wdom2d.b . . . . . 6 (𝜑𝐵𝑊)
2 rabexg 5209 . . . . . 6 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
31, 2syl 17 . . . . 5 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
4 wdom2d.a . . . . 5 (𝜑𝐴𝑉)
53, 4xpexd 7514 . . . 4 (𝜑 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴) ∈ V)
6 csbeq1 3801 . . . . . . . . . 10 (𝑧 = 𝑤𝑧 / 𝑦𝑋 = 𝑤 / 𝑦𝑋)
76eleq1d 2815 . . . . . . . . 9 (𝑧 = 𝑤 → (𝑧 / 𝑦𝑋𝐴𝑤 / 𝑦𝑋𝐴))
87elrab 3591 . . . . . . . 8 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑤𝐵𝑤 / 𝑦𝑋𝐴))
98simprbi 500 . . . . . . 7 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑤 / 𝑦𝑋𝐴)
109adantl 485 . . . . . 6 ((𝜑𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}) → 𝑤 / 𝑦𝑋𝐴)
1110fmpttd 6910 . . . . 5 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴)
12 fssxp 6551 . . . . 5 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
1311, 12syl 17 . . . 4 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
145, 13ssexd 5202 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V)
15 wdom2d.o . . . . . . . 8 ((𝜑𝑥𝐴) → ∃𝑦𝐵 𝑥 = 𝑋)
16 eleq1 2818 . . . . . . . . . . . 12 (𝑥 = 𝑋 → (𝑥𝐴𝑋𝐴))
1716biimpcd 252 . . . . . . . . . . 11 (𝑥𝐴 → (𝑥 = 𝑋𝑋𝐴))
1817ancrd 555 . . . . . . . . . 10 (𝑥𝐴 → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
1918adantl 485 . . . . . . . . 9 ((𝜑𝑥𝐴) → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
2019reximdv 3182 . . . . . . . 8 ((𝜑𝑥𝐴) → (∃𝑦𝐵 𝑥 = 𝑋 → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋)))
2115, 20mpd 15 . . . . . . 7 ((𝜑𝑥𝐴) → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋))
22 nfv 1922 . . . . . . . 8 𝑣(𝑋𝐴𝑥 = 𝑋)
23 nfcsb1v 3823 . . . . . . . . . 10 𝑦𝑣 / 𝑦𝑋
2423nfel1 2913 . . . . . . . . 9 𝑦𝑣 / 𝑦𝑋𝐴
2523nfeq2 2914 . . . . . . . . 9 𝑦 𝑥 = 𝑣 / 𝑦𝑋
2624, 25nfan 1907 . . . . . . . 8 𝑦(𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)
27 csbeq1a 3812 . . . . . . . . . 10 (𝑦 = 𝑣𝑋 = 𝑣 / 𝑦𝑋)
2827eleq1d 2815 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑋𝐴𝑣 / 𝑦𝑋𝐴))
2927eqeq2d 2747 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑥 = 𝑋𝑥 = 𝑣 / 𝑦𝑋))
3028, 29anbi12d 634 . . . . . . . 8 (𝑦 = 𝑣 → ((𝑋𝐴𝑥 = 𝑋) ↔ (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)))
3122, 26, 30cbvrexw 3340 . . . . . . 7 (∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
3221, 31sylib 221 . . . . . 6 ((𝜑𝑥𝐴) → ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
33 csbeq1 3801 . . . . . . . . . . . . 13 (𝑧 = 𝑣𝑧 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
3433eleq1d 2815 . . . . . . . . . . . 12 (𝑧 = 𝑣 → (𝑧 / 𝑦𝑋𝐴𝑣 / 𝑦𝑋𝐴))
3534elrab 3591 . . . . . . . . . . 11 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑣𝐵𝑣 / 𝑦𝑋𝐴))
3635simprbi 500 . . . . . . . . . 10 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑣 / 𝑦𝑋𝐴)
37 csbeq1 3801 . . . . . . . . . . 11 (𝑤 = 𝑣𝑤 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
38 eqid 2736 . . . . . . . . . . 11 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) = (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)
3937, 38fvmptg 6794 . . . . . . . . . 10 ((𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ 𝑣 / 𝑦𝑋𝐴) → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4036, 39mpdan 687 . . . . . . . . 9 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4140eqeq2d 2747 . . . . . . . 8 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → (𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ 𝑥 = 𝑣 / 𝑦𝑋))
4241rexbiia 3159 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋)
4334rexrab 3598 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋 ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4442, 43bitri 278 . . . . . 6 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4532, 44sylibr 237 . . . . 5 ((𝜑𝑥𝐴) → ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
4645ralrimiva 3095 . . . 4 (𝜑 → ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
47 dffo3 6899 . . . 4 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴 ↔ ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 ∧ ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣)))
4811, 46, 47sylanbrc 586 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴)
49 fowdom 9165 . . 3 (((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V ∧ (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴) → 𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
5014, 48, 49syl2anc 587 . 2 (𝜑𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
51 ssrab2 3979 . . . 4 {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵
52 ssdomg 8652 . . . 4 (𝐵𝑊 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵))
5351, 52mpi 20 . . 3 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵)
54 domwdom 9168 . . 3 ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
551, 53, 543syl 18 . 2 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
56 wdomtr 9169 . 2 ((𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵) → 𝐴* 𝐵)
5750, 55, 56syl2anc 587 1 (𝜑𝐴* 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1543  wcel 2112  wral 3051  wrex 3052  {crab 3055  Vcvv 3398  csb 3798  wss 3853   class class class wbr 5039  cmpt 5120   × cxp 5534  wf 6354  ontowfo 6356  cfv 6358  cdom 8602  * cwdom 9158
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2018  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2160  ax-12 2177  ax-ext 2708  ax-sep 5177  ax-nul 5184  ax-pow 5243  ax-pr 5307  ax-un 7501
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-3an 1091  df-tru 1546  df-fal 1556  df-ex 1788  df-nf 1792  df-sb 2073  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2728  df-clel 2809  df-nfc 2879  df-ne 2933  df-ral 3056  df-rex 3057  df-rab 3060  df-v 3400  df-sbc 3684  df-csb 3799  df-dif 3856  df-un 3858  df-in 3860  df-ss 3870  df-nul 4224  df-if 4426  df-pw 4501  df-sn 4528  df-pr 4530  df-op 4534  df-uni 4806  df-br 5040  df-opab 5102  df-mpt 5121  df-id 5440  df-xp 5542  df-rel 5543  df-cnv 5544  df-co 5545  df-dm 5546  df-rn 5547  df-res 5548  df-ima 5549  df-iota 6316  df-fun 6360  df-fn 6361  df-f 6362  df-f1 6363  df-fo 6364  df-f1o 6365  df-fv 6366  df-er 8369  df-en 8605  df-dom 8606  df-sdom 8607  df-wdom 9159
This theorem is referenced by:  wdomd  9175  brwdom3  9176  unwdomg  9178  xpwdomg  9179  wdom2d2  40501
  Copyright terms: Public domain W3C validator