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

Theorem wdom2d 9545
Description: Deduce weak dominance from an implicit onto function (stated in a way which avoids ax-rep 5240). (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 5310 . . . . . 6 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
31, 2syl 18 . . . . 5 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
4 wdom2d.a . . . . 5 (𝜑𝐴𝑉)
53, 4xpexd 7752 . . . 4 (𝜑 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴) ∈ V)
6 csbeq1 3857 . . . . . . . . . 10 (𝑧 = 𝑤𝑧 / 𝑦𝑋 = 𝑤 / 𝑦𝑋)
76eleq1d 2850 . . . . . . . . 9 (𝑧 = 𝑤 → (𝑧 / 𝑦𝑋𝐴𝑤 / 𝑦𝑋𝐴))
87elrab 3652 . . . . . . . 8 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑤𝐵𝑤 / 𝑦𝑋𝐴))
98simprbi 503 . . . . . . 7 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑤 / 𝑦𝑋𝐴)
109adantl 487 . . . . . 6 ((𝜑𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}) → 𝑤 / 𝑦𝑋𝐴)
1110fmpttd 7114 . . . . 5 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴)
12 fssxp 6737 . . . . 5 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
1311, 12syl 18 . . . 4 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
145, 13ssexd 5297 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V)
15 wdom2d.o . . . . . . . 8 ((𝜑𝑥𝐴) → ∃𝑦𝐵 𝑥 = 𝑋)
16 eleq1 2853 . . . . . . . . . . . 12 (𝑥 = 𝑋 → (𝑥𝐴𝑋𝐴))
1716biimpcd 252 . . . . . . . . . . 11 (𝑥𝐴 → (𝑥 = 𝑋𝑋𝐴))
1817ancrd 561 . . . . . . . . . 10 (𝑥𝐴 → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
1918adantl 487 . . . . . . . . 9 ((𝜑𝑥𝐴) → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
2019reximdv 3182 . . . . . . . 8 ((𝜑𝑥𝐴) → (∃𝑦𝐵 𝑥 = 𝑋 → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋)))
2115, 20mpd 16 . . . . . . 7 ((𝜑𝑥𝐴) → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋))
22 nfv 1947 . . . . . . . 8 𝑣(𝑋𝐴𝑥 = 𝑋)
23 nfcsb1v 3878 . . . . . . . . . 10 𝑦𝑣 / 𝑦𝑋
2423nfel1 2943 . . . . . . . . 9 𝑦𝑣 / 𝑦𝑋𝐴
2523nfeq2 2944 . . . . . . . . 9 𝑦 𝑥 = 𝑣 / 𝑦𝑋
2624, 25nfan 1932 . . . . . . . 8 𝑦(𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)
27 csbeq1a 3868 . . . . . . . . . 10 (𝑦 = 𝑣𝑋 = 𝑣 / 𝑦𝑋)
2827eleq1d 2850 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑋𝐴𝑣 / 𝑦𝑋𝐴))
2927eqeq2d 2776 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑥 = 𝑋𝑥 = 𝑣 / 𝑦𝑋))
3028, 29anbi12d 644 . . . . . . . 8 (𝑦 = 𝑣 → ((𝑋𝐴𝑥 = 𝑋) ↔ (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)))
3122, 26, 30cbvrexw 3310 . . . . . . 7 (∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
3221, 31sylib 221 . . . . . 6 ((𝜑𝑥𝐴) → ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
33 csbeq1 3857 . . . . . . . . . . . . 13 (𝑧 = 𝑣𝑧 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
3433eleq1d 2850 . . . . . . . . . . . 12 (𝑧 = 𝑣 → (𝑧 / 𝑦𝑋𝐴𝑣 / 𝑦𝑋𝐴))
3534elrab 3652 . . . . . . . . . . 11 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑣𝐵𝑣 / 𝑦𝑋𝐴))
3635simprbi 503 . . . . . . . . . 10 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑣 / 𝑦𝑋𝐴)
37 csbeq1 3857 . . . . . . . . . . 11 (𝑤 = 𝑣𝑤 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
38 eqid 2765 . . . . . . . . . . 11 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) = (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)
3937, 38fvmptg 6991 . . . . . . . . . 10 ((𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ 𝑣 / 𝑦𝑋𝐴) → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4036, 39mpdan 700 . . . . . . . . 9 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4140eqeq2d 2776 . . . . . . . 8 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → (𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ 𝑥 = 𝑣 / 𝑦𝑋))
4241rexbiia 3112 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋)
4334rexrab 3661 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋 ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4442, 43bitri 278 . . . . . 6 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4532, 44sylibr 237 . . . . 5 ((𝜑𝑥𝐴) → ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
4645ralrimiva 3159 . . . 4 (𝜑 → ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
47 dffo3 7101 . . . 4 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴 ↔ ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 ∧ ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣)))
4811, 46, 47sylanbrc 595 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴)
49 fowdom 9536 . . 3 (((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V ∧ (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴) → 𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
5014, 48, 49syl2anc 596 . 2 (𝜑𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
51 ssrab2 4035 . . . 4 {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵
52 ssdomg 8999 . . . 4 (𝐵𝑊 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵))
5351, 52mpi 21 . . 3 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵)
54 domwdom 9539 . . 3 ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
551, 53, 543syl 19 . 2 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
56 wdomtr 9540 . 2 ((𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵) → 𝐴* 𝐵)
5750, 55, 56syl2anc 596 1 (𝜑𝐴* 𝐵)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2146  wral 3081  wrex 3091  {crab 3418  Vcvv 3457  csb 3854  wss 3906   class class class wbr 5111  cmpt 5194   × cxp 5661  wf 6536  ontowfo 6538  cfv 6540  cdom 8943  * cwdom 9529
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7738
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-br 5112  df-opab 5176  df-mpt 5195  df-id 5558  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-en 8946  df-dom 8947  df-sdom 8948  df-wdom 9530
This theorem is used by:  wdomd  9546  brwdom3  9547  unwdomg  9549  xpwdomg  9550  wdom2d2  43795
  Copyright terms: Public domain W3C validator