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

Theorem wdom2d 9552
Description: Deduce weak dominance from an implicit onto function (stated in a way which avoids ax-rep 5232). (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 5302 . . . . . 6 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
31, 2syl 18 . . . . 5 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∈ V)
4 wdom2d.a . . . . 5 (𝜑𝐴𝑉)
53, 4xpexd 7750 . . . 4 (𝜑 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴) ∈ V)
6 csbeq1 3850 . . . . . . . . . 10 (𝑧 = 𝑤𝑧 / 𝑦𝑋 = 𝑤 / 𝑦𝑋)
76eleq1d 2845 . . . . . . . . 9 (𝑧 = 𝑤 → (𝑧 / 𝑦𝑋𝐴𝑤 / 𝑦𝑋𝐴))
87elrab 3645 . . . . . . . 8 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑤𝐵𝑤 / 𝑦𝑋𝐴))
98simprbi 503 . . . . . . 7 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑤 / 𝑦𝑋𝐴)
109adantl 487 . . . . . 6 ((𝜑𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}) → 𝑤 / 𝑦𝑋𝐴)
1110fmpttd 7108 . . . . 5 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴)
12 fssxp 6730 . . . . 5 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
1311, 12syl 18 . . . 4 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ⊆ ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} × 𝐴))
145, 13ssexd 5289 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V)
15 wdom2d.o . . . . . . . 8 ((𝜑𝑥𝐴) → ∃𝑦𝐵 𝑥 = 𝑋)
16 eleq1 2848 . . . . . . . . . . . 12 (𝑥 = 𝑋 → (𝑥𝐴𝑋𝐴))
1716biimpcd 252 . . . . . . . . . . 11 (𝑥𝐴 → (𝑥 = 𝑋𝑋𝐴))
1817ancrd 561 . . . . . . . . . 10 (𝑥𝐴 → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
1918adantl 487 . . . . . . . . 9 ((𝜑𝑥𝐴) → (𝑥 = 𝑋 → (𝑋𝐴𝑥 = 𝑋)))
2019reximdv 3177 . . . . . . . 8 ((𝜑𝑥𝐴) → (∃𝑦𝐵 𝑥 = 𝑋 → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋)))
2115, 20mpd 16 . . . . . . 7 ((𝜑𝑥𝐴) → ∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋))
22 nfv 1947 . . . . . . . 8 𝑣(𝑋𝐴𝑥 = 𝑋)
23 nfcsb1v 3871 . . . . . . . . . 10 𝑦𝑣 / 𝑦𝑋
2423nfel1 2938 . . . . . . . . 9 𝑦𝑣 / 𝑦𝑋𝐴
2523nfeq2 2939 . . . . . . . . 9 𝑦 𝑥 = 𝑣 / 𝑦𝑋
2624, 25nfan 1932 . . . . . . . 8 𝑦(𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)
27 csbeq1a 3861 . . . . . . . . . 10 (𝑦 = 𝑣𝑋 = 𝑣 / 𝑦𝑋)
2827eleq1d 2845 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑋𝐴𝑣 / 𝑦𝑋𝐴))
2927eqeq2d 2771 . . . . . . . . 9 (𝑦 = 𝑣 → (𝑥 = 𝑋𝑥 = 𝑣 / 𝑦𝑋))
3028, 29anbi12d 644 . . . . . . . 8 (𝑦 = 𝑣 → ((𝑋𝐴𝑥 = 𝑋) ↔ (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋)))
3122, 26, 30cbvrexw 3305 . . . . . . 7 (∃𝑦𝐵 (𝑋𝐴𝑥 = 𝑋) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
3221, 31sylib 221 . . . . . 6 ((𝜑𝑥𝐴) → ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
33 csbeq1 3850 . . . . . . . . . . . . 13 (𝑧 = 𝑣𝑧 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
3433eleq1d 2845 . . . . . . . . . . . 12 (𝑧 = 𝑣 → (𝑧 / 𝑦𝑋𝐴𝑣 / 𝑦𝑋𝐴))
3534elrab 3645 . . . . . . . . . . 11 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↔ (𝑣𝐵𝑣 / 𝑦𝑋𝐴))
3635simprbi 503 . . . . . . . . . 10 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → 𝑣 / 𝑦𝑋𝐴)
37 csbeq1 3850 . . . . . . . . . . 11 (𝑤 = 𝑣𝑤 / 𝑦𝑋 = 𝑣 / 𝑦𝑋)
38 eqid 2760 . . . . . . . . . . 11 (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) = (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)
3937, 38fvmptg 6984 . . . . . . . . . 10 ((𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ∧ 𝑣 / 𝑦𝑋𝐴) → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4036, 39mpdan 700 . . . . . . . . 9 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) = 𝑣 / 𝑦𝑋)
4140eqeq2d 2771 . . . . . . . 8 (𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} → (𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ 𝑥 = 𝑣 / 𝑦𝑋))
4241rexbiia 3107 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋)
4334rexrab 3654 . . . . . . 7 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = 𝑣 / 𝑦𝑋 ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4442, 43bitri 278 . . . . . 6 (∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣) ↔ ∃𝑣𝐵 (𝑣 / 𝑦𝑋𝐴𝑥 = 𝑣 / 𝑦𝑋))
4532, 44sylibr 237 . . . . 5 ((𝜑𝑥𝐴) → ∃𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
4645ralrimiva 3154 . . . 4 (𝜑 → ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣))
47 dffo3 7095 . . . 4 ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴 ↔ ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}⟶𝐴 ∧ ∀𝑥𝐴𝑣 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴}𝑥 = ((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋)‘𝑣)))
4811, 46, 47sylanbrc 595 . . 3 (𝜑 → (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴)
49 fowdom 9543 . . 3 (((𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋) ∈ V ∧ (𝑤 ∈ {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ↦ 𝑤 / 𝑦𝑋):{𝑧𝐵𝑧 / 𝑦𝑋𝐴}–onto𝐴) → 𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
5014, 48, 49syl2anc 596 . 2 (𝜑𝐴* {𝑧𝐵𝑧 / 𝑦𝑋𝐴})
51 ssrab2 4028 . . . 4 {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵
52 ssdomg 9006 . . . 4 (𝐵𝑊 → ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ⊆ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵))
5351, 52mpi 21 . . 3 (𝐵𝑊 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵)
54 domwdom 9546 . . 3 ({𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼ 𝐵 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
551, 53, 543syl 19 . 2 (𝜑 → {𝑧𝐵𝑧 / 𝑦𝑋𝐴} ≼* 𝐵)
56 wdomtr 9547 . 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 2145  wral 3076  wrex 3086  {crab 3412  Vcvv 3450  csb 3847  wss 3899   class class class wbr 5103  cmpt 5186   × cxp 5653  wf 6529  ontowfo 6531  cfv 6533  cdom 8950  * cwdom 9536
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 2213  ax-ext 2732  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7736
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-en 8953  df-dom 8954  df-sdom 8955  df-wdom 9537
This theorem is used by:  wdomd  9553  brwdom3  9554  unwdomg  9556  xpwdomg  9557  wdom2d2  43876
  Copyright terms: Public domain W3C validator