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

Theorem php3 9145
Description: Corollary of Pigeonhole Principle. If 𝐴 is finite and 𝐵 is a proper subset of 𝐴, the 𝐵 is strictly less numerous than 𝐴. Stronger version of Corollary 6C of [Enderton] p. 135. (Contributed by NM, 22-Aug-2008.) Avoid ax-pow 5312. (Revised by BTernaryTau, 26-Nov-2024.)
Assertion
Ref Expression
php3 ((𝐴 ∈ Fin ∧ 𝐵𝐴) → 𝐵𝐴)

Proof of Theorem php3
Dummy variables 𝑓 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 isfi 8924 . . 3 (𝐴 ∈ Fin ↔ ∃𝑥 ∈ ω 𝐴𝑥)
2 bren 8905 . . . . . 6 (𝐴𝑥 ↔ ∃𝑓 𝑓:𝐴1-1-onto𝑥)
3 pssss 4052 . . . . . . . . . . . . . 14 (𝐵𝐴𝐵𝐴)
4 imass2 6069 . . . . . . . . . . . . . 14 (𝐵𝐴 → (𝑓𝐵) ⊆ (𝑓𝐴))
53, 4syl 17 . . . . . . . . . . . . 13 (𝐵𝐴 → (𝑓𝐵) ⊆ (𝑓𝐴))
65adantl 481 . . . . . . . . . . . 12 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊆ (𝑓𝐴))
7 pssnel 4425 . . . . . . . . . . . . . 14 (𝐵𝐴 → ∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵))
8 eldif 3913 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (𝐴𝐵) ↔ (𝑦𝐴 ∧ ¬ 𝑦𝐵))
9 f1ofn 6783 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴1-1-onto𝑥𝑓 Fn 𝐴)
10 difss 4090 . . . . . . . . . . . . . . . . . . . 20 (𝐴𝐵) ⊆ 𝐴
11 fnfvima 7189 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 Fn 𝐴 ∧ (𝐴𝐵) ⊆ 𝐴𝑦 ∈ (𝐴𝐵)) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵)))
12113expia 1122 . . . . . . . . . . . . . . . . . . . 20 ((𝑓 Fn 𝐴 ∧ (𝐴𝐵) ⊆ 𝐴) → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵))))
139, 10, 12sylancl 587 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵))))
14 dff1o3 6788 . . . . . . . . . . . . . . . . . . . . 21 (𝑓:𝐴1-1-onto𝑥 ↔ (𝑓:𝐴onto𝑥 ∧ Fun 𝑓))
15 imadif 6584 . . . . . . . . . . . . . . . . . . . . 21 (Fun 𝑓 → (𝑓 “ (𝐴𝐵)) = ((𝑓𝐴) ∖ (𝑓𝐵)))
1614, 15simplbiim 504 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴1-1-onto𝑥 → (𝑓 “ (𝐴𝐵)) = ((𝑓𝐴) ∖ (𝑓𝐵)))
1716eleq2d 2823 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴1-1-onto𝑥 → ((𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵)) ↔ (𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵))))
1813, 17sylibd 239 . . . . . . . . . . . . . . . . . 18 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵))))
19 n0i 4294 . . . . . . . . . . . . . . . . . 18 ((𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵)) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
2018, 19syl6 35 . . . . . . . . . . . . . . . . 17 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
218, 20biimtrrid 243 . . . . . . . . . . . . . . . 16 (𝑓:𝐴1-1-onto𝑥 → ((𝑦𝐴 ∧ ¬ 𝑦𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
2221exlimdv 1935 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥 → (∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
2322imp 406 . . . . . . . . . . . . . 14 ((𝑓:𝐴1-1-onto𝑥 ∧ ∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵)) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
247, 23sylan2 594 . . . . . . . . . . . . 13 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
25 ssdif0 4320 . . . . . . . . . . . . 13 ((𝑓𝐴) ⊆ (𝑓𝐵) ↔ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
2624, 25sylnibr 329 . . . . . . . . . . . 12 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ¬ (𝑓𝐴) ⊆ (𝑓𝐵))
27 dfpss3 4043 . . . . . . . . . . . 12 ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ ((𝑓𝐵) ⊆ (𝑓𝐴) ∧ ¬ (𝑓𝐴) ⊆ (𝑓𝐵)))
286, 26, 27sylanbrc 584 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊊ (𝑓𝐴))
29 imadmrn 6037 . . . . . . . . . . . . . 14 (𝑓 “ dom 𝑓) = ran 𝑓
30 f1odm 6786 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥 → dom 𝑓 = 𝐴)
3130imaeq2d 6027 . . . . . . . . . . . . . 14 (𝑓:𝐴1-1-onto𝑥 → (𝑓 “ dom 𝑓) = (𝑓𝐴))
32 f1ofo 6789 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥𝑓:𝐴onto𝑥)
33 forn 6757 . . . . . . . . . . . . . . 15 (𝑓:𝐴onto𝑥 → ran 𝑓 = 𝑥)
3432, 33syl 17 . . . . . . . . . . . . . 14 (𝑓:𝐴1-1-onto𝑥 → ran 𝑓 = 𝑥)
3529, 31, 343eqtr3a 2796 . . . . . . . . . . . . 13 (𝑓:𝐴1-1-onto𝑥 → (𝑓𝐴) = 𝑥)
3635psseq2d 4050 . . . . . . . . . . . 12 (𝑓:𝐴1-1-onto𝑥 → ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ (𝑓𝐵) ⊊ 𝑥))
3736adantr 480 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ (𝑓𝐵) ⊊ 𝑥))
3828, 37mpbid 232 . . . . . . . . . 10 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊊ 𝑥)
39 php2 9144 . . . . . . . . . 10 ((𝑥 ∈ ω ∧ (𝑓𝐵) ⊊ 𝑥) → (𝑓𝐵) ≺ 𝑥)
4038, 39sylan2 594 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → (𝑓𝐵) ≺ 𝑥)
41 nnfi 9104 . . . . . . . . . 10 (𝑥 ∈ ω → 𝑥 ∈ Fin)
42 f1of1 6781 . . . . . . . . . . . 12 (𝑓:𝐴1-1-onto𝑥𝑓:𝐴1-1𝑥)
43 f1ores 6796 . . . . . . . . . . . 12 ((𝑓:𝐴1-1𝑥𝐵𝐴) → (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵))
4442, 3, 43syl2an 597 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵))
45 vex 3446 . . . . . . . . . . . . . 14 𝑓 ∈ V
4645resex 5996 . . . . . . . . . . . . 13 (𝑓𝐵) ∈ V
47 f1oeq1 6770 . . . . . . . . . . . . 13 (𝑦 = (𝑓𝐵) → (𝑦:𝐵1-1-onto→(𝑓𝐵) ↔ (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵)))
4846, 47spcev 3562 . . . . . . . . . . . 12 ((𝑓𝐵):𝐵1-1-onto→(𝑓𝐵) → ∃𝑦 𝑦:𝐵1-1-onto→(𝑓𝐵))
49 bren 8905 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓𝐵) ↔ ∃𝑦 𝑦:𝐵1-1-onto→(𝑓𝐵))
5048, 49sylibr 234 . . . . . . . . . . 11 ((𝑓𝐵):𝐵1-1-onto→(𝑓𝐵) → 𝐵 ≈ (𝑓𝐵))
5144, 50syl 17 . . . . . . . . . 10 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → 𝐵 ≈ (𝑓𝐵))
52 endom 8928 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓𝐵) → 𝐵 ≼ (𝑓𝐵))
53 sdomdom 8929 . . . . . . . . . . . . . . 15 ((𝑓𝐵) ≺ 𝑥 → (𝑓𝐵) ≼ 𝑥)
54 domfi 9125 . . . . . . . . . . . . . . 15 ((𝑥 ∈ Fin ∧ (𝑓𝐵) ≼ 𝑥) → (𝑓𝐵) ∈ Fin)
5553, 54sylan2 594 . . . . . . . . . . . . . 14 ((𝑥 ∈ Fin ∧ (𝑓𝐵) ≺ 𝑥) → (𝑓𝐵) ∈ Fin)
56553adant2 1132 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → (𝑓𝐵) ∈ Fin)
57 domfi 9125 . . . . . . . . . . . . . . 15 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵)) → 𝐵 ∈ Fin)
58573adant3 1133 . . . . . . . . . . . . . 14 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵 ∈ Fin)
59 domsdomtrfi 9138 . . . . . . . . . . . . . 14 ((𝐵 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6058, 59syld3an1 1413 . . . . . . . . . . . . 13 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6156, 60syld3an1 1413 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6252, 61syl3an2 1165 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
63623expia 1122 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓𝐵)) → ((𝑓𝐵) ≺ 𝑥𝐵𝑥))
6441, 51, 63syl2an 597 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → ((𝑓𝐵) ≺ 𝑥𝐵𝑥))
6540, 64mpd 15 . . . . . . . 8 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → 𝐵𝑥)
6665exp32 420 . . . . . . 7 (𝑥 ∈ ω → (𝑓:𝐴1-1-onto𝑥 → (𝐵𝐴𝐵𝑥)))
6766exlimdv 1935 . . . . . 6 (𝑥 ∈ ω → (∃𝑓 𝑓:𝐴1-1-onto𝑥 → (𝐵𝐴𝐵𝑥)))
682, 67biimtrid 242 . . . . 5 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝐴𝐵𝑥)))
69 ensymfib 9120 . . . . . . . . . . 11 (𝑥 ∈ Fin → (𝑥𝐴𝐴𝑥))
7069adantr 480 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → (𝑥𝐴𝐴𝑥))
7170biimp3ar 1473 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝐴𝑥) → 𝑥𝐴)
72 endom 8928 . . . . . . . . . 10 (𝑥𝐴𝑥𝐴)
73 sdomdom 8929 . . . . . . . . . . . . 13 (𝐵𝑥𝐵𝑥)
74 domfi 9125 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → 𝐵 ∈ Fin)
7573, 74sylan2 594 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → 𝐵 ∈ Fin)
76753adant3 1133 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵 ∈ Fin)
77 sdomdomtrfi 9137 . . . . . . . . . . 11 ((𝐵 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
7876, 77syld3an1 1413 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
7972, 78syl3an3 1166 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
8071, 79syld3an3 1412 . . . . . . . 8 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝐴𝑥) → 𝐵𝐴)
8141, 80syl3an1 1164 . . . . . . 7 ((𝑥 ∈ ω ∧ 𝐵𝑥𝐴𝑥) → 𝐵𝐴)
82813com23 1127 . . . . . 6 ((𝑥 ∈ ω ∧ 𝐴𝑥𝐵𝑥) → 𝐵𝐴)
83823exp 1120 . . . . 5 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝑥𝐵𝐴)))
8468, 83syldd 72 . . . 4 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝐴𝐵𝐴)))
8584rexlimiv 3132 . . 3 (∃𝑥 ∈ ω 𝐴𝑥 → (𝐵𝐴𝐵𝐴))
861, 85sylbi 217 . 2 (𝐴 ∈ Fin → (𝐵𝐴𝐵𝐴))
8786imp 406 1 ((𝐴 ∈ Fin ∧ 𝐵𝐴) → 𝐵𝐴)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395   = wceq 1542  wex 1781  wcel 2114  wrex 3062  cdif 3900  wss 3903  wpss 3904  c0 4287   class class class wbr 5100  ccnv 5631  dom cdm 5632  ran crn 5633  cres 5634  cima 5635  Fun wfun 6494   Fn wfn 6495  1-1wf1 6497  ontowfo 6498  1-1-ontowf1o 6499  cfv 6500  ωcom 7818  cen 8892  cdom 8893  csdm 8894  Fincfn 8895
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-sep 5243  ax-nul 5253  ax-pr 5379  ax-un 7690
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-reu 3353  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5527  df-eprel 5532  df-po 5540  df-so 5541  df-fr 5585  df-we 5587  df-xp 5638  df-rel 5639  df-cnv 5640  df-co 5641  df-dm 5642  df-rn 5643  df-res 5644  df-ima 5645  df-ord 6328  df-on 6329  df-lim 6330  df-suc 6331  df-iota 6456  df-fun 6502  df-fn 6503  df-f 6504  df-f1 6505  df-fo 6506  df-f1o 6507  df-fv 6508  df-om 7819  df-1o 8407  df-en 8896  df-dom 8897  df-sdom 8898  df-fin 8899
This theorem is referenced by:  phpeqd  9148  onomeneq  9150  pssinf  9174  f1finf1o  9185  findcard3  9195  fofinf1o  9244  ackbij1b  10160  fincssdom  10245  fin23lem25  10246  canthp1lem2  10576  pwfseqlem4  10585  uzindi  13917  symggen  19414  pgpssslw  19558  pgpfaclem2  20028  ppiltx  27158  finminlem  36538  lindsenlbs  37870
  Copyright terms: Public domain W3C validator