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

Theorem php3 9250
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 5364. (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 9017 . . 3 (𝐴 ∈ Fin ↔ ∃𝑥 ∈ ω 𝐴𝑥)
2 bren 8996 . . . . . 6 (𝐴𝑥 ↔ ∃𝑓 𝑓:𝐴1-1-onto𝑥)
3 pssss 4097 . . . . . . . . . . . . . 14 (𝐵𝐴𝐵𝐴)
4 imass2 6119 . . . . . . . . . . . . . 14 (𝐵𝐴 → (𝑓𝐵) ⊆ (𝑓𝐴))
53, 4syl 17 . . . . . . . . . . . . 13 (𝐵𝐴 → (𝑓𝐵) ⊆ (𝑓𝐴))
65adantl 481 . . . . . . . . . . . 12 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊆ (𝑓𝐴))
7 pssnel 4470 . . . . . . . . . . . . . 14 (𝐵𝐴 → ∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵))
8 eldif 3960 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (𝐴𝐵) ↔ (𝑦𝐴 ∧ ¬ 𝑦𝐵))
9 f1ofn 6848 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴1-1-onto𝑥𝑓 Fn 𝐴)
10 difss 4135 . . . . . . . . . . . . . . . . . . . 20 (𝐴𝐵) ⊆ 𝐴
11 fnfvima 7254 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 Fn 𝐴 ∧ (𝐴𝐵) ⊆ 𝐴𝑦 ∈ (𝐴𝐵)) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵)))
12113expia 1121 . . . . . . . . . . . . . . . . . . . 20 ((𝑓 Fn 𝐴 ∧ (𝐴𝐵) ⊆ 𝐴) → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵))))
139, 10, 12sylancl 586 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵))))
14 dff1o3 6853 . . . . . . . . . . . . . . . . . . . . 21 (𝑓:𝐴1-1-onto𝑥 ↔ (𝑓:𝐴onto𝑥 ∧ Fun 𝑓))
15 imadif 6649 . . . . . . . . . . . . . . . . . . . . 21 (Fun 𝑓 → (𝑓 “ (𝐴𝐵)) = ((𝑓𝐴) ∖ (𝑓𝐵)))
1614, 15simplbiim 504 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴1-1-onto𝑥 → (𝑓 “ (𝐴𝐵)) = ((𝑓𝐴) ∖ (𝑓𝐵)))
1716eleq2d 2826 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴1-1-onto𝑥 → ((𝑓𝑦) ∈ (𝑓 “ (𝐴𝐵)) ↔ (𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵))))
1813, 17sylibd 239 . . . . . . . . . . . . . . . . . 18 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → (𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵))))
19 n0i 4339 . . . . . . . . . . . . . . . . . 18 ((𝑓𝑦) ∈ ((𝑓𝐴) ∖ (𝑓𝐵)) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
2018, 19syl6 35 . . . . . . . . . . . . . . . . 17 (𝑓:𝐴1-1-onto𝑥 → (𝑦 ∈ (𝐴𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
218, 20biimtrrid 243 . . . . . . . . . . . . . . . 16 (𝑓:𝐴1-1-onto𝑥 → ((𝑦𝐴 ∧ ¬ 𝑦𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
2221exlimdv 1932 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥 → (∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅))
2322imp 406 . . . . . . . . . . . . . 14 ((𝑓:𝐴1-1-onto𝑥 ∧ ∃𝑦(𝑦𝐴 ∧ ¬ 𝑦𝐵)) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
247, 23sylan2 593 . . . . . . . . . . . . 13 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ¬ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
25 ssdif0 4365 . . . . . . . . . . . . 13 ((𝑓𝐴) ⊆ (𝑓𝐵) ↔ ((𝑓𝐴) ∖ (𝑓𝐵)) = ∅)
2624, 25sylnibr 329 . . . . . . . . . . . 12 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ¬ (𝑓𝐴) ⊆ (𝑓𝐵))
27 dfpss3 4088 . . . . . . . . . . . 12 ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ ((𝑓𝐵) ⊆ (𝑓𝐴) ∧ ¬ (𝑓𝐴) ⊆ (𝑓𝐵)))
286, 26, 27sylanbrc 583 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊊ (𝑓𝐴))
29 imadmrn 6087 . . . . . . . . . . . . . 14 (𝑓 “ dom 𝑓) = ran 𝑓
30 f1odm 6851 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥 → dom 𝑓 = 𝐴)
3130imaeq2d 6077 . . . . . . . . . . . . . 14 (𝑓:𝐴1-1-onto𝑥 → (𝑓 “ dom 𝑓) = (𝑓𝐴))
32 f1ofo 6854 . . . . . . . . . . . . . . 15 (𝑓:𝐴1-1-onto𝑥𝑓:𝐴onto𝑥)
33 forn 6822 . . . . . . . . . . . . . . 15 (𝑓:𝐴onto𝑥 → ran 𝑓 = 𝑥)
3432, 33syl 17 . . . . . . . . . . . . . 14 (𝑓:𝐴1-1-onto𝑥 → ran 𝑓 = 𝑥)
3529, 31, 343eqtr3a 2800 . . . . . . . . . . . . 13 (𝑓:𝐴1-1-onto𝑥 → (𝑓𝐴) = 𝑥)
3635psseq2d 4095 . . . . . . . . . . . 12 (𝑓:𝐴1-1-onto𝑥 → ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ (𝑓𝐵) ⊊ 𝑥))
3736adantr 480 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → ((𝑓𝐵) ⊊ (𝑓𝐴) ↔ (𝑓𝐵) ⊊ 𝑥))
3828, 37mpbid 232 . . . . . . . . . 10 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵) ⊊ 𝑥)
39 php2 9249 . . . . . . . . . 10 ((𝑥 ∈ ω ∧ (𝑓𝐵) ⊊ 𝑥) → (𝑓𝐵) ≺ 𝑥)
4038, 39sylan2 593 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → (𝑓𝐵) ≺ 𝑥)
41 nnfi 9208 . . . . . . . . . 10 (𝑥 ∈ ω → 𝑥 ∈ Fin)
42 f1of1 6846 . . . . . . . . . . . 12 (𝑓:𝐴1-1-onto𝑥𝑓:𝐴1-1𝑥)
43 f1ores 6861 . . . . . . . . . . . 12 ((𝑓:𝐴1-1𝑥𝐵𝐴) → (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵))
4442, 3, 43syl2an 596 . . . . . . . . . . 11 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵))
45 vex 3483 . . . . . . . . . . . . . 14 𝑓 ∈ V
4645resex 6046 . . . . . . . . . . . . 13 (𝑓𝐵) ∈ V
47 f1oeq1 6835 . . . . . . . . . . . . 13 (𝑦 = (𝑓𝐵) → (𝑦:𝐵1-1-onto→(𝑓𝐵) ↔ (𝑓𝐵):𝐵1-1-onto→(𝑓𝐵)))
4846, 47spcev 3605 . . . . . . . . . . . 12 ((𝑓𝐵):𝐵1-1-onto→(𝑓𝐵) → ∃𝑦 𝑦:𝐵1-1-onto→(𝑓𝐵))
49 bren 8996 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓𝐵) ↔ ∃𝑦 𝑦:𝐵1-1-onto→(𝑓𝐵))
5048, 49sylibr 234 . . . . . . . . . . 11 ((𝑓𝐵):𝐵1-1-onto→(𝑓𝐵) → 𝐵 ≈ (𝑓𝐵))
5144, 50syl 17 . . . . . . . . . 10 ((𝑓:𝐴1-1-onto𝑥𝐵𝐴) → 𝐵 ≈ (𝑓𝐵))
52 endom 9020 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓𝐵) → 𝐵 ≼ (𝑓𝐵))
53 sdomdom 9021 . . . . . . . . . . . . . . 15 ((𝑓𝐵) ≺ 𝑥 → (𝑓𝐵) ≼ 𝑥)
54 domfi 9230 . . . . . . . . . . . . . . 15 ((𝑥 ∈ Fin ∧ (𝑓𝐵) ≼ 𝑥) → (𝑓𝐵) ∈ Fin)
5553, 54sylan2 593 . . . . . . . . . . . . . 14 ((𝑥 ∈ Fin ∧ (𝑓𝐵) ≺ 𝑥) → (𝑓𝐵) ∈ Fin)
56553adant2 1131 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → (𝑓𝐵) ∈ Fin)
57 domfi 9230 . . . . . . . . . . . . . . 15 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵)) → 𝐵 ∈ Fin)
58573adant3 1132 . . . . . . . . . . . . . 14 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵 ∈ Fin)
59 domsdomtrfi 9243 . . . . . . . . . . . . . 14 ((𝐵 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6058, 59syld3an1 1411 . . . . . . . . . . . . 13 (((𝑓𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6156, 60syld3an1 1411 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
6252, 61syl3an2 1164 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓𝐵) ∧ (𝑓𝐵) ≺ 𝑥) → 𝐵𝑥)
63623expia 1121 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓𝐵)) → ((𝑓𝐵) ≺ 𝑥𝐵𝑥))
6441, 51, 63syl2an 596 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → ((𝑓𝐵) ≺ 𝑥𝐵𝑥))
6540, 64mpd 15 . . . . . . . 8 ((𝑥 ∈ ω ∧ (𝑓:𝐴1-1-onto𝑥𝐵𝐴)) → 𝐵𝑥)
6665exp32 420 . . . . . . 7 (𝑥 ∈ ω → (𝑓:𝐴1-1-onto𝑥 → (𝐵𝐴𝐵𝑥)))
6766exlimdv 1932 . . . . . 6 (𝑥 ∈ ω → (∃𝑓 𝑓:𝐴1-1-onto𝑥 → (𝐵𝐴𝐵𝑥)))
682, 67biimtrid 242 . . . . 5 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝐴𝐵𝑥)))
69 ensymfib 9225 . . . . . . . . . . 11 (𝑥 ∈ Fin → (𝑥𝐴𝐴𝑥))
7069adantr 480 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → (𝑥𝐴𝐴𝑥))
7170biimp3ar 1471 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝐴𝑥) → 𝑥𝐴)
72 endom 9020 . . . . . . . . . 10 (𝑥𝐴𝑥𝐴)
73 sdomdom 9021 . . . . . . . . . . . . 13 (𝐵𝑥𝐵𝑥)
74 domfi 9230 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → 𝐵 ∈ Fin)
7573, 74sylan2 593 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵𝑥) → 𝐵 ∈ Fin)
76753adant3 1132 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵 ∈ Fin)
77 sdomdomtrfi 9242 . . . . . . . . . . 11 ((𝐵 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
7876, 77syld3an1 1411 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
7972, 78syl3an3 1165 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝑥𝐴) → 𝐵𝐴)
8071, 79syld3an3 1410 . . . . . . . 8 ((𝑥 ∈ Fin ∧ 𝐵𝑥𝐴𝑥) → 𝐵𝐴)
8141, 80syl3an1 1163 . . . . . . 7 ((𝑥 ∈ ω ∧ 𝐵𝑥𝐴𝑥) → 𝐵𝐴)
82813com23 1126 . . . . . 6 ((𝑥 ∈ ω ∧ 𝐴𝑥𝐵𝑥) → 𝐵𝐴)
83823exp 1119 . . . . 5 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝑥𝐵𝐴)))
8468, 83syldd 72 . . . 4 (𝑥 ∈ ω → (𝐴𝑥 → (𝐵𝐴𝐵𝐴)))
8584rexlimiv 3147 . . 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 1539  wex 1778  wcel 2107  wrex 3069  cdif 3947  wss 3950  wpss 3951  c0 4332   class class class wbr 5142  ccnv 5683  dom cdm 5684  ran crn 5685  cres 5686  cima 5687  Fun wfun 6554   Fn wfn 6555  1-1wf1 6557  ontowfo 6558  1-1-ontowf1o 6559  cfv 6560  ωcom 7888  cen 8983  cdom 8984  csdm 8985  Fincfn 8986
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2707  ax-sep 5295  ax-nul 5305  ax-pr 5431  ax-un 7756
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2728  df-clel 2815  df-nfc 2891  df-ne 2940  df-ral 3061  df-rex 3070  df-reu 3380  df-rab 3436  df-v 3481  df-sbc 3788  df-csb 3899  df-dif 3953  df-un 3955  df-in 3957  df-ss 3967  df-pss 3970  df-nul 4333  df-if 4525  df-pw 4601  df-sn 4626  df-pr 4628  df-op 4632  df-uni 4907  df-br 5143  df-opab 5205  df-mpt 5225  df-tr 5259  df-id 5577  df-eprel 5583  df-po 5591  df-so 5592  df-fr 5636  df-we 5638  df-xp 5690  df-rel 5691  df-cnv 5692  df-co 5693  df-dm 5694  df-rn 5695  df-res 5696  df-ima 5697  df-ord 6386  df-on 6387  df-lim 6388  df-suc 6389  df-iota 6513  df-fun 6562  df-fn 6563  df-f 6564  df-f1 6565  df-fo 6566  df-f1o 6567  df-fv 6568  df-om 7889  df-1o 8507  df-en 8987  df-dom 8988  df-sdom 8989  df-fin 8990
This theorem is referenced by:  phpeqd  9253  phpeqdOLD  9263  onomeneq  9266  pssinf  9293  f1finf1o  9306  f1finf1oOLD  9307  findcard3  9319  findcard3OLD  9320  fofinf1o  9373  ackbij1b  10279  fincssdom  10364  fin23lem25  10365  canthp1lem2  10694  pwfseqlem4  10703  uzindi  14024  symggen  19489  pgpssslw  19633  pgpfaclem2  20103  ppiltx  27221  finminlem  36320  lindsenlbs  37623
  Copyright terms: Public domain W3C validator