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

Theorem exmidfodomrlemim 7547
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 7027 . . . . 5 (𝑦𝑥 → ∃𝑔 𝑔:𝑦1-1𝑥)
21ad2antll 495 . . . 4 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑔 𝑔:𝑦1-1𝑥)
3 df-f1 5380 . . . . . . . . . . . . . . . . 17 (𝑔:𝑦1-1𝑥 ↔ (𝑔:𝑦𝑥 ∧ Fun 𝑔))
43simprbi 275 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → Fun 𝑔)
5 vex 2824 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ V
65fconst 5586 . . . . . . . . . . . . . . . . 17 ((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧}
7 ffun 5534 . . . . . . . . . . . . . . . . 17 (((𝑥 ∖ ran 𝑔) × {𝑧}):(𝑥 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝑥 ∖ ran 𝑔) × {𝑧}))
86, 7ax-mp 5 . . . . . . . . . . . . . . . 16 Fun ((𝑥 ∖ ran 𝑔) × {𝑧})
94, 8jctir 313 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → (Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})))
10 df-rn 4783 . . . . . . . . . . . . . . . . . 18 ran 𝑔 = dom 𝑔
1110eqcomi 2242 . . . . . . . . . . . . . . . . 17 dom 𝑔 = ran 𝑔
125snm 3831 . . . . . . . . . . . . . . . . . 18 𝑤 𝑤 ∈ {𝑧}
13 dmxpm 5000 . . . . . . . . . . . . . . . . . 18 (∃𝑤 𝑤 ∈ {𝑧} → dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔))
1412, 13ax-mp 5 . . . . . . . . . . . . . . . . 17 dom ((𝑥 ∖ ran 𝑔) × {𝑧}) = (𝑥 ∖ ran 𝑔)
1511, 14ineq12i 3430 . . . . . . . . . . . . . . . 16 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔))
16 disjdif 3599 . . . . . . . . . . . . . . . 16 (ran 𝑔 ∩ (𝑥 ∖ ran 𝑔)) = ∅
1715, 16eqtri 2259 . . . . . . . . . . . . . . 15 (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅
18 funun 5420 . . . . . . . . . . . . . . 15 (((Fun 𝑔 ∧ Fun ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ (dom 𝑔 ∩ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = ∅) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
199, 17, 18sylancl 417 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
2019adantl 277 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})))
21 dmun 4986 . . . . . . . . . . . . . . 15 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2210uneq1i 3379 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (dom 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧}))
2314uneq2i 3380 . . . . . . . . . . . . . . 15 (ran 𝑔 ∪ dom ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
2421, 22, 233eqtr2i 2265 . . . . . . . . . . . . . 14 dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔))
25 f1rn 5597 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → ran 𝑔𝑥)
2625adantl 277 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran 𝑔𝑥)
27 exmidexmid 4331 . . . . . . . . . . . . . . . . 17 (EXMIDDECID 𝑢 ∈ ran 𝑔)
2827ralrimivw 2624 . . . . . . . . . . . . . . . 16 (EXMID → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
2928ad2antrr 492 . . . . . . . . . . . . . . 15 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔)
30 undifdcss 7224 . . . . . . . . . . . . . . 15 (𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)) ↔ (ran 𝑔𝑥 ∧ ∀𝑢𝑥 DECID 𝑢 ∈ ran 𝑔))
3126, 29, 30sylanbrc 421 . . . . . . . . . . . . . 14 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → 𝑥 = (ran 𝑔 ∪ (𝑥 ∖ ran 𝑔)))
3224, 31eqtr4id 2290 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥)
33 df-fn 5378 . . . . . . . . . . . . 13 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ↔ (Fun (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∧ dom (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑥))
3420, 32, 33sylanbrc 421 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥)
35 rnun 5194 . . . . . . . . . . . . 13 ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧}))
36 dfdm4 4971 . . . . . . . . . . . . . . . 16 dom 𝑔 = ran 𝑔
37 f1dm 5601 . . . . . . . . . . . . . . . 16 (𝑔:𝑦1-1𝑥 → dom 𝑔 = 𝑦)
3836, 37eqtr3id 2285 . . . . . . . . . . . . . . 15 (𝑔:𝑦1-1𝑥 → ran 𝑔 = 𝑦)
3938uneq1d 3382 . . . . . . . . . . . . . 14 (𝑔:𝑦1-1𝑥 → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})))
40 exmidexmid 4331 . . . . . . . . . . . . . . . . . 18 (EXMIDDECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔))
41 exmiddc 848 . . . . . . . . . . . . . . . . . 18 (DECID𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
4240, 41syl 14 . . . . . . . . . . . . . . . . 17 (EXMID → (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)))
43 rnxpm 5215 . . . . . . . . . . . . . . . . . . . . 21 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
4443adantr 276 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = {𝑧})
45 snssi 3857 . . . . . . . . . . . . . . . . . . . . 21 (𝑧𝑦 → {𝑧} ⊆ 𝑦)
4645adantl 277 . . . . . . . . . . . . . . . . . . . 20 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → {𝑧} ⊆ 𝑦)
4744, 46eqsstrd 3284 . . . . . . . . . . . . . . . . . . 19 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∧ 𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
4847ex 115 . . . . . . . . . . . . . . . . . 18 (∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
49 notm0 3542 . . . . . . . . . . . . . . . . . . 19 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ↔ (𝑥 ∖ ran 𝑔) = ∅)
50 xpeq1 4786 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧}))
51 0xp 4853 . . . . . . . . . . . . . . . . . . . . . . . 24 (∅ × {𝑧}) = ∅
5250, 51eqtrdi 2287 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑥 ∖ ran 𝑔) = ∅ → ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
5352rneqd 5009 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ran ∅)
54 rn0 5036 . . . . . . . . . . . . . . . . . . . . . 22 ran ∅ = ∅
5553, 54eqtrdi 2287 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) = ∅)
56 0ss 3561 . . . . . . . . . . . . . . . . . . . . 21 ∅ ⊆ 𝑦
5755, 56eqsstrdi 3300 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∖ ran 𝑔) = ∅ → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
5857a1d 22 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∖ ran 𝑔) = ∅ → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
5949, 58sylbi 121 . . . . . . . . . . . . . . . . . 18 (¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6048, 59jaoi 728 . . . . . . . . . . . . . . . . 17 ((∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔) ∨ ¬ ∃𝑣 𝑣 ∈ (𝑥 ∖ ran 𝑔)) → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6142, 60syl 14 . . . . . . . . . . . . . . . 16 (EXMID → (𝑧𝑦 → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦))
6261imp 124 . . . . . . . . . . . . . . 15 ((EXMID𝑧𝑦) → ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦)
63 ssequn2 3402 . . . . . . . . . . . . . . 15 (ran ((𝑥 ∖ ran 𝑔) × {𝑧}) ⊆ 𝑦 ↔ (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6462, 63sylib 122 . . . . . . . . . . . . . 14 ((EXMID𝑧𝑦) → (𝑦 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6539, 64sylan9eqr 2293 . . . . . . . . . . . . 13 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (ran 𝑔 ∪ ran ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
6635, 65eqtrid 2283 . . . . . . . . . . . 12 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦)
67 df-fo 5381 . . . . . . . . . . . 12 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 ↔ ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) Fn 𝑥 ∧ ran (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) = 𝑦))
6834, 66, 67sylanbrc 421 . . . . . . . . . . 11 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦)
69 vex 2824 . . . . . . . . . . . . . 14 𝑔 ∈ V
7069cnvex 5324 . . . . . . . . . . . . 13 𝑔 ∈ V
71 vex 2824 . . . . . . . . . . . . . . 15 𝑥 ∈ V
72 difexg 4273 . . . . . . . . . . . . . . 15 (𝑥 ∈ V → (𝑥 ∖ ran 𝑔) ∈ V)
7371, 72ax-mp 5 . . . . . . . . . . . . . 14 (𝑥 ∖ ran 𝑔) ∈ V
745snex 4320 . . . . . . . . . . . . . 14 {𝑧} ∈ V
7573, 74xpex 4889 . . . . . . . . . . . . 13 ((𝑥 ∖ ran 𝑔) × {𝑧}) ∈ V
7670, 75unex 4585 . . . . . . . . . . . 12 (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) ∈ V
77 foeq1 5609 . . . . . . . . . . . 12 (𝑓 = (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝑥onto𝑦 ↔ (𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦))
7876, 77spcev 2920 . . . . . . . . . . 11 ((𝑔 ∪ ((𝑥 ∖ ran 𝑔) × {𝑧})):𝑥onto𝑦 → ∃𝑓 𝑓:𝑥onto𝑦)
7968, 78syl 14 . . . . . . . . . 10 (((EXMID𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8079an32s 574 . . . . . . . . 9 (((EXMID𝑔:𝑦1-1𝑥) ∧ 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8180ex 115 . . . . . . . 8 ((EXMID𝑔:𝑦1-1𝑥) → (𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8281exlimdv 1872 . . . . . . 7 ((EXMID𝑔:𝑦1-1𝑥) → (∃𝑧 𝑧𝑦 → ∃𝑓 𝑓:𝑥onto𝑦))
8382imp 124 . . . . . 6 (((EXMID𝑔:𝑦1-1𝑥) ∧ ∃𝑧 𝑧𝑦) → ∃𝑓 𝑓:𝑥onto𝑦)
8483an32s 574 . . . . 5 (((EXMID ∧ ∃𝑧 𝑧𝑦) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
8584adantlrr 487 . . . 4 (((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) ∧ 𝑔:𝑦1-1𝑥) → ∃𝑓 𝑓:𝑥onto𝑦)
862, 85exlimddv 1954 . . 3 ((EXMID ∧ (∃𝑧 𝑧𝑦𝑦𝑥)) → ∃𝑓 𝑓:𝑥onto𝑦)
8786ex 115 . 2 (EXMID → ((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
8887alrimivv 1928 1 (EXMID → ∀𝑥𝑦((∃𝑧 𝑧𝑦𝑦𝑥) → ∃𝑓 𝑓:𝑥onto𝑦))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wo 720  DECID wdc 846  wal 1400   = wceq 1402  wex 1545  wcel 2209  wral 2528  Vcvv 2821  cdif 3217  cun 3218  cin 3219  wss 3220  c0 3520  {csn 3708   class class class wbr 4128  EXMIDwem 4329   × cxp 4770  ccnv 4771  dom cdm 4772  ran crn 4773  Fun wfun 5369   Fn wfn 5370  wf 5371  1-1wf1 5372  ontowfo 5373  cdom 7015
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 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-sep 4247  ax-nul 4257  ax-pow 4309  ax-pr 4344  ax-un 4576
This theorem depends on definitions:  df-bi 117  df-dc 847  df-3an 1011  df-tru 1405  df-fal 1408  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ral 2533  df-rex 2534  df-rab 2537  df-v 2823  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-pw 3690  df-sn 3714  df-pr 3715  df-op 3717  df-uni 3934  df-br 4129  df-opab 4191  df-mpt 4192  df-exmid 4330  df-id 4436  df-xp 4778  df-rel 4779  df-cnv 4780  df-co 4781  df-dm 4782  df-rn 4783  df-fun 5377  df-fn 5378  df-f 5379  df-f1 5380  df-fo 5381  df-dom 7018
This theorem is referenced by:  exmidfodomr  7550
  Copyright terms: Public domain W3C validator