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

Theorem phpm 6878
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 6865 through phplem4 6868, nneneq 6870, 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 110 . . . . . 6 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → 𝐴 = ∅)
2 eldifi 3269 . . . . . . . . 9 (𝑥 ∈ (𝐴𝐵) → 𝑥𝐴)
3 ne0i 3441 . . . . . . . . 9 (𝑥𝐴𝐴 ≠ ∅)
42, 3syl 14 . . . . . . . 8 (𝑥 ∈ (𝐴𝐵) → 𝐴 ≠ ∅)
54neneqd 2378 . . . . . . 7 (𝑥 ∈ (𝐴𝐵) → ¬ 𝐴 = ∅)
65ad2antlr 489 . . . . . 6 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴 = ∅)
71, 6pm2.21dd 621 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴𝐵)
8 php5dom 6876 . . . . . . . . . 10 (𝑦 ∈ ω → ¬ suc 𝑦𝑦)
98ad2antlr 489 . . . . . . . . 9 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ suc 𝑦𝑦)
10 simplr 528 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴 = suc 𝑦)
11 simpr 110 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝐵)
12 vex 2752 . . . . . . . . . . . . . . . 16 𝑦 ∈ V
1312sucex 4510 . . . . . . . . . . . . . . 15 suc 𝑦 ∈ V
14 difss 3273 . . . . . . . . . . . . . . 15 (suc 𝑦 ∖ {𝑥}) ⊆ suc 𝑦
1513, 14ssexi 4153 . . . . . . . . . . . . . 14 (suc 𝑦 ∖ {𝑥}) ∈ V
16 eldifn 3270 . . . . . . . . . . . . . . . 16 (𝑥 ∈ (𝐴𝐵) → ¬ 𝑥𝐵)
1716ad3antlr 493 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝑥𝐵)
18 simpllr 534 . . . . . . . . . . . . . . . . 17 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → 𝐵𝐴)
1918adantr 276 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝐴)
20 simpr 110 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐴 = suc 𝑦)
2119, 20sseqtrd 3205 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ suc 𝑦)
22 ssdif 3282 . . . . . . . . . . . . . . . 16 (𝐵 ⊆ suc 𝑦 → (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥}))
23 disjsn 3666 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ ¬ 𝑥𝐵)
24 disj3 3487 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ 𝐵 = (𝐵 ∖ {𝑥}))
2523, 24bitr3i 186 . . . . . . . . . . . . . . . . 17 𝑥𝐵𝐵 = (𝐵 ∖ {𝑥}))
26 sseq1 3190 . . . . . . . . . . . . . . . . 17 (𝐵 = (𝐵 ∖ {𝑥}) → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2725, 26sylbi 121 . . . . . . . . . . . . . . . 16 𝑥𝐵 → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2822, 27imbitrrid 156 . . . . . . . . . . . . . . 15 𝑥𝐵 → (𝐵 ⊆ suc 𝑦𝐵 ⊆ (suc 𝑦 ∖ {𝑥})))
2917, 21, 28sylc 62 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ (suc 𝑦 ∖ {𝑥}))
30 ssdomg 6791 . . . . . . . . . . . . . 14 ((suc 𝑦 ∖ {𝑥}) ∈ V → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥})))
3115, 29, 30mpsyl 65 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥}))
32 simplr 528 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑦 ∈ ω)
332ad3antlr 493 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥𝐴)
3433, 20eleqtrd 2266 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥 ∈ suc 𝑦)
35 phplem3g 6869 . . . . . . . . . . . . . . 15 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → 𝑦 ≈ (suc 𝑦 ∖ {𝑥}))
3635ensymd 6796 . . . . . . . . . . . . . 14 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
3732, 34, 36syl2anc 411 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
38 domentr 6804 . . . . . . . . . . . . 13 ((𝐵 ≼ (suc 𝑦 ∖ {𝑥}) ∧ (suc 𝑦 ∖ {𝑥}) ≈ 𝑦) → 𝐵𝑦)
3931, 37, 38syl2anc 411 . . . . . . . . . . . 12 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝑦)
4039adantr 276 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐵𝑦)
41 endomtr 6803 . . . . . . . . . . 11 ((𝐴𝐵𝐵𝑦) → 𝐴𝑦)
4211, 40, 41syl2anc 411 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝑦)
4310, 42eqbrtrrd 4039 . . . . . . . . 9 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → suc 𝑦𝑦)
449, 43mtand 666 . . . . . . . 8 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
4544ex 115 . . . . . . 7 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → (𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4645rexlimdva 2604 . . . . . 6 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → (∃𝑦 ∈ ω 𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4746imp 124 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ ∃𝑦 ∈ ω 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
48 nn0suc 4615 . . . . . 6 (𝐴 ∈ ω → (𝐴 = ∅ ∨ ∃𝑦 ∈ ω 𝐴 = suc 𝑦))
4948ad2antrr 488 . . . . 5 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → (𝐴 = ∅ ∨ ∃𝑦 ∈ ω 𝐴 = suc 𝑦))
507, 47, 49mpjaodan 799 . . . 4 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → ¬ 𝐴𝐵)
5150ex 115 . . 3 ((𝐴 ∈ ω ∧ 𝐵𝐴) → (𝑥 ∈ (𝐴𝐵) → ¬ 𝐴𝐵))
5251exlimdv 1829 . 2 ((𝐴 ∈ ω ∧ 𝐵𝐴) → (∃𝑥 𝑥 ∈ (𝐴𝐵) → ¬ 𝐴𝐵))
53523impia 1201 1 ((𝐴 ∈ ω ∧ 𝐵𝐴 ∧ ∃𝑥 𝑥 ∈ (𝐴𝐵)) → ¬ 𝐴𝐵)
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wb 105  wo 709  w3a 979   = wceq 1363  wex 1502  wcel 2158  wne 2357  wrex 2466  Vcvv 2749  cdif 3138  cin 3140  wss 3141  c0 3434  {csn 3604   class class class wbr 4015  suc csuc 4377  ωcom 4601  cen 6751  cdom 6752
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 710  ax-5 1457  ax-7 1458  ax-gen 1459  ax-ie1 1503  ax-ie2 1504  ax-8 1514  ax-10 1515  ax-11 1516  ax-i12 1517  ax-bndl 1519  ax-4 1520  ax-17 1536  ax-i9 1540  ax-ial 1544  ax-i5r 1545  ax-13 2160  ax-14 2161  ax-ext 2169  ax-sep 4133  ax-nul 4141  ax-pow 4186  ax-pr 4221  ax-un 4445  ax-setind 4548  ax-iinf 4599
This theorem depends on definitions:  df-bi 117  df-dc 836  df-3or 980  df-3an 981  df-tru 1366  df-fal 1369  df-nf 1471  df-sb 1773  df-eu 2039  df-mo 2040  df-clab 2174  df-cleq 2180  df-clel 2183  df-nfc 2318  df-ne 2358  df-ral 2470  df-rex 2471  df-rab 2474  df-v 2751  df-sbc 2975  df-dif 3143  df-un 3145  df-in 3147  df-ss 3154  df-nul 3435  df-pw 3589  df-sn 3610  df-pr 3611  df-op 3613  df-uni 3822  df-int 3857  df-br 4016  df-opab 4077  df-tr 4114  df-id 4305  df-iord 4378  df-on 4380  df-suc 4383  df-iom 4602  df-xp 4644  df-rel 4645  df-cnv 4646  df-co 4647  df-dm 4648  df-rn 4649  df-res 4650  df-ima 4651  df-iota 5190  df-fun 5230  df-fn 5231  df-f 5232  df-f1 5233  df-fo 5234  df-f1o 5235  df-fv 5236  df-er 6548  df-en 6754  df-dom 6755
This theorem is referenced by:  phpelm  6879
  Copyright terms: Public domain W3C validator