HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
GIF version

Theorem php 4493
Description: Pigeonhole Principle. A natural number is not equinumerous to a proper subset of itself. 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 4488 through phplem4 4491, nneneq 4492, and this final piece of the proof.
Assertion
Ref Expression
php ((A ∈ ω ⋀ BA) → ¬ AB)

Proof of Theorem php
StepHypRef Expression
1 nn0suc 3144 . . . . . . 7 (A ∈ ω → (A = ∅ ⋁ ∃x ∈ ω A = suc x))
21orcanai 688 . . . . . 6 ((A ∈ ω ⋀ ¬ A = ∅) → ∃x ∈ ω A = suc x)
3 0ss 2291 . . . . . . . 8 ∅ ⊆ B
4 sspsstr 2141 . . . . . . . 8 ((∅ ⊆ BBA) → ∅ ⊂ A)
53, 4mpan 693 . . . . . . 7 (BA → ∅ ⊂ A)
6 0pss 2298 . . . . . . . 8 (∅ ⊂ AA ≠ ∅)
7 df-ne 1579 . . . . . . . 8 (A ≠ ∅ ↔ ¬ A = ∅)
86, 7bitr 173 . . . . . . 7 (∅ ⊂ A ↔ ¬ A = ∅)
95, 8sylib 198 . . . . . 6 (BA → ¬ A = ∅)
102, 9sylan2 451 . . . . 5 ((A ∈ ω ⋀ BA) → ∃x ∈ ω A = suc x)
11 psseq2 2126 . . . . . . . 8 (A = suc x → (BAB ⊂ suc x))
12 breq1 2612 . . . . . . . . 9 (A = suc x → (AB ↔ suc xB))
1312negbid 609 . . . . . . . 8 (A = suc x → (¬ AB ↔ ¬ suc xB))
1411, 13imbi12d 624 . . . . . . 7 (A = suc x → ((BA → ¬ AB) ↔ (B ⊂ suc x → ¬ suc xB)))
15 pssnel 2321 . . . . . . . . . 10 (B ⊂ suc x → ∃y(y ∈ suc x ⋀ ¬ yB))
16 domentr 4402 . . . . . . . . . . . . . . 15 ((B ≼ (suc x ∖ {y}) ⋀ (suc x ∖ {y}) ≈ x) → Bx)
17 disjsn 2431 . . . . . . . . . . . . . . . . . . . . 21 ((B ∩ {y}) = ∅ ↔ ¬ yB)
18 disj3 2304 . . . . . . . . . . . . . . . . . . . . 21 ((B ∩ {y}) = ∅ ↔ B = (B ∖ {y}))
1917, 18bitr3 175 . . . . . . . . . . . . . . . . . . . 20 yBB = (B ∖ {y}))
20 sseq1 2072 . . . . . . . . . . . . . . . . . . . 20 (B = (B ∖ {y}) → (B ⊆ (suc x ∖ {y}) ↔ (B ∖ {y}) ⊆ (suc x ∖ {y})))
2119, 20sylbi 199 . . . . . . . . . . . . . . . . . . 19 yB → (B ⊆ (suc x ∖ {y}) ↔ (B ∖ {y}) ⊆ (suc x ∖ {y})))
22 ssdif 2162 . . . . . . . . . . . . . . . . . . 19 (B ⊆ suc x → (B ∖ {y}) ⊆ (suc x ∖ {y}))
2321, 22syl5bir 210 . . . . . . . . . . . . . . . . . 18 yB → (B ⊆ suc xB ⊆ (suc x ∖ {y})))
24 visset 1804 . . . . . . . . . . . . . . . . . . . . 21 xV
2524sucex 3040 . . . . . . . . . . . . . . . . . . . 20 suc xV
26 difss 2157 . . . . . . . . . . . . . . . . . . . 20 (suc x ∖ {y}) ⊆ suc x
2725, 26ssexi 2710 . . . . . . . . . . . . . . . . . . 19 (suc x ∖ {y}) ∈ V
28 ssdom2g 4390 . . . . . . . . . . . . . . . . . . 19 ((suc x ∖ {y}) ∈ V → (B ⊆ (suc x ∖ {y}) → B ≼ (suc x ∖ {y})))
2927, 28ax-mp 7 . . . . . . . . . . . . . . . . . 18 (B ⊆ (suc x ∖ {y}) → B ≼ (suc x ∖ {y}))
3023, 29syl6 22 . . . . . . . . . . . . . . . . 17 yB → (B ⊆ suc xB ≼ (suc x ∖ {y})))
31 pssss 2133 . . . . . . . . . . . . . . . . 17 (B ⊂ suc xB ⊆ suc x)
3230, 31syl5 21 . . . . . . . . . . . . . . . 16 yB → (B ⊂ suc xB ≼ (suc x ∖ {y})))
3332imp 350 . . . . . . . . . . . . . . 15 ((¬ yBB ⊂ suc x) → B ≼ (suc x ∖ {y}))
34 visset 1804 . . . . . . . . . . . . . . . . 17 yV
3524, 34phplem3 4490 . . . . . . . . . . . . . . . 16 ((x ∈ ω ⋀ y ∈ suc x) → x ≈ (suc x ∖ {y}))
3627ensym 4393 . . . . . . . . . . . . . . . 16 (x ≈ (suc x ∖ {y}) → (suc x ∖ {y}) ≈ x)
3735, 36syl 10 . . . . . . . . . . . . . . 15 ((x ∈ ω ⋀ y ∈ suc x) → (suc x ∖ {y}) ≈ x)
3816, 33, 37syl2an 454 . . . . . . . . . . . . . 14 (((¬ yBB ⊂ suc x) ⋀ (x ∈ ω ⋀ y ∈ suc x)) → Bx)
3938exp43 384 . . . . . . . . . . . . 13 yB → (B ⊂ suc x → (x ∈ ω → (y ∈ suc xBx))))
4039com4r 41 . . . . . . . . . . . 12 (y ∈ suc x → (¬ yB → (B ⊂ suc x → (x ∈ ω → Bx))))
4140imp 350 . . . . . . . . . . 11 ((y ∈ suc x ⋀ ¬ yB) → (B ⊂ suc x → (x ∈ ω → Bx)))
424119.23aiv 1290 . . . . . . . . . 10 (∃y(y ∈ suc x ⋀ ¬ yB) → (B ⊂ suc x → (x ∈ ω → Bx)))
4315, 42mpcom 49 . . . . . . . . 9 (B ⊂ suc x → (x ∈ ω → Bx))
44 endomtr 4401 . . . . . . . . . . . . 13 ((suc xBBx) → suc xx)
45 sssucid 3037 . . . . . . . . . . . . . 14 x ⊆ suc x
46 ssdom2g 4390 . . . . . . . . . . . . . 14 (suc xV → (x ⊆ suc xx ≼ suc x))
4725, 45, 46mp2 43 . . . . . . . . . . . . 13 x ≼ suc x
4844, 47jctir 293 . . . . . . . . . . . 12 ((suc xBBx) → (suc xxx ≼ suc x))
49 sbth 4437 . . . . . . . . . . . 12 ((suc xxx ≼ suc x) → suc xx)
5048, 49syl 10 . . . . . . . . . . 11 ((suc xBBx) → suc xx)
5150expcom 374 . . . . . . . . . 10 (Bx → (suc xB → suc xx))
52 peano2b 3137 . . . . . . . . . . . . 13 (x ∈ ω ↔ suc x ∈ ω)
53 nnord 3130 . . . . . . . . . . . . 13 (suc x ∈ ω → Ord suc x)
5452, 53sylbi 199 . . . . . . . . . . . 12 (x ∈ ω → Ord suc x)
5524sucid 3041 . . . . . . . . . . . . 13 x ∈ suc x
56 nordeq 2957 . . . . . . . . . . . . 13 ((Ord suc xx ∈ suc x) → suc xx)
5755, 56mpan2 694 . . . . . . . . . . . 12 (Ord suc x → suc xx)
5854, 57syl 10 . . . . . . . . . . 11 (x ∈ ω → suc xx)
59 nneneq 4492 . . . . . . . . . . . . . 14 ((suc x ∈ ω ⋀ x ∈ ω) → (suc xx ↔ suc x = x))
6059, 52sylanb 449 . . . . . . . . . . . . 13 ((x ∈ ω ⋀ x ∈ ω) → (suc xx ↔ suc x = x))
6160anidms 434 . . . . . . . . . . . 12 (x ∈ ω → (suc xx ↔ suc x = x))
6261necon3bbid 1592 . . . . . . . . . . 11 (x ∈ ω → (¬ suc xx ↔ suc xx))
6358, 62mpbird 196 . . . . . . . . . 10 (x ∈ ω → ¬ suc xx)
6451, 63nsyli 121 . . . . . . . . 9 (Bx → (x ∈ ω → ¬ suc xB))
6543, 64syli 54 . . . . . . . 8 (B ⊂ suc x → (x ∈ ω → ¬ suc xB))
6665com12 11 . . . . . . 7 (x ∈ ω → (B ⊂ suc x → ¬ suc xB))
6714, 66syl5cbir 211 . . . . . 6 (x ∈ ω → (A = suc x → (BA → ¬ AB)))
6867r19.23aiv 1735 . . . . 5 (∃x ∈ ω A = suc x → (BA → ¬ AB))
6910, 68syl 10 . . . 4 ((A ∈ ω ⋀ BA) → (BA → ¬ AB))
7069ex 373 . . 3 (A ∈ ω → (BA → (BA → ¬ AB)))
7170pm2.43d 65 . 2 (A ∈ ω → (BA → ¬ AB))
7271imp 350 1 ((A ∈ ω ⋀ BA) → ¬ AB)
Colors of variables: wff set class
Syntax hints:  ¬ wn 2   → wi 3   ↔ wb 146   ⋀ wa 223   = wceq 953   ∈ wcel 955  ∃wex 977   ≠ wne 1577  ∃wrex 1638  Vcvv 1802   ∖ cdif 2034   ∩ cin 2036   ⊆ wss 2037   ⊂ wpss 2038  ∅c0 2270  {csn 2399   class class class wbr 2609  Ord word 2937  suc csuc 2940  ωcom 3121   ≈ cen 4348   ≼ cdom 4349
This theorem is referenced by:  php2 4494  php3 4495
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 959  ax-gen 960  ax-8 961  ax-9 962  ax-10 963  ax-11 964  ax-12 965  ax-13 966  ax-14 967  ax-17 968  ax-4 970  ax-5o 972  ax-6o 975  ax-9o 1119  ax-10o 1136  ax-16 1206  ax-11o 1213  ax-ext 1452  ax-rep 2683  ax-sep 2693  ax-nul 2700  ax-pow 2732  ax-pr 2769  ax-un 2857
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3or 774  df-3an 775  df-ex 978  df-sb 1168  df-eu 1375  df-mo 1376  df-clab 1457  df-cleq 1462  df-clel 1465  df-ne 1579  df-ral 1641  df-rex 1642  df-v 1803  df-dif 2039  df-un 2040  df-in 2041  df-ss 2043  df-pss 2045  df-nul 2271  df-if 2352  df-pw 2392  df-sn 2402  df-pr 2403  df-tp 2405  df-op 2406  df-uni 2494  df-br 2610  df-opab 2657  df-tr 2671  df-eprel 2821  df-id 2824  df-po 2831  df-so 2841  df-fr 2907  df-we 2924  df-ord 2941  df-on 2942  df-lim 2943  df-suc 2944  df-om 3122  df-xp 3174  df-rel 3175  df-cnv 3176  df-co 3177  df-dm 3178  df-rn 3179  df-res 3180  df-ima 3181  df-fun 3182  df-fn 3183  df-f 3184  df-f1 3185  df-fo 3186  df-f1o 3187  df-fv 3188  df-er 4245  df-en 4351  df-dom 4352
Copyright terms: Public domain