ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  phpm GIF version

Theorem phpm 6825
Description: Pigeonhole Principle. A natural number is not equinumerous to a proper subset of itself. By "proper subset" here we mean that there is an element which is in the natural number and not in the subset, or in symbols 𝑥𝑥 ∈ (𝐴𝐵) (which is stronger than not being equal in the absence of excluded middle). Theorem (Pigeonhole Principle) of [Enderton] p. 134. The theorem is so-called because you can't put n + 1 pigeons into n holes (if each hole holds only one pigeon). The proof consists of lemmas phplem1 6812 through phplem4 6815, nneneq 6817, and this final piece of the proof. (Contributed by NM, 29-May-1998.)
Assertion
Ref Expression
phpm ((𝐴 ∈ ω ∧ 𝐵𝐴 ∧ ∃𝑥 𝑥 ∈ (𝐴𝐵)) → ¬ 𝐴𝐵)
Distinct variable groups:   𝑥,𝐴   𝑥,𝐵

Proof of Theorem phpm
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 simpr 109 . . . . . 6 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → 𝐴 = ∅)
2 eldifi 3242 . . . . . . . . 9 (𝑥 ∈ (𝐴𝐵) → 𝑥𝐴)
3 ne0i 3413 . . . . . . . . 9 (𝑥𝐴𝐴 ≠ ∅)
42, 3syl 14 . . . . . . . 8 (𝑥 ∈ (𝐴𝐵) → 𝐴 ≠ ∅)
54neneqd 2355 . . . . . . 7 (𝑥 ∈ (𝐴𝐵) → ¬ 𝐴 = ∅)
65ad2antlr 481 . . . . . 6 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴 = ∅)
71, 6pm2.21dd 610 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴𝐵)
8 php5dom 6823 . . . . . . . . . 10 (𝑦 ∈ ω → ¬ suc 𝑦𝑦)
98ad2antlr 481 . . . . . . . . 9 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ suc 𝑦𝑦)
10 simplr 520 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴 = suc 𝑦)
11 simpr 109 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝐵)
12 vex 2727 . . . . . . . . . . . . . . . 16 𝑦 ∈ V
1312sucex 4473 . . . . . . . . . . . . . . 15 suc 𝑦 ∈ V
14 difss 3246 . . . . . . . . . . . . . . 15 (suc 𝑦 ∖ {𝑥}) ⊆ suc 𝑦
1513, 14ssexi 4117 . . . . . . . . . . . . . 14 (suc 𝑦 ∖ {𝑥}) ∈ V
16 eldifn 3243 . . . . . . . . . . . . . . . 16 (𝑥 ∈ (𝐴𝐵) → ¬ 𝑥𝐵)
1716ad3antlr 485 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝑥𝐵)
18 simpllr 524 . . . . . . . . . . . . . . . . 17 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → 𝐵𝐴)
1918adantr 274 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝐴)
20 simpr 109 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐴 = suc 𝑦)
2119, 20sseqtrd 3178 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ suc 𝑦)
22 ssdif 3255 . . . . . . . . . . . . . . . 16 (𝐵 ⊆ suc 𝑦 → (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥}))
23 disjsn 3635 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ ¬ 𝑥𝐵)
24 disj3 3459 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ 𝐵 = (𝐵 ∖ {𝑥}))
2523, 24bitr3i 185 . . . . . . . . . . . . . . . . 17 𝑥𝐵𝐵 = (𝐵 ∖ {𝑥}))
26 sseq1 3163 . . . . . . . . . . . . . . . . 17 (𝐵 = (𝐵 ∖ {𝑥}) → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2725, 26sylbi 120 . . . . . . . . . . . . . . . 16 𝑥𝐵 → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2822, 27syl5ibr 155 . . . . . . . . . . . . . . 15 𝑥𝐵 → (𝐵 ⊆ suc 𝑦𝐵 ⊆ (suc 𝑦 ∖ {𝑥})))
2917, 21, 28sylc 62 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ (suc 𝑦 ∖ {𝑥}))
30 ssdomg 6738 . . . . . . . . . . . . . 14 ((suc 𝑦 ∖ {𝑥}) ∈ V → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥})))
3115, 29, 30mpsyl 65 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥}))
32 simplr 520 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑦 ∈ ω)
332ad3antlr 485 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥𝐴)
3433, 20eleqtrd 2243 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥 ∈ suc 𝑦)
35 phplem3g 6816 . . . . . . . . . . . . . . 15 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → 𝑦 ≈ (suc 𝑦 ∖ {𝑥}))
3635ensymd 6743 . . . . . . . . . . . . . 14 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
3732, 34, 36syl2anc 409 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
38 domentr 6751 . . . . . . . . . . . . 13 ((𝐵 ≼ (suc 𝑦 ∖ {𝑥}) ∧ (suc 𝑦 ∖ {𝑥}) ≈ 𝑦) → 𝐵𝑦)
3931, 37, 38syl2anc 409 . . . . . . . . . . . 12 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝑦)
4039adantr 274 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐵𝑦)
41 endomtr 6750 . . . . . . . . . . 11 ((𝐴𝐵𝐵𝑦) → 𝐴𝑦)
4211, 40, 41syl2anc 409 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝑦)
4310, 42eqbrtrrd 4003 . . . . . . . . 9 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → suc 𝑦𝑦)
449, 43mtand 655 . . . . . . . 8 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
4544ex 114 . . . . . . 7 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → (𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4645rexlimdva 2581 . . . . . 6 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → (∃𝑦 ∈ ω 𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4746imp 123 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ ∃𝑦 ∈ ω 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
48 nn0suc 4578 . . . . . 6 (𝐴 ∈ ω → (𝐴 = ∅ ∨ ∃𝑦 ∈ ω 𝐴 = suc 𝑦))
4948ad2antrr 480 . . . . 5 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → (𝐴 = ∅ ∨ ∃𝑦 ∈ ω 𝐴 = suc 𝑦))
507, 47, 49mpjaodan 788 . . . 4 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → ¬ 𝐴𝐵)
5150ex 114 . . 3 ((𝐴 ∈ ω ∧ 𝐵𝐴) → (𝑥 ∈ (𝐴𝐵) → ¬ 𝐴𝐵))
5251exlimdv 1806 . 2 ((𝐴 ∈ ω ∧ 𝐵𝐴) → (∃𝑥 𝑥 ∈ (𝐴𝐵) → ¬ 𝐴𝐵))
53523impia 1189 1 ((𝐴 ∈ ω ∧ 𝐵𝐴 ∧ ∃𝑥 𝑥 ∈ (𝐴𝐵)) → ¬ 𝐴𝐵)
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 103  wb 104  wo 698  w3a 967   = wceq 1342  wex 1479  wcel 2135  wne 2334  wrex 2443  Vcvv 2724  cdif 3111  cin 3113  wss 3114  c0 3407  {csn 3573   class class class wbr 3979  suc csuc 4340  ωcom 4564  cen 6698  cdom 6699
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 604  ax-in2 605  ax-io 699  ax-5 1434  ax-7 1435  ax-gen 1436  ax-ie1 1480  ax-ie2 1481  ax-8 1491  ax-10 1492  ax-11 1493  ax-i12 1494  ax-bndl 1496  ax-4 1497  ax-17 1513  ax-i9 1517  ax-ial 1521  ax-i5r 1522  ax-13 2137  ax-14 2138  ax-ext 2146  ax-sep 4097  ax-nul 4105  ax-pow 4150  ax-pr 4184  ax-un 4408  ax-setind 4511  ax-iinf 4562
This theorem depends on definitions:  df-bi 116  df-dc 825  df-3or 968  df-3an 969  df-tru 1345  df-fal 1348  df-nf 1448  df-sb 1750  df-eu 2016  df-mo 2017  df-clab 2151  df-cleq 2157  df-clel 2160  df-nfc 2295  df-ne 2335  df-ral 2447  df-rex 2448  df-rab 2451  df-v 2726  df-sbc 2950  df-dif 3116  df-un 3118  df-in 3120  df-ss 3127  df-nul 3408  df-pw 3558  df-sn 3579  df-pr 3580  df-op 3582  df-uni 3787  df-int 3822  df-br 3980  df-opab 4041  df-tr 4078  df-id 4268  df-iord 4341  df-on 4343  df-suc 4346  df-iom 4565  df-xp 4607  df-rel 4608  df-cnv 4609  df-co 4610  df-dm 4611  df-rn 4612  df-res 4613  df-ima 4614  df-iota 5150  df-fun 5187  df-fn 5188  df-f 5189  df-f1 5190  df-fo 5191  df-f1o 5192  df-fv 5193  df-er 6495  df-en 6701  df-dom 6702
This theorem is referenced by:  phpelm  6826
  Copyright terms: Public domain W3C validator