ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  exmidfodomrlemim GIF version

Theorem exmidfodomrlemim 7517
Description: Excluded middle implies the existence of a mapping from any set onto any inhabited set that it dominates. Proposition 1.1 of [PradicBrown2022], p. 2. (Contributed by Jim Kingdon, 1-Jul-2022.)
Assertion
Ref Expression
exmidfodomrlemim (EXMID → ∀𝑥𝑦((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
Distinct variable groups:   𝑥,𝑓,𝑧   𝑦,𝑓,𝑧

Proof of Theorem exmidfodomrlemim
Dummy variables 𝑔 𝑢 𝑣 𝑤 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 brdomi 6999 . . . . 5 (𝑦𝑥 → ∃𝑔 𝑔:𝑦1-1𝑥)
21ad2antll 491 . . . 4 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑔 𝑔:𝑦1-1𝑥)
3 df-f1 5362 . . . . . . . . . . . . . . . . 17 (𝑔:𝑦1-1𝑥 ↔ (𝑔:𝑦𝑥 ∧ Fun 𝑔))
43simprbi 275 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → Fun 𝑔)
5 vex 2818 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ V
65fconst 5568 . . . . . . . . . . . . . . . . 17 ((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧}
7 ffun 5516 . . . . . . . . . . . . . . . . 17 (((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝑥 ∖ ran 𝑔) × {𝑧}))
86, 7ax-mp 5 . . . . . . . . . . . . . . . 16 Fun ((𝑥 ∖ ran 𝑔) × {𝑧})
94, 8jctir 313 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → (Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})))
10 df-rn 4765 . . . . . . . . . . . . . . . . . 18 ran 𝑔 = dom 𝑔
1110eqcomi 2238 . . . . . . . . . . . . . . . . 17 dom 𝑔 = ran 𝑔
125snm 3817 . . . . . . . . . . . . . . . . . 18 𝑤 𝑤 ∈ {𝑧}
13 dmxpm 4982 . . . . . . . . . . . . . . . . . 18 (∃𝑤 𝑤 ∈ {𝑧} → dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔))
1412, 13ax-mp 5 . . . . . . . . . . . . . . . . 17 dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔)
1511, 14ineq12i 3424 . . . . . . . . . . . . . . . 16 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔))
16 disjdif 3585 . . . . . . . . . . . . . . . 16 (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔)) = ∅
1715, 16eqtri 2255 . . . . . . . . . . . . . . 15 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅
18 funun 5402 . . . . . . . . . . . . . . 15 (((Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
199, 17, 18sylancl 413 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
2019adantl 277 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
21 dmun 4968 . . . . . . . . . . . . . . 15 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2210uneq1i 3373 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2314uneq2i 3374 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
2421, 22, 233eqtr2i 2261 . . . . . . . . . . . . . 14 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
25 f1rn 5579 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → ran 𝑔𝑥)
2625adantl 277 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran 𝑔𝑥)
27 exmidexmid 4314 . . . . . . . . . . . . . . . . 17 (EXMIDDECID 𝑢 ∈ ran 𝑔)
2827ralrimivw 2618 . . . . . . . . . . . . . . . 16 (EXMID → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
2928ad2antrr 488 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
30 undifdcss 7196 . . . . . . . . . . . . . . 15 (𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)) ↔ (ran 𝑔𝑥 ∧ ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔))
3126, 29, 30sylanbrc 417 . . . . . . . . . . . . . 14 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → 𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)))
3224, 31eqtr4id 2286 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥)
33 df-fn 5360 . . . . . . . . . . . . 13 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ↔ (Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥))
3420, 32, 33sylanbrc 417 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥)
35 rnun 5176 . . . . . . . . . . . . 13 ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧}))
36 dfdm4 4953 . . . . . . . . . . . . . . . 16 dom 𝑔 = ran 𝑔
37 f1dm 5583 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → dom 𝑔 = 𝑦)
3836, 37eqtr3id 2281 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → ran 𝑔 = 𝑦)
3938uneq1d 3376 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})))
40 exmidexmid 4314 . . . . . . . . . . . . . . . . . 18 (EXMIDDECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔))
41 exmiddc 844 . . . . . . . . . . . . . . . . . 18 (DECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
4240, 41syl 14 . . . . . . . . . . . . . . . . 17 (EXMID → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
43 rnxpm 5197 . . . . . . . . . . . . . . . . . . . . 21 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
4443adantr 276 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
45 snssi 3843 . . . . . . . . . . . . . . . . . . . . 21 (𝑧𝑦 → {𝑧} ⊆ 𝑦)
4645adantl 277 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → {𝑧} ⊆ 𝑦)
4744, 46eqsstrd 3278 . . . . . . . . . . . . . . . . . . 19 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
4847ex 115 . . . . . . . . . . . . . . . . . 18 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
49 notm0 3533 . . . . . . . . . . . . . . . . . . 19 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ↔ (𝑥 ∖ ran 𝑔) = ∅)
50 xpeq1 4768 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧}))
51 0xp 4835 . . . . . . . . . . . . . . . . . . . . . . . 24 (∅ × {𝑧}) = ∅
5250, 51eqtrdi 2283 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
5352rneqd 4991 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ran ∅)
54 rn0 5018 . . . . . . . . . . . . . . . . . . . . . 22 ran ∅ = ∅
5553, 54eqtrdi 2283 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
56 0ss 3551 . . . . . . . . . . . . . . . . . . . . 21 ∅ ⊆ 𝑦
5755, 56eqsstrdi 3294 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
5857a1d 22 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∖ ran 𝑔) = ∅ → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
5949, 58sylbi 121 . . . . . . . . . . . . . . . . . 18 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6048, 59jaoi 724 . . . . . . . . . . . . . . . . 17 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6142, 60syl 14 . . . . . . . . . . . . . . . 16 (EXMID → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6261imp 124 . . . . . . . . . . . . . . 15 ((EXMID𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
63 ssequn2 3396 . . . . . . . . . . . . . . 15 (ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦 ↔ (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6462, 63sylib 122 . . . . . . . . . . . . . 14 ((EXMID𝑧𝑦) → (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6539, 64sylan9eqr 2289 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6635, 65eqtrid 2279 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
67 df-fo 5363 . . . . . . . . . . . 12 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 ↔ ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ∧ ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦))
6834, 66, 67sylanbrc 417 . . . . . . . . . . 11 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦)
69 vex 2818 . . . . . . . . . . . . . 14 𝑔 ∈ V
7069cnvex 5306 . . . . . . . . . . . . 13 𝑔 ∈ V
71 vex 2818 . . . . . . . . . . . . . . 15 𝑥 ∈ V
72 difexg 4257 . . . . . . . . . . . . . . 15 (𝑥 ∈ V → (𝑥 ∖ ran 𝑔) ∈ V)
7371, 72ax-mp 5 . . . . . . . . . . . . . 14 (𝑥 ∖ ran 𝑔) ∈ V
745snex 4303 . . . . . . . . . . . . . 14 {𝑧} ∈ V
7573, 74xpex 4871 . . . . . . . . . . . . 13 ((𝑥 ∖ ran 𝑔) × {𝑧}) ∈ V
7670, 75unex 4567 . . . . . . . . . . . 12 (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∈ V
77 foeq1 5591 . . . . . . . . . . . 12 (𝑓 = (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝑥onto𝑦 ↔ (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦))
7876, 77spcev 2914 . . . . . . . . . . 11 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 → ∃𝑓 𝑓:𝑥onto𝑦)
7968, 78syl 14 . . . . . . . . . 10 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8079an32s 570 . . . . . . . . 9 (((EXMID𝑔:𝑦1-1𝑥) ∧ 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8180ex 115 . . . . . . . 8 ((EXMID𝑔:𝑦1-1𝑥) → (𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8281exlimdv 1868 . . . . . . 7 ((EXMID𝑔:𝑦1-1𝑥) → (∃𝑧 𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8382imp 124 . . . . . 6 (((EXMID𝑔:𝑦1-1𝑥) ∧ ∃𝑧 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8483an32s 570 . . . . 5 (((EXMID ∧ ∃𝑧 𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8584adantlrr 483 . . . 4 (((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
862, 85exlimddv 1950 . . 3 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑓 𝑓:𝑥onto𝑦)
8786ex 115 . 2 (EXMID → ((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
8887alrimivv 1924 1 (EXMID → ∀𝑥𝑦((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wo 716  DECID wdc 842  wal 1396   = wceq 1398  wex 1541  wcel 2205  wral 2522  Vcvv 2815  cdif 3211  cun 3212  cin 3213  wss 3214  c0 3512  {csn 3694   class class class wbr 4114  EXMIDwem 4312   × cxp 4752  ccnv 4753  dom cdm 4754  ran crn 4755  Fun wfun 5351   Fn wfn 5352  wf 5353  1-1wf1 5354  ontowfo 5355  cdom 6987
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2207  ax-14 2208  ax-ext 2216  ax-sep 4233  ax-nul 4241  ax-pow 4292  ax-pr 4327  ax-un 4559
This theorem depends on definitions:  df-bi 117  df-dc 843  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1812  df-eu 2085  df-mo 2086  df-clab 2221  df-cleq 2227  df-clel 2230  df-nfc 2375  df-ral 2527  df-rex 2528  df-rab 2531  df-v 2817  df-dif 3216  df-un 3218  df-in 3220  df-ss 3227  df-nul 3513  df-pw 3676  df-sn 3700  df-pr 3701  df-op 3703  df-uni 3920  df-br 4115  df-opab 4177  df-mpt 4178  df-exmid 4313  df-id 4419  df-xp 4760  df-rel 4761  df-cnv 4762  df-co 4763  df-dm 4764  df-rn 4765  df-fun 5359  df-fn 5360  df-f 5361  df-f1 5362  df-fo 5363  df-dom 6990
This theorem is referenced by:  exmidfodomr  7520
  Copyright terms: Public domain W3C validator