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

Theorem fodomfib 9323
Description: Equivalence of an onto mapping and dominance for a nonempty finite set. Unlike fodomb 10608 for arbitrary sets, this theorem does not require the Axiom of Replacement nor the Axiom of Power Sets nor the Axiom of Choice for its proof. (Contributed by NM, 23-Mar-2006.) Avoid ax-pow 5326. (Revised by BTernaryTau, 23-Jun-2025.)
Assertion
Ref Expression
fodomfib (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) ↔ (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
Distinct variable groups:   𝐴,𝑓   𝐵,𝑓

Proof of Theorem fodomfib
StepHypRef Expression
1 fof 6796 . . . . . . . . . . . . 13 (𝑓:𝐴–onto→𝐵 → 𝑓:𝐴⟶𝐵)
21fdmd 6720 . . . . . . . . . . . 12 (𝑓:𝐴–onto→𝐵 → dom 𝑓 = 𝐴)
32eqeq1d 2762 . . . . . . . . . . 11 (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐴 = ∅))
4 dm0rn0 5905 . . . . . . . . . . . 12 (dom 𝑓 = ∅ ↔ ran 𝑓 = ∅)
5 forn 6799 . . . . . . . . . . . . 13 (𝑓:𝐴–onto→𝐵 → ran 𝑓 = 𝐵)
65eqeq1d 2762 . . . . . . . . . . . 12 (𝑓:𝐴–onto→𝐵 → (ran 𝑓 = ∅ ↔ 𝐵 = ∅))
74, 6bitrid 286 . . . . . . . . . . 11 (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐵 = ∅))
83, 7bitr3d 284 . . . . . . . . . 10 (𝑓:𝐴–onto→𝐵 → (𝐴 = ∅ ↔ 𝐵 = ∅))
98necon3bid 2999 . . . . . . . . 9 (𝑓:𝐴–onto→𝐵 → (𝐴 ≠ ∅ ↔ 𝐵 ≠ ∅))
109biimpac 484 . . . . . . . 8 ((𝐴 ≠ ∅ ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅)
1110adantll 727 . . . . . . 7 (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅)
12 vex 3454 . . . . . . . . . . . 12 𝑓 ∈ V
1312rnex 7922 . . . . . . . . . . 11 ran 𝑓 ∈ V
145, 13eqeltrrdi 2869 . . . . . . . . . 10 (𝑓:𝐴–onto→𝐵 → 𝐵 ∈ V)
1514adantl 487 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ∈ V)
16 0sdomg 9128 . . . . . . . . 9 (𝐵 ∈ V → (∅ ≺ 𝐵 ↔ 𝐵 ≠ ∅))
1715, 16syl 18 . . . . . . . 8 ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ↔ 𝐵 ≠ ∅))
1817adantlr 728 . . . . . . 7 (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ↔ 𝐵 ≠ ∅))
1911, 18mpbird 260 . . . . . 6 (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → ∅ ≺ 𝐵)
2019ex 418 . . . . 5 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → ∅ ≺ 𝐵))
21 fodomfi 9307 . . . . . . 7 ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≼ 𝐴)
2221ex 418 . . . . . 6 (𝐴 ∈ Fin → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴))
2322adantr 486 . . . . 5 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴))
2420, 23jcad 522 . . . 4 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
2524exlimdv 1965 . . 3 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (∃𝑓 𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
2625expimpd 459 . 2 (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
27 0fi 9073 . . . . 5 ∅ ∈ Fin
28 sdomdomtrfi 9219 . . . . 5 ((∅ ∈ Fin ∧ ∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴)
2927, 28mp3an1 1477 . . . 4 ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴)
30 0sdomg 9128 . . . 4 (𝐴 ∈ Fin → (∅ ≺ 𝐴 ↔ 𝐴 ≠ ∅))
3129, 30imbitrid 247 . . 3 (𝐴 ∈ Fin → ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → 𝐴 ≠ ∅))
32 fodomfir 9322 . . . 4 ((𝐴 ∈ Fin ∧ ∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵)
33323expib 1140 . . 3 (𝐴 ∈ Fin → ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵))
3431, 33jcad 522 . 2 (𝐴 ∈ Fin → ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → (𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵)))
3526, 34impbid 215 1 (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) ↔ (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1569  ∃wex 1811   ∈ wcel 2144   ≠ wne 2955  Vcvv 3450  ∅c0 4278   class class class wbr 5102  dom cdm 5650  ran crn 5651  –onto→wfo 6536   ≼ cdom 8974   ≺ csdm 8975  Fincfn 8976
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pr 5390  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  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-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-ss 3896  df-pss 4014  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5545  df-eprel 5550  df-po 5558  df-so 5559  df-fr 5603  df-we 5605  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-om 7878  df-1o 8479  df-en 8977  df-dom 8978  df-sdom 8979  df-fin 8980
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator