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

Theorem exmidfodomrlemim 6764
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 6412 . . . . 5 (𝑦𝑥 → ∃𝑔 𝑔:𝑦1-1𝑥)
21ad2antll 475 . . . 4 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑔 𝑔:𝑦1-1𝑥)
3 df-f1 4983 . . . . . . . . . . . . . . . . 17 (𝑔:𝑦1-1𝑥 ↔ (𝑔:𝑦𝑥 ∧ Fun 𝑔))
43simprbi 269 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → Fun 𝑔)
5 vex 2618 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ V
65fconst 5163 . . . . . . . . . . . . . . . . 17 ((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧}
7 ffun 5126 . . . . . . . . . . . . . . . . 17 (((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝑥 ∖ ran 𝑔) × {𝑧}))
86, 7ax-mp 7 . . . . . . . . . . . . . . . 16 Fun ((𝑥 ∖ ran 𝑔) × {𝑧})
94, 8jctir 306 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → (Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})))
10 df-rn 4421 . . . . . . . . . . . . . . . . . 18 ran 𝑔 = dom 𝑔
1110eqcomi 2089 . . . . . . . . . . . . . . . . 17 dom 𝑔 = ran 𝑔
125snm 3543 . . . . . . . . . . . . . . . . . 18 𝑤 𝑤 ∈ {𝑧}
13 dmxpm 4623 . . . . . . . . . . . . . . . . . 18 (∃𝑤 𝑤 ∈ {𝑧} → dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔))
1412, 13ax-mp 7 . . . . . . . . . . . . . . . . 17 dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔)
1511, 14ineq12i 3188 . . . . . . . . . . . . . . . 16 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔))
16 disjdif 3343 . . . . . . . . . . . . . . . 16 (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔)) = ∅
1715, 16eqtri 2105 . . . . . . . . . . . . . . 15 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅
18 funun 5020 . . . . . . . . . . . . . . 15 (((Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
199, 17, 18sylancl 404 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
2019adantl 271 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
21 f1rn 5174 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → ran 𝑔𝑥)
2221adantl 271 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran 𝑔𝑥)
23 exmidexmid 4004 . . . . . . . . . . . . . . . . 17 (EXMIDDECID 𝑢 ∈ ran 𝑔)
2423ralrimivw 2443 . . . . . . . . . . . . . . . 16 (EXMID → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
2524ad2antrr 472 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
26 undifdcss 6579 . . . . . . . . . . . . . . 15 (𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)) ↔ (ran 𝑔𝑥 ∧ ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔))
2722, 25, 26sylanbrc 408 . . . . . . . . . . . . . 14 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → 𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)))
28 dmun 4610 . . . . . . . . . . . . . . 15 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2910uneq1i 3139 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
3014uneq2i 3140 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
3128, 29, 303eqtr2i 2111 . . . . . . . . . . . . . 14 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
3227, 31syl6reqr 2136 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥)
33 df-fn 4981 . . . . . . . . . . . . 13 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ↔ (Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥))
3420, 32, 33sylanbrc 408 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥)
35 rnun 4803 . . . . . . . . . . . . 13 ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧}))
36 dfdm4 4595 . . . . . . . . . . . . . . . 16 dom 𝑔 = ran 𝑔
37 f1dm 5178 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → dom 𝑔 = 𝑦)
3836, 37syl5eqr 2131 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → ran 𝑔 = 𝑦)
3938uneq1d 3142 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})))
40 exmidexmid 4004 . . . . . . . . . . . . . . . . . 18 (EXMIDDECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔))
41 exmiddc 780 . . . . . . . . . . . . . . . . . 18 (DECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
4240, 41syl 14 . . . . . . . . . . . . . . . . 17 (EXMID → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
43 rnxpm 4823 . . . . . . . . . . . . . . . . . . . . 21 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
4443adantr 270 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
45 snssi 3564 . . . . . . . . . . . . . . . . . . . . 21 (𝑧𝑦 → {𝑧} ⊆ 𝑦)
4645adantl 271 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → {𝑧} ⊆ 𝑦)
4744, 46eqsstrd 3049 . . . . . . . . . . . . . . . . . . 19 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
4847ex 113 . . . . . . . . . . . . . . . . . 18 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
49 notm0 3292 . . . . . . . . . . . . . . . . . . 19 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ↔ (𝑥 ∖ ran 𝑔) = ∅)
50 xpeq1 4424 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧}))
51 0xp 4485 . . . . . . . . . . . . . . . . . . . . . . . 24 (∅ × {𝑧}) = ∅
5250, 51syl6eq 2133 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
5352rneqd 4631 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ran ∅)
54 rn0 4656 . . . . . . . . . . . . . . . . . . . . . 22 ran ∅ = ∅
5553, 54syl6eq 2133 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
56 0ss 3309 . . . . . . . . . . . . . . . . . . . . 21 ∅ ⊆ 𝑦
5755, 56syl6eqss 3065 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
5857a1d 22 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∖ ran 𝑔) = ∅ → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
5949, 58sylbi 119 . . . . . . . . . . . . . . . . . 18 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6048, 59jaoi 669 . . . . . . . . . . . . . . . . 17 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6142, 60syl 14 . . . . . . . . . . . . . . . 16 (EXMID → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6261imp 122 . . . . . . . . . . . . . . 15 ((EXMID𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
63 ssequn2 3162 . . . . . . . . . . . . . . 15 (ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦 ↔ (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6462, 63sylib 120 . . . . . . . . . . . . . 14 ((EXMID𝑧𝑦) → (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6539, 64sylan9eqr 2139 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6635, 65syl5eq 2129 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
67 df-fo 4984 . . . . . . . . . . . 12 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 ↔ ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ∧ ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦))
6834, 66, 67sylanbrc 408 . . . . . . . . . . 11 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦)
69 vex 2618 . . . . . . . . . . . . . 14 𝑔 ∈ V
7069cnvex 4932 . . . . . . . . . . . . 13 𝑔 ∈ V
71 vex 2618 . . . . . . . . . . . . . . 15 𝑥 ∈ V
72 difexg 3954 . . . . . . . . . . . . . . 15 (𝑥 ∈ V → (𝑥 ∖ ran 𝑔) ∈ V)
7371, 72ax-mp 7 . . . . . . . . . . . . . 14 (𝑥 ∖ ran 𝑔) ∈ V
745snex 3993 . . . . . . . . . . . . . 14 {𝑧} ∈ V
7573, 74xpex 4520 . . . . . . . . . . . . 13 ((𝑥 ∖ ran 𝑔) × {𝑧}) ∈ V
7670, 75unex 4239 . . . . . . . . . . . 12 (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∈ V
77 foeq1 5186 . . . . . . . . . . . 12 (𝑓 = (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝑥onto𝑦 ↔ (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦))
7876, 77spcev 2706 . . . . . . . . . . 11 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 → ∃𝑓 𝑓:𝑥onto𝑦)
7968, 78syl 14 . . . . . . . . . 10 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8079an32s 533 . . . . . . . . 9 (((EXMID𝑔:𝑦1-1𝑥) ∧ 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8180ex 113 . . . . . . . 8 ((EXMID𝑔:𝑦1-1𝑥) → (𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8281exlimdv 1744 . . . . . . 7 ((EXMID𝑔:𝑦1-1𝑥) → (∃𝑧 𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8382imp 122 . . . . . 6 (((EXMID𝑔:𝑦1-1𝑥) ∧ ∃𝑧 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8483an32s 533 . . . . 5 (((EXMID ∧ ∃𝑧 𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8584adantlrr 467 . . . 4 (((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
862, 85exlimddv 1823 . . 3 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑓 𝑓:𝑥onto𝑦)
8786ex 113 . 2 (EXMID → ((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
8887alrimivv 1800 1 (EXMID → ∀𝑥𝑦((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 102  wo 662  DECID wdc 778  wal 1285   = wceq 1287  wex 1424  wcel 1436  wral 2355  Vcvv 2615  cdif 2985  cun 2986  cin 2987  wss 2988  c0 3275  {csn 3431   class class class wbr 3820  EXMIDwem 4002   × cxp 4408  ccnv 4409  dom cdm 4410  ran crn 4411  Fun wfun 4972   Fn wfn 4973  wf 4974  1-1wf1 4975  ontowfo 4976  cdom 6402
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 577  ax-in2 578  ax-io 663  ax-5 1379  ax-7 1380  ax-gen 1381  ax-ie1 1425  ax-ie2 1426  ax-8 1438  ax-10 1439  ax-11 1440  ax-i12 1441  ax-bndl 1442  ax-4 1443  ax-13 1447  ax-14 1448  ax-17 1462  ax-i9 1466  ax-ial 1470  ax-i5r 1471  ax-ext 2067  ax-sep 3931  ax-nul 3939  ax-pow 3983  ax-pr 4009  ax-un 4233
This theorem depends on definitions:  df-bi 115  df-dc 779  df-3an 924  df-tru 1290  df-fal 1293  df-nf 1393  df-sb 1690  df-eu 1948  df-mo 1949  df-clab 2072  df-cleq 2078  df-clel 2081  df-nfc 2214  df-ral 2360  df-rex 2361  df-rab 2364  df-v 2617  df-dif 2990  df-un 2992  df-in 2994  df-ss 3001  df-nul 3276  df-pw 3417  df-sn 3437  df-pr 3438  df-op 3440  df-uni 3637  df-br 3821  df-opab 3875  df-mpt 3876  df-exmid 4003  df-id 4093  df-xp 4416  df-rel 4417  df-cnv 4418  df-co 4419  df-dm 4420  df-rn 4421  df-fun 4980  df-fn 4981  df-f 4982  df-f1 4983  df-fo 4984  df-dom 6405
This theorem is referenced by:  exmidfodomr  6767
  Copyright terms: Public domain W3C validator