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

Theorem phpm 6882
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 6869 through phplem4 6872, nneneq 6874, 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 3271 . . . . . . . . 9 (𝑥 ∈ (𝐴𝐵) → 𝑥𝐴)
3 ne0i 3443 . . . . . . . . 9 (𝑥𝐴𝐴 ≠ ∅)
42, 3syl 14 . . . . . . . 8 (𝑥 ∈ (𝐴𝐵) → 𝐴 ≠ ∅)
54neneqd 2380 . . . . . . 7 (𝑥 ∈ (𝐴𝐵) → ¬ 𝐴 = ∅)
65ad2antlr 489 . . . . . 6 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴 = ∅)
71, 6pm2.21dd 621 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝐴 = ∅) → ¬ 𝐴𝐵)
8 php5dom 6880 . . . . . . . . . 10 (𝑦 ∈ ω → ¬ suc 𝑦𝑦)
98ad2antlr 489 . . . . . . . . 9 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ suc 𝑦𝑦)
10 simplr 528 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴 = suc 𝑦)
11 simpr 110 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝐵)
12 vex 2754 . . . . . . . . . . . . . . . 16 𝑦 ∈ V
1312sucex 4512 . . . . . . . . . . . . . . 15 suc 𝑦 ∈ V
14 difss 3275 . . . . . . . . . . . . . . 15 (suc 𝑦 ∖ {𝑥}) ⊆ suc 𝑦
1513, 14ssexi 4155 . . . . . . . . . . . . . 14 (suc 𝑦 ∖ {𝑥}) ∈ V
16 eldifn 3272 . . . . . . . . . . . . . . . 16 (𝑥 ∈ (𝐴𝐵) → ¬ 𝑥𝐵)
1716ad3antlr 493 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝑥𝐵)
18 simpllr 534 . . . . . . . . . . . . . . . . 17 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → 𝐵𝐴)
1918adantr 276 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝐴)
20 simpr 110 . . . . . . . . . . . . . . . 16 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐴 = suc 𝑦)
2119, 20sseqtrd 3207 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ suc 𝑦)
22 ssdif 3284 . . . . . . . . . . . . . . . 16 (𝐵 ⊆ suc 𝑦 → (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥}))
23 disjsn 3668 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ ¬ 𝑥𝐵)
24 disj3 3489 . . . . . . . . . . . . . . . . . 18 ((𝐵 ∩ {𝑥}) = ∅ ↔ 𝐵 = (𝐵 ∖ {𝑥}))
2523, 24bitr3i 186 . . . . . . . . . . . . . . . . 17 𝑥𝐵𝐵 = (𝐵 ∖ {𝑥}))
26 sseq1 3192 . . . . . . . . . . . . . . . . 17 (𝐵 = (𝐵 ∖ {𝑥}) → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2725, 26sylbi 121 . . . . . . . . . . . . . . . 16 𝑥𝐵 → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) ↔ (𝐵 ∖ {𝑥}) ⊆ (suc 𝑦 ∖ {𝑥})))
2822, 27imbitrrid 156 . . . . . . . . . . . . . . 15 𝑥𝐵 → (𝐵 ⊆ suc 𝑦𝐵 ⊆ (suc 𝑦 ∖ {𝑥})))
2917, 21, 28sylc 62 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ⊆ (suc 𝑦 ∖ {𝑥}))
30 ssdomg 6795 . . . . . . . . . . . . . 14 ((suc 𝑦 ∖ {𝑥}) ∈ V → (𝐵 ⊆ (suc 𝑦 ∖ {𝑥}) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥})))
3115, 29, 30mpsyl 65 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵 ≼ (suc 𝑦 ∖ {𝑥}))
32 simplr 528 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑦 ∈ ω)
332ad3antlr 493 . . . . . . . . . . . . . . 15 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥𝐴)
3433, 20eleqtrd 2267 . . . . . . . . . . . . . 14 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝑥 ∈ suc 𝑦)
35 phplem3g 6873 . . . . . . . . . . . . . . 15 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → 𝑦 ≈ (suc 𝑦 ∖ {𝑥}))
3635ensymd 6800 . . . . . . . . . . . . . 14 ((𝑦 ∈ ω ∧ 𝑥 ∈ suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
3732, 34, 36syl2anc 411 . . . . . . . . . . . . 13 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → (suc 𝑦 ∖ {𝑥}) ≈ 𝑦)
38 domentr 6808 . . . . . . . . . . . . 13 ((𝐵 ≼ (suc 𝑦 ∖ {𝑥}) ∧ (suc 𝑦 ∖ {𝑥}) ≈ 𝑦) → 𝐵𝑦)
3931, 37, 38syl2anc 411 . . . . . . . . . . . 12 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → 𝐵𝑦)
4039adantr 276 . . . . . . . . . . 11 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐵𝑦)
41 endomtr 6807 . . . . . . . . . . 11 ((𝐴𝐵𝐵𝑦) → 𝐴𝑦)
4211, 40, 41syl2anc 411 . . . . . . . . . 10 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → 𝐴𝑦)
4310, 42eqbrtrrd 4041 . . . . . . . . 9 ((((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) ∧ 𝐴𝐵) → suc 𝑦𝑦)
449, 43mtand 666 . . . . . . . 8 (((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) ∧ 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
4544ex 115 . . . . . . 7 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ 𝑦 ∈ ω) → (𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4645rexlimdva 2606 . . . . . 6 (((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) → (∃𝑦 ∈ ω 𝐴 = suc 𝑦 → ¬ 𝐴𝐵))
4746imp 124 . . . . 5 ((((𝐴 ∈ ω ∧ 𝐵𝐴) ∧ 𝑥 ∈ (𝐴𝐵)) ∧ ∃𝑦 ∈ ω 𝐴 = suc 𝑦) → ¬ 𝐴𝐵)
48 nn0suc 4617 . . . . . 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 2159  wne 2359  wrex 2468  Vcvv 2751  cdif 3140  cin 3142  wss 3143  c0 3436  {csn 3606   class class class wbr 4017  suc csuc 4379  ωcom 4603  cen 6755  cdom 6756
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 2161  ax-14 2162  ax-ext 2170  ax-sep 4135  ax-nul 4143  ax-pow 4188  ax-pr 4223  ax-un 4447  ax-setind 4550  ax-iinf 4601
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 2040  df-mo 2041  df-clab 2175  df-cleq 2181  df-clel 2184  df-nfc 2320  df-ne 2360  df-ral 2472  df-rex 2473  df-rab 2476  df-v 2753  df-sbc 2977  df-dif 3145  df-un 3147  df-in 3149  df-ss 3156  df-nul 3437  df-pw 3591  df-sn 3612  df-pr 3613  df-op 3615  df-uni 3824  df-int 3859  df-br 4018  df-opab 4079  df-tr 4116  df-id 4307  df-iord 4380  df-on 4382  df-suc 4385  df-iom 4604  df-xp 4646  df-rel 4647  df-cnv 4648  df-co 4649  df-dm 4650  df-rn 4651  df-res 4652  df-ima 4653  df-iota 5192  df-fun 5232  df-fn 5233  df-f 5234  df-f1 5235  df-fo 5236  df-f1o 5237  df-fv 5238  df-er 6552  df-en 6758  df-dom 6759
This theorem is referenced by:  phpelm  6883
  Copyright terms: Public domain W3C validator