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

Theorem wdom2d 9477
Description: Deduce weak dominance from an implicit onto function (stated in a way which avoids ax-rep 5221). (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 5279 . . . . . 6 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
31, 2syl 17 . . . . 5 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
4 wdom2d.a . . . . 5 (𝜑𝐴𝑉)
53, 4xpexd 7693 . . . 4 (𝜑 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴) ∈ V)
6 csbeq1 3849 . . . . . . . . . 10 (𝑧 = 𝑤𝑧 / 𝑦𝑋 = 𝑤 / 𝑦𝑋)
76eleq1d 2818 . . . . . . . . 9 (𝑧 = 𝑤 → (𝑧 / 𝑦𝑋𝐴𝑤 / 𝑦𝑋𝐴))
87elrab 3643 . . . . . . . 8 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑤𝐵𝑤 / 𝑦𝑋𝐴))
98simprbi 496 . . . . . . 7 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑤 / 𝑦𝑋𝐴)
109adantl 481 . . . . . 6 ((𝜑𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}) → 𝑤 / 𝑦𝑋𝐴)
1110fmpttd 7057 . . . . 5 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴)
12 fssxp 6686 . . . . 5 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
1311, 12syl 17 . . . 4 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
145, 13ssexd 5266 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V)
15 wdom2d.o . . . . . . . 8 ((𝜑𝑥𝐴) → ∃𝑦𝐵 𝑥 = 𝑋)
16 eleq1 2821 . . . . . . . . . . . 12 (𝑥 = 𝑋 → (𝑥𝐴𝑋𝐴))
1716biimpcd 249 . . . . . . . . . . 11 (𝑥𝐴 → (𝑥 = 𝑋𝑋𝐴))
1817ancrd 551 . . . . . . . . . 10 (𝑥𝐴 → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
1918adantl 481 . . . . . . . . 9 ((𝜑𝑥𝐴) → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
2019reximdv 3148 . . . . . . . 8 ((𝜑𝑥𝐴) → (∃𝑦𝐵 𝑥 = 𝑋 → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋)))
2115, 20mpd 15 . . . . . . 7 ((𝜑𝑥𝐴) → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋))
22 nfv 1915 . . . . . . . 8 𝑣(𝑋𝐴𝑥 = 𝑋)
23 nfcsb1v 3870 . . . . . . . . . 10 𝑦𝑣 / 𝑦𝑋
2423nfel1 2912 . . . . . . . . 9 𝑦𝑣 / 𝑦𝑋𝐴
2523nfeq2 2913 . . . . . . . . 9 𝑦 𝑥 = 𝑣 / 𝑦𝑋
2624, 25nfan 1900 . . . . . . . 8 𝑦(𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)
27 csbeq1a 3860 . . . . . . . . . 10 (𝑦 = 𝑣𝑋 = 𝑣 / 𝑦𝑋)
2827eleq1d 2818 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑋𝐴𝑣 / 𝑦𝑋𝐴))
2927eqeq2d 2744 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑥 = 𝑋𝑥 = 𝑣 / 𝑦𝑋))
3028, 29anbi12d 632 . . . . . . . 8 (𝑦 = 𝑣 → ((𝑋𝐴𝑥 = 𝑋) ↔ (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)))
3122, 26, 30cbvrexw 3276 . . . . . . 7 (∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
3221, 31sylib 218 . . . . . 6 ((𝜑𝑥𝐴) → ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
33 csbeq1 3849 . . . . . . . . . . . . 13 (𝑧 = 𝑣𝑧 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
3433eleq1d 2818 . . . . . . . . . . . 12 (𝑧 = 𝑣 → (𝑧 / 𝑦𝑋𝐴𝑣 / 𝑦𝑋𝐴))
3534elrab 3643 . . . . . . . . . . 11 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑣𝐵𝑣 / 𝑦𝑋𝐴))
3635simprbi 496 . . . . . . . . . 10 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑣 / 𝑦𝑋𝐴)
37 csbeq1 3849 . . . . . . . . . . 11 (𝑤 = 𝑣𝑤 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
38 eqid 2733 . . . . . . . . . . 11 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) = (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)
3937, 38fvmptg 6936 . . . . . . . . . 10 ((𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ 𝑣 / 𝑦𝑋𝐴) → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4036, 39mpdan 687 . . . . . . . . 9 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4140eqeq2d 2744 . . . . . . . 8 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → (𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ 𝑥 = 𝑣 / 𝑦𝑋))
4241rexbiia 3078 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋)
4334rexrab 3651 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋 ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4442, 43bitri 275 . . . . . 6 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4532, 44sylibr 234 . . . . 5 ((𝜑𝑥𝐴) → ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
4645ralrimiva 3125 . . . 4 (𝜑 → ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
47 dffo3 7044 . . . 4 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴 ↔ ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 ∧ ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣)))
4811, 46, 47sylanbrc 583 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴)
49 fowdom 9468 . . 3 (((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V ∧ (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴) → 𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
5014, 48, 49syl2anc 584 . 2 (𝜑𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
51 ssrab2 4029 . . . 4 {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵
52 ssdomg 8933 . . . 4 (𝐵𝑊 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵))
5351, 52mpi 20 . . 3 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵)
54 domwdom 9471 . . 3 ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
551, 53, 543syl 18 . 2 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
56 wdomtr 9472 . 2 ((𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵) → 𝐴* 𝐵)
5750, 55, 56syl2anc 584 1 (𝜑𝐴* 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1541  wcel 2113  wral 3048  wrex 3057  {crab 3396  Vcvv 3437  csb 3846  wss 3898   class class class wbr 5095  cmpt 5176   × cxp 5619  wf 6485  ontowfo 6487  cfv 6489  cdom 8877  * cwdom 9461
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 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2182  ax-ext 2705  ax-sep 5238  ax-nul 5248  ax-pow 5307  ax-pr 5374  ax-un 7677
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2725  df-clel 2808  df-nfc 2882  df-ne 2930  df-ral 3049  df-rex 3058  df-rab 3397  df-v 3439  df-sbc 3738  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-nul 4283  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4861  df-br 5096  df-opab 5158  df-mpt 5177  df-id 5516  df-xp 5627  df-rel 5628  df-cnv 5629  df-co 5630  df-dm 5631  df-rn 5632  df-res 5633  df-ima 5634  df-iota 6445  df-fun 6491  df-fn 6492  df-f 6493  df-f1 6494  df-fo 6495  df-f1o 6496  df-fv 6497  df-en 8880  df-dom 8881  df-sdom 8882  df-wdom 9462
This theorem is referenced by:  wdomd  9478  brwdom3  9479  unwdomg  9481  xpwdomg  9482  wdom2d2  43192
  Copyright terms: Public domain W3C validator