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

Theorem exmidfodomrlemim 7367
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 6888 . . . . 5 (𝑦𝑥 → ∃𝑔 𝑔:𝑦1-1𝑥)
21ad2antll 491 . . . 4 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑔 𝑔:𝑦1-1𝑥)
3 df-f1 5319 . . . . . . . . . . . . . . . . 17 (𝑔:𝑦1-1𝑥 ↔ (𝑔:𝑦𝑥 ∧ Fun 𝑔))
43simprbi 275 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → Fun 𝑔)
5 vex 2802 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ V
65fconst 5517 . . . . . . . . . . . . . . . . 17 ((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧}
7 ffun 5472 . . . . . . . . . . . . . . . . 17 (((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝑥 ∖ ran 𝑔) × {𝑧}))
86, 7ax-mp 5 . . . . . . . . . . . . . . . 16 Fun ((𝑥 ∖ ran 𝑔) × {𝑧})
94, 8jctir 313 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → (Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})))
10 df-rn 4727 . . . . . . . . . . . . . . . . . 18 ran 𝑔 = dom 𝑔
1110eqcomi 2233 . . . . . . . . . . . . . . . . 17 dom 𝑔 = ran 𝑔
125snm 3786 . . . . . . . . . . . . . . . . . 18 𝑤 𝑤 ∈ {𝑧}
13 dmxpm 4940 . . . . . . . . . . . . . . . . . 18 (∃𝑤 𝑤 ∈ {𝑧} → dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔))
1412, 13ax-mp 5 . . . . . . . . . . . . . . . . 17 dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔)
1511, 14ineq12i 3403 . . . . . . . . . . . . . . . 16 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔))
16 disjdif 3564 . . . . . . . . . . . . . . . 16 (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔)) = ∅
1715, 16eqtri 2250 . . . . . . . . . . . . . . 15 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅
18 funun 5358 . . . . . . . . . . . . . . 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 4927 . . . . . . . . . . . . . . 15 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2210uneq1i 3354 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2314uneq2i 3355 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
2421, 22, 233eqtr2i 2256 . . . . . . . . . . . . . 14 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
25 f1rn 5528 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → ran 𝑔𝑥)
2625adantl 277 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran 𝑔𝑥)
27 exmidexmid 4279 . . . . . . . . . . . . . . . . 17 (EXMIDDECID 𝑢 ∈ ran 𝑔)
2827ralrimivw 2604 . . . . . . . . . . . . . . . 16 (EXMID → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
2928ad2antrr 488 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
30 undifdcss 7073 . . . . . . . . . . . . . . 15 (𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)) ↔ (ran 𝑔𝑥 ∧ ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔))
3126, 29, 30sylanbrc 417 . . . . . . . . . . . . . 14 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → 𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)))
3224, 31eqtr4id 2281 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥)
33 df-fn 5317 . . . . . . . . . . . . 13 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ↔ (Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥))
3420, 32, 33sylanbrc 417 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥)
35 rnun 5133 . . . . . . . . . . . . 13 ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧}))
36 dfdm4 4912 . . . . . . . . . . . . . . . 16 dom 𝑔 = ran 𝑔
37 f1dm 5532 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → dom 𝑔 = 𝑦)
3836, 37eqtr3id 2276 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → ran 𝑔 = 𝑦)
3938uneq1d 3357 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})))
40 exmidexmid 4279 . . . . . . . . . . . . . . . . . 18 (EXMIDDECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔))
41 exmiddc 841 . . . . . . . . . . . . . . . . . 18 (DECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
4240, 41syl 14 . . . . . . . . . . . . . . . . 17 (EXMID → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
43 rnxpm 5154 . . . . . . . . . . . . . . . . . . . . 21 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
4443adantr 276 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
45 snssi 3811 . . . . . . . . . . . . . . . . . . . . 21 (𝑧𝑦 → {𝑧} ⊆ 𝑦)
4645adantl 277 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → {𝑧} ⊆ 𝑦)
4744, 46eqsstrd 3260 . . . . . . . . . . . . . . . . . . 19 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
4847ex 115 . . . . . . . . . . . . . . . . . 18 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
49 notm0 3512 . . . . . . . . . . . . . . . . . . 19 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ↔ (𝑥 ∖ ran 𝑔) = ∅)
50 xpeq1 4730 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧}))
51 0xp 4796 . . . . . . . . . . . . . . . . . . . . . . . 24 (∅ × {𝑧}) = ∅
5250, 51eqtrdi 2278 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
5352rneqd 4949 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ran ∅)
54 rn0 4976 . . . . . . . . . . . . . . . . . . . . . 22 ran ∅ = ∅
5553, 54eqtrdi 2278 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
56 0ss 3530 . . . . . . . . . . . . . . . . . . . . 21 ∅ ⊆ 𝑦
5755, 56eqsstrdi 3276 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
5857a1d 22 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∖ ran 𝑔) = ∅ → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
5949, 58sylbi 121 . . . . . . . . . . . . . . . . . 18 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6048, 59jaoi 721 . . . . . . . . . . . . . . . . 17 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6142, 60syl 14 . . . . . . . . . . . . . . . 16 (EXMID → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6261imp 124 . . . . . . . . . . . . . . 15 ((EXMID𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
63 ssequn2 3377 . . . . . . . . . . . . . . 15 (ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦 ↔ (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6462, 63sylib 122 . . . . . . . . . . . . . 14 ((EXMID𝑧𝑦) → (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6539, 64sylan9eqr 2284 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6635, 65eqtrid 2274 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
67 df-fo 5320 . . . . . . . . . . . 12 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 ↔ ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ∧ ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦))
6834, 66, 67sylanbrc 417 . . . . . . . . . . 11 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦)
69 vex 2802 . . . . . . . . . . . . . 14 𝑔 ∈ V
7069cnvex 5263 . . . . . . . . . . . . 13 𝑔 ∈ V
71 vex 2802 . . . . . . . . . . . . . . 15 𝑥 ∈ V
72 difexg 4224 . . . . . . . . . . . . . . 15 (𝑥 ∈ V → (𝑥 ∖ ran 𝑔) ∈ V)
7371, 72ax-mp 5 . . . . . . . . . . . . . 14 (𝑥 ∖ ran 𝑔) ∈ V
745snex 4268 . . . . . . . . . . . . . 14 {𝑧} ∈ V
7573, 74xpex 4831 . . . . . . . . . . . . 13 ((𝑥 ∖ ran 𝑔) × {𝑧}) ∈ V
7670, 75unex 4529 . . . . . . . . . . . 12 (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∈ V
77 foeq1 5540 . . . . . . . . . . . 12 (𝑓 = (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝑥onto𝑦 ↔ (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦))
7876, 77spcev 2898 . . . . . . . . . . 11 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 → ∃𝑓 𝑓:𝑥onto𝑦)
7968, 78syl 14 . . . . . . . . . 10 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8079an32s 568 . . . . . . . . 9 (((EXMID𝑔:𝑦1-1𝑥) ∧ 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8180ex 115 . . . . . . . 8 ((EXMID𝑔:𝑦1-1𝑥) → (𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8281exlimdv 1865 . . . . . . 7 ((EXMID𝑔:𝑦1-1𝑥) → (∃𝑧 𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8382imp 124 . . . . . 6 (((EXMID𝑔:𝑦1-1𝑥) ∧ ∃𝑧 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8483an32s 568 . . . . 5 (((EXMID ∧ ∃𝑧 𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8584adantlrr 483 . . . 4 (((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
862, 85exlimddv 1945 . . 3 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑓 𝑓:𝑥onto𝑦)
8786ex 115 . 2 (EXMID → ((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
8887alrimivv 1921 1 (EXMID → ∀𝑥𝑦((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wo 713  DECID wdc 839  wal 1393   = wceq 1395  wex 1538  wcel 2200  wral 2508  Vcvv 2799  cdif 3194  cun 3195  cin 3196  wss 3197  c0 3491  {csn 3666   class class class wbr 4082  EXMIDwem 4277   × cxp 4714  ccnv 4715  dom cdm 4716  ran crn 4717  Fun wfun 5308   Fn wfn 5309  wf 5310  1-1wf1 5311  ontowfo 5312  cdom 6876
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 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-13 2202  ax-14 2203  ax-ext 2211  ax-sep 4201  ax-nul 4209  ax-pow 4257  ax-pr 4292  ax-un 4521
This theorem depends on definitions:  df-bi 117  df-dc 840  df-3an 1004  df-tru 1398  df-fal 1401  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ral 2513  df-rex 2514  df-rab 2517  df-v 2801  df-dif 3199  df-un 3201  df-in 3203  df-ss 3210  df-nul 3492  df-pw 3651  df-sn 3672  df-pr 3673  df-op 3675  df-uni 3888  df-br 4083  df-opab 4145  df-mpt 4146  df-exmid 4278  df-id 4381  df-xp 4722  df-rel 4723  df-cnv 4724  df-co 4725  df-dm 4726  df-rn 4727  df-fun 5316  df-fn 5317  df-f 5318  df-f1 5319  df-fo 5320  df-dom 6879
This theorem is referenced by:  exmidfodomr  7370
  Copyright terms: Public domain W3C validator