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

Theorem fodomfib 9320
Description: Equivalence of an onto mapping and dominance for a nonempty finite set. Unlike fodomb 10605 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 5327. (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 2763 . . . . . . . . . . 11 (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐴 = ∅))
4 dm0rn0 5906 . . . . . . . . . . . 12 (dom 𝑓 = ∅ ↔ ran 𝑓 = ∅)
5 forn 6799 . . . . . . . . . . . . 13 (𝑓:𝐴–onto→𝐵 → ran 𝑓 = 𝐵)
65eqeq1d 2763 . . . . . . . . . . . 12 (𝑓:𝐴–onto→𝐵 → (ran 𝑓 = ∅ ↔ 𝐵 = ∅))
74, 6bitrid 286 . . . . . . . . . . 11 (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐵 = ∅))
83, 7bitr3d 284 . . . . . . . . . 10 (𝑓:𝐴–onto→𝐵 → (𝐴 = ∅ ↔ 𝐵 = ∅))
98necon3bid 3000 . . . . . . . . 9 (𝑓:𝐴–onto→𝐵 → (𝐴 ≠ ∅ ↔ 𝐵 ≠ ∅))
109biimpac 484 . . . . . . . 8 ((𝐴 ≠ ∅ ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅)
1110adantll 727 . . . . . . 7 (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅)
12 vex 3455 . . . . . . . . . . . 12 𝑓 ∈ V
1312rnex 7922 . . . . . . . . . . 11 ran 𝑓 ∈ V
145, 13eqeltrrdi 2870 . . . . . . . . . 10 (𝑓:𝐴–onto→𝐵 → 𝐵 ∈ V)
1514adantl 487 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ∈ V)
16 0sdomg 9125 . . . . . . . . 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 9304 . . . . . . 7 ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≼ 𝐴)
2221ex 418 . . . . . 6 (𝐴 ∈ Fin → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴))
2322adantr 486 . . . . 5 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴))
2420, 23jcad 522 . . . 4 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
2524exlimdv 1966 . . 3 ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (∃𝑓 𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
2625expimpd 459 . 2 (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴)))
27 0fi 9070 . . . . 5 ∅ ∈ Fin
28 sdomdomtrfi 9216 . . . . 5 ((∅ ∈ Fin ∧ ∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴)
2927, 28mp3an1 1477 . . . 4 ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴)
30 0sdomg 9125 . . . 4 (𝐴 ∈ Fin → (∅ ≺ 𝐴 ↔ 𝐴 ≠ ∅))
3129, 30imbitrid 247 . . 3 (𝐴 ∈ Fin → ((∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → 𝐴 ≠ ∅))
32 fodomfir 9319 . . . 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 1570  ∃wex 1812   ∈ wcel 2145   ≠ wne 2956  Vcvv 3451  ∅c0 4279   class class class wbr 5103  dom cdm 5651  ran crn 5652  –onto→wfo 6536   ≼ cdom 8971   ≺ csdm 8972  Fincfn 8973
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391  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 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  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 8476  df-en 8974  df-dom 8975  df-sdom 8976  df-fin 8977
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator