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

Theorem fodomfi 9196
Description: An onto function implies dominance of domain over range, for finite sets. Unlike fodomg 10413 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.) (Proof shortened by Mario Carneiro, 16-Nov-2014.) Avoid ax-pow 5301. (Revised by BTernaryTau, 20-Jun-2025.)
Assertion
Ref Expression
fodomfi ((𝐴 ∈ Fin ∧ 𝐹:𝐴onto𝐵) → 𝐵𝐴)

Proof of Theorem fodomfi
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 foima 6740 . . 3 (𝐹:𝐴onto𝐵 → (𝐹𝐴) = 𝐵)
21adantl 481 . 2 ((𝐴 ∈ Fin ∧ 𝐹:𝐴onto𝐵) → (𝐹𝐴) = 𝐵)
3 imaeq2 6004 . . . . . . 7 (𝑥 = ∅ → (𝐹𝑥) = (𝐹 “ ∅))
4 ima0 6025 . . . . . . 7 (𝐹 “ ∅) = ∅
53, 4eqtrdi 2782 . . . . . 6 (𝑥 = ∅ → (𝐹𝑥) = ∅)
6 id 22 . . . . . 6 (𝑥 = ∅ → 𝑥 = ∅)
75, 6breq12d 5102 . . . . 5 (𝑥 = ∅ → ((𝐹𝑥) ≼ 𝑥 ↔ ∅ ≼ ∅))
87imbi2d 340 . . . 4 (𝑥 = ∅ → ((𝐹 Fn 𝐴 → (𝐹𝑥) ≼ 𝑥) ↔ (𝐹 Fn 𝐴 → ∅ ≼ ∅)))
9 imaeq2 6004 . . . . . 6 (𝑥 = 𝑦 → (𝐹𝑥) = (𝐹𝑦))
10 id 22 . . . . . 6 (𝑥 = 𝑦𝑥 = 𝑦)
119, 10breq12d 5102 . . . . 5 (𝑥 = 𝑦 → ((𝐹𝑥) ≼ 𝑥 ↔ (𝐹𝑦) ≼ 𝑦))
1211imbi2d 340 . . . 4 (𝑥 = 𝑦 → ((𝐹 Fn 𝐴 → (𝐹𝑥) ≼ 𝑥) ↔ (𝐹 Fn 𝐴 → (𝐹𝑦) ≼ 𝑦)))
13 imaeq2 6004 . . . . . 6 (𝑥 = (𝑦 ∪ {𝑧}) → (𝐹𝑥) = (𝐹 “ (𝑦 ∪ {𝑧})))
14 id 22 . . . . . 6 (𝑥 = (𝑦 ∪ {𝑧}) → 𝑥 = (𝑦 ∪ {𝑧}))
1513, 14breq12d 5102 . . . . 5 (𝑥 = (𝑦 ∪ {𝑧}) → ((𝐹𝑥) ≼ 𝑥 ↔ (𝐹 “ (𝑦 ∪ {𝑧})) ≼ (𝑦 ∪ {𝑧})))
1615imbi2d 340 . . . 4 (𝑥 = (𝑦 ∪ {𝑧}) → ((𝐹 Fn 𝐴 → (𝐹𝑥) ≼ 𝑥) ↔ (𝐹 Fn 𝐴 → (𝐹 “ (𝑦 ∪ {𝑧})) ≼ (𝑦 ∪ {𝑧}))))
17 imaeq2 6004 . . . . . 6 (𝑥 = 𝐴 → (𝐹𝑥) = (𝐹𝐴))
18 id 22 . . . . . 6 (𝑥 = 𝐴𝑥 = 𝐴)
1917, 18breq12d 5102 . . . . 5 (𝑥 = 𝐴 → ((𝐹𝑥) ≼ 𝑥 ↔ (𝐹𝐴) ≼ 𝐴))
2019imbi2d 340 . . . 4 (𝑥 = 𝐴 → ((𝐹 Fn 𝐴 → (𝐹𝑥) ≼ 𝑥) ↔ (𝐹 Fn 𝐴 → (𝐹𝐴) ≼ 𝐴)))
21 0ex 5243 . . . . . 6 ∅ ∈ V
22210dom 9020 . . . . 5 ∅ ≼ ∅
2322a1i 11 . . . 4 (𝐹 Fn 𝐴 → ∅ ≼ ∅)
24 fnfun 6581 . . . . . . . . . . . . . 14 (𝐹 Fn 𝐴 → Fun 𝐹)
2524ad2antrl 728 . . . . . . . . . . . . 13 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → Fun 𝐹)
26 funressn 7092 . . . . . . . . . . . . 13 (Fun 𝐹 → (𝐹 ↾ {𝑧}) ⊆ {⟨𝑧, (𝐹𝑧)⟩})
27 rnss 5878 . . . . . . . . . . . . 13 ((𝐹 ↾ {𝑧}) ⊆ {⟨𝑧, (𝐹𝑧)⟩} → ran (𝐹 ↾ {𝑧}) ⊆ ran {⟨𝑧, (𝐹𝑧)⟩})
2825, 26, 273syl 18 . . . . . . . . . . . 12 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ran (𝐹 ↾ {𝑧}) ⊆ ran {⟨𝑧, (𝐹𝑧)⟩})
29 df-ima 5627 . . . . . . . . . . . 12 (𝐹 “ {𝑧}) = ran (𝐹 ↾ {𝑧})
30 vex 3440 . . . . . . . . . . . . . 14 𝑧 ∈ V
3130rnsnop 6171 . . . . . . . . . . . . 13 ran {⟨𝑧, (𝐹𝑧)⟩} = {(𝐹𝑧)}
3231eqcomi 2740 . . . . . . . . . . . 12 {(𝐹𝑧)} = ran {⟨𝑧, (𝐹𝑧)⟩}
3328, 29, 323sstr4g 3983 . . . . . . . . . . 11 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹 “ {𝑧}) ⊆ {(𝐹𝑧)})
34 snfi 8965 . . . . . . . . . . 11 {(𝐹𝑧)} ∈ Fin
35 ssexg 5259 . . . . . . . . . . 11 (((𝐹 “ {𝑧}) ⊆ {(𝐹𝑧)} ∧ {(𝐹𝑧)} ∈ Fin) → (𝐹 “ {𝑧}) ∈ V)
3633, 34, 35sylancl 586 . . . . . . . . . 10 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹 “ {𝑧}) ∈ V)
37 fvi 6898 . . . . . . . . . 10 ((𝐹 “ {𝑧}) ∈ V → ( I ‘(𝐹 “ {𝑧})) = (𝐹 “ {𝑧}))
3836, 37syl 17 . . . . . . . . 9 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ( I ‘(𝐹 “ {𝑧})) = (𝐹 “ {𝑧}))
3938uneq2d 4115 . . . . . . . 8 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ((𝐹𝑦) ∪ ( I ‘(𝐹 “ {𝑧}))) = ((𝐹𝑦) ∪ (𝐹 “ {𝑧})))
40 imaundi 6096 . . . . . . . 8 (𝐹 “ (𝑦 ∪ {𝑧})) = ((𝐹𝑦) ∪ (𝐹 “ {𝑧}))
4139, 40eqtr4di 2784 . . . . . . 7 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ((𝐹𝑦) ∪ ( I ‘(𝐹 “ {𝑧}))) = (𝐹 “ (𝑦 ∪ {𝑧})))
42 simprr 772 . . . . . . . 8 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹𝑦) ≼ 𝑦)
43 ssdomfi 9105 . . . . . . . . . . 11 ({(𝐹𝑧)} ∈ Fin → ((𝐹 “ {𝑧}) ⊆ {(𝐹𝑧)} → (𝐹 “ {𝑧}) ≼ {(𝐹𝑧)}))
4434, 33, 43mpsyl 68 . . . . . . . . . 10 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹 “ {𝑧}) ≼ {(𝐹𝑧)})
45 fvex 6835 . . . . . . . . . . 11 (𝐹𝑧) ∈ V
46 en2sn 8963 . . . . . . . . . . 11 (((𝐹𝑧) ∈ V ∧ 𝑧 ∈ V) → {(𝐹𝑧)} ≈ {𝑧})
4745, 30, 46mp2an 692 . . . . . . . . . 10 {(𝐹𝑧)} ≈ {𝑧}
48 endom 8901 . . . . . . . . . . 11 ({(𝐹𝑧)} ≈ {𝑧} → {(𝐹𝑧)} ≼ {𝑧})
49 domtrfi 9102 . . . . . . . . . . . 12 (({(𝐹𝑧)} ∈ Fin ∧ (𝐹 “ {𝑧}) ≼ {(𝐹𝑧)} ∧ {(𝐹𝑧)} ≼ {𝑧}) → (𝐹 “ {𝑧}) ≼ {𝑧})
5034, 49mp3an1 1450 . . . . . . . . . . 11 (((𝐹 “ {𝑧}) ≼ {(𝐹𝑧)} ∧ {(𝐹𝑧)} ≼ {𝑧}) → (𝐹 “ {𝑧}) ≼ {𝑧})
5148, 50sylan2 593 . . . . . . . . . 10 (((𝐹 “ {𝑧}) ≼ {(𝐹𝑧)} ∧ {(𝐹𝑧)} ≈ {𝑧}) → (𝐹 “ {𝑧}) ≼ {𝑧})
5244, 47, 51sylancl 586 . . . . . . . . 9 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹 “ {𝑧}) ≼ {𝑧})
5338, 52eqbrtrd 5111 . . . . . . . 8 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ( I ‘(𝐹 “ {𝑧})) ≼ {𝑧})
54 simplr 768 . . . . . . . . 9 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ¬ 𝑧𝑦)
55 disjsn 4661 . . . . . . . . 9 ((𝑦 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧𝑦)
5654, 55sylibr 234 . . . . . . . 8 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝑦 ∩ {𝑧}) = ∅)
57 undom 8978 . . . . . . . 8 ((((𝐹𝑦) ≼ 𝑦 ∧ ( I ‘(𝐹 “ {𝑧})) ≼ {𝑧}) ∧ (𝑦 ∩ {𝑧}) = ∅) → ((𝐹𝑦) ∪ ( I ‘(𝐹 “ {𝑧}))) ≼ (𝑦 ∪ {𝑧}))
5842, 53, 56, 57syl21anc 837 . . . . . . 7 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → ((𝐹𝑦) ∪ ( I ‘(𝐹 “ {𝑧}))) ≼ (𝑦 ∪ {𝑧}))
5941, 58eqbrtrrd 5113 . . . . . 6 (((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) ∧ (𝐹 Fn 𝐴 ∧ (𝐹𝑦) ≼ 𝑦)) → (𝐹 “ (𝑦 ∪ {𝑧})) ≼ (𝑦 ∪ {𝑧}))
6059exp32 420 . . . . 5 ((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) → (𝐹 Fn 𝐴 → ((𝐹𝑦) ≼ 𝑦 → (𝐹 “ (𝑦 ∪ {𝑧})) ≼ (𝑦 ∪ {𝑧}))))
6160a2d 29 . . . 4 ((𝑦 ∈ Fin ∧ ¬ 𝑧𝑦) → ((𝐹 Fn 𝐴 → (𝐹𝑦) ≼ 𝑦) → (𝐹 Fn 𝐴 → (𝐹 “ (𝑦 ∪ {𝑧})) ≼ (𝑦 ∪ {𝑧}))))
628, 12, 16, 20, 23, 61findcard2s 9075 . . 3 (𝐴 ∈ Fin → (𝐹 Fn 𝐴 → (𝐹𝐴) ≼ 𝐴))
63 fofn 6737 . . 3 (𝐹:𝐴onto𝐵𝐹 Fn 𝐴)
6462, 63impel 505 . 2 ((𝐴 ∈ Fin ∧ 𝐹:𝐴onto𝐵) → (𝐹𝐴) ≼ 𝐴)
652, 64eqbrtrrd 5113 1 ((𝐴 ∈ Fin ∧ 𝐹:𝐴onto𝐵) → 𝐵𝐴)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 395   = wceq 1541  wcel 2111  Vcvv 3436  cun 3895  cin 3896  wss 3897  c0 4280  {csn 4573  cop 4579   class class class wbr 5089   I cid 5508  ran crn 5615  cres 5616  cima 5617  Fun wfun 6475   Fn wfn 6476  ontowfo 6479  cfv 6481  cen 8866  cdom 8867  Fincfn 8869
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-sep 5232  ax-nul 5242  ax-pr 5368  ax-un 7668
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-ral 3048  df-rex 3057  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3737  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3917  df-nul 4281  df-if 4473  df-pw 4549  df-sn 4574  df-pr 4576  df-op 4580  df-uni 4857  df-br 5090  df-opab 5152  df-tr 5197  df-id 5509  df-eprel 5514  df-po 5522  df-so 5523  df-fr 5567  df-we 5569  df-xp 5620  df-rel 5621  df-cnv 5622  df-co 5623  df-dm 5624  df-rn 5625  df-res 5626  df-ima 5627  df-ord 6309  df-on 6310  df-lim 6311  df-suc 6312  df-iota 6437  df-fun 6483  df-fn 6484  df-f 6485  df-f1 6486  df-fo 6487  df-f1o 6488  df-fv 6489  df-om 7797  df-1o 8385  df-en 8870  df-dom 8871  df-fin 8873
This theorem is referenced by:  fofi  9197  fodomfib  9213  fodomfibOLD  9215  fofinf1o  9216  fidomdm  9218  cmpsub  23315  alexsubALT  23966  phpreu  37654  poimirlem26  37696  imadomfi  42105
  Copyright terms: Public domain W3C validator