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

Theorem php3 9224
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 5327. (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 9002 . . 3 (𝐴 ∈ Fin ↔ ∃𝑥 ∈ ω 𝐴 ≈ 𝑥)
2 bren 8983 . . . . . 6 (𝐴 ≈ 𝑥 ↔ ∃𝑓 𝑓:𝐴–1-1-onto→𝑥)
3 pssss 4046 . . . . . . . . . . . . . 14 (𝐵 ⊊ 𝐴 → 𝐵 ⊆ 𝐴)
4 imass2 6055 . . . . . . . . . . . . . 14 (𝐵 ⊆ 𝐴 → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
53, 4syl 18 . . . . . . . . . . . . 13 (𝐵 ⊊ 𝐴 → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
65adantl 487 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
7 pssnel 4424 . . . . . . . . . . . . . 14 (𝐵 ⊊ 𝐴 → ∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵))
8 eldif 3909 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (𝐴 ∖ 𝐵) ↔ (𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵))
9 f1ofn 6825 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓 Fn 𝐴)
10 difss 4083 . . . . . . . . . . . . . . . . . . . 20 (𝐴 ∖ 𝐵) ⊆ 𝐴
11 fnfvima 7239 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 Fn 𝐴 ∧ (𝐴 ∖ 𝐵) ⊆ 𝐴 ∧ 𝑦 ∈ (𝐴 ∖ 𝐵)) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵)))
12113expia 1139 . . . . . . . . . . . . . . . . . . . 20 ((𝑓 Fn 𝐴 ∧ (𝐴 ∖ 𝐵) ⊆ 𝐴) → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵))))
139, 10, 12sylancl 598 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵))))
14 dff1o3 6831 . . . . . . . . . . . . . . . . . . . . 21 (𝑓:𝐴–1-1-onto→𝑥 ↔ (𝑓:𝐴–onto→𝑥 ∧ Fun ◡𝑓))
15 imadif 6624 . . . . . . . . . . . . . . . . . . . . 21 (Fun ◡𝑓 → (𝑓 “ (𝐴 ∖ 𝐵)) = ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)))
1614, 15simplbiim 514 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ (𝐴 ∖ 𝐵)) = ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)))
1716eleq2d 2847 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵)) ↔ (𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵))))
1813, 17sylibd 242 . . . . . . . . . . . . . . . . . 18 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵))))
19 n0i 4286 . . . . . . . . . . . . . . . . . 18 ((𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
2018, 19syl6 36 . . . . . . . . . . . . . . . . 17 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
218, 20biimtrrid 246 . . . . . . . . . . . . . . . 16 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
2221exlimdv 1966 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → (∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
2322imp 412 . . . . . . . . . . . . . 14 ((𝑓:𝐴–1-1-onto→𝑥 ∧ ∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵)) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
247, 23sylan2 605 . . . . . . . . . . . . 13 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
25 ssdif0 4314 . . . . . . . . . . . . 13 ((𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵) ↔ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
2624, 25sylnibr 332 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ¬ (𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵))
27 dfpss3 4037 . . . . . . . . . . . 12 ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ ((𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴) ∧ ¬ (𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵)))
286, 26, 27sylanbrc 595 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴))
29 imadmrn 6067 . . . . . . . . . . . . . 14 (𝑓 “ dom 𝑓) = ran 𝑓
30 f1odm 6828 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → dom 𝑓 = 𝐴)
3130imaeq2d 6052 . . . . . . . . . . . . . 14 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ dom 𝑓) = (𝑓 “ 𝐴))
32 f1ofo 6832 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓:𝐴–onto→𝑥)
33 forn 6799 . . . . . . . . . . . . . . 15 (𝑓:𝐴–onto→𝑥 → ran 𝑓 = 𝑥)
3432, 33syl 18 . . . . . . . . . . . . . 14 (𝑓:𝐴–1-1-onto→𝑥 → ran 𝑓 = 𝑥)
3529, 31, 343eqtr3a 2820 . . . . . . . . . . . . 13 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ 𝐴) = 𝑥)
3635psseq2d 4044 . . . . . . . . . . . 12 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ (𝑓 “ 𝐵) ⊊ 𝑥))
3736adantr 486 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ (𝑓 “ 𝐵) ⊊ 𝑥))
3828, 37mpbid 235 . . . . . . . . . 10 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊊ 𝑥)
39 php2 9223 . . . . . . . . . 10 ((𝑥 ∈ ω ∧ (𝑓 “ 𝐵) ⊊ 𝑥) → (𝑓 “ 𝐵) ≺ 𝑥)
4038, 39sylan2 605 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴)) → (𝑓 “ 𝐵) ≺ 𝑥)
41 nnfi 9183 . . . . . . . . . 10 (𝑥 ∈ ω → 𝑥 ∈ Fin)
42 f1of1 6823 . . . . . . . . . . . 12 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓:𝐴–1-1→𝑥)
43 f1ores 6839 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1→𝑥 ∧ 𝐵 ⊆ 𝐴) → (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵))
4442, 3, 43syl2an 608 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵))
45 vex 3455 . . . . . . . . . . . . . 14 𝑓 ∈ V
4645resex 6018 . . . . . . . . . . . . 13 (𝑓 ↾ 𝐵) ∈ V
47 f1oeq1 6812 . . . . . . . . . . . . 13 (𝑦 = (𝑓 ↾ 𝐵) → (𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵) ↔ (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵)))
4846, 47spcev 3561 . . . . . . . . . . . 12 ((𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵) → ∃𝑦 𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵))
49 bren 8983 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓 “ 𝐵) ↔ ∃𝑦 𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵))
5048, 49sylibr 237 . . . . . . . . . . 11 ((𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵) → 𝐵 ≈ (𝑓 “ 𝐵))
5144, 50syl 18 . . . . . . . . . 10 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → 𝐵 ≈ (𝑓 “ 𝐵))
52 endom 9006 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓 “ 𝐵) → 𝐵 ≼ (𝑓 “ 𝐵))
53 sdomdom 9007 . . . . . . . . . . . . . . 15 ((𝑓 “ 𝐵) ≺ 𝑥 → (𝑓 “ 𝐵) ≼ 𝑥)
54 domfi 9204 . . . . . . . . . . . . . . 15 ((𝑥 ∈ Fin ∧ (𝑓 “ 𝐵) ≼ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
5553, 54sylan2 605 . . . . . . . . . . . . . 14 ((𝑥 ∈ Fin ∧ (𝑓 “ 𝐵) ≺ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
56553adant2 1149 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
57 domfi 9204 . . . . . . . . . . . . . . 15 (((𝑓 “ 𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵)) → 𝐵 ∈ Fin)
58573adant3 1150 . . . . . . . . . . . . . 14 (((𝑓 “ 𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ∈ Fin)
59 domsdomtrfi 9217 . . . . . . . . . . . . . 14 ((𝐵 ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ≺ 𝑥)
6058, 59syld3an1 1437 . . . . . . . . . . . . 13 (((𝑓 “ 𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ≺ 𝑥)
6156, 60syld3an1 1437 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ≺ 𝑥)
6252, 61syl3an2 1182 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ≺ 𝑥)
63623expia 1139 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≈ (𝑓 “ 𝐵)) → ((𝑓 “ 𝐵) ≺ 𝑥 → 𝐵 ≺ 𝑥))
6441, 51, 63syl2an 608 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴)) → ((𝑓 “ 𝐵) ≺ 𝑥 → 𝐵 ≺ 𝑥))
6540, 64mpd 16 . . . . . . . 8 ((𝑥 ∈ ω ∧ (𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴)) → 𝐵 ≺ 𝑥)
6665exp32 426 . . . . . . 7 (𝑥 ∈ ω → (𝑓:𝐴–1-1-onto→𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝑥)))
6766exlimdv 1966 . . . . . 6 (𝑥 ∈ ω → (∃𝑓 𝑓:𝐴–1-1-onto→𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝑥)))
682, 67biimtrid 245 . . . . 5 (𝑥 ∈ ω → (𝐴 ≈ 𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝑥)))
69 ensymfib 9199 . . . . . . . . . . 11 (𝑥 ∈ Fin → (𝑥 ≈ 𝐴 ↔ 𝐴 ≈ 𝑥))
7069adantr 486 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥) → (𝑥 ≈ 𝐴 ↔ 𝐴 ≈ 𝑥))
7170biimp3ar 1499 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝐴 ≈ 𝑥) → 𝑥 ≈ 𝐴)
72 endom 9006 . . . . . . . . . 10 (𝑥 ≈ 𝐴 → 𝑥 ≼ 𝐴)
73 sdomdom 9007 . . . . . . . . . . . . 13 (𝐵 ≺ 𝑥 → 𝐵 ≼ 𝑥)
74 domfi 9204 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ 𝑥) → 𝐵 ∈ Fin)
7573, 74sylan2 605 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥) → 𝐵 ∈ Fin)
76753adant3 1150 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝑥 ≼ 𝐴) → 𝐵 ∈ Fin)
77 sdomdomtrfi 9216 . . . . . . . . . . 11 ((𝐵 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝑥 ≼ 𝐴) → 𝐵 ≺ 𝐴)
7876, 77syld3an1 1437 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝑥 ≼ 𝐴) → 𝐵 ≺ 𝐴)
7972, 78syl3an3 1183 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝑥 ≈ 𝐴) → 𝐵 ≺ 𝐴)
8071, 79syld3an3 1436 . . . . . . . 8 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝐴 ≈ 𝑥) → 𝐵 ≺ 𝐴)
8141, 80syl3an1 1181 . . . . . . 7 ((𝑥 ∈ ω ∧ 𝐵 ≺ 𝑥 ∧ 𝐴 ≈ 𝑥) → 𝐵 ≺ 𝐴)
82813com23 1144 . . . . . 6 ((𝑥 ∈ ω ∧ 𝐴 ≈ 𝑥 ∧ 𝐵 ≺ 𝑥) → 𝐵 ≺ 𝐴)
83823exp 1137 . . . . 5 (𝑥 ∈ ω → (𝐴 ≈ 𝑥 → (𝐵 ≺ 𝑥 → 𝐵 ≺ 𝐴)))
8468, 83syldd 73 . . . 4 (𝑥 ∈ ω → (𝐴 ≈ 𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝐴)))
8584rexlimiv 3157 . . 3 (∃𝑥 ∈ ω 𝐴 ≈ 𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝐴))
861, 85sylbi 220 . 2 (𝐴 ∈ Fin → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝐴))
8786imp 412 1 ((𝐴 ∈ Fin ∧ 𝐵 ⊊ 𝐴) → 𝐵 ≺ 𝐴)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570  ∃wex 1812   ∈ wcel 2145  ∃wrex 3087   ∖ cdif 3896   ⊆ wss 3899   ⊊ wpss 3900  ∅c0 4279   class class class wbr 5103  ◡ccnv 5650  dom cdm 5651  ran crn 5652   ↾ cres 5653   “ cima 5654  Fun wfun 6532   Fn wfn 6533  –1-1→wf1 6535  –onto→wfo 6536  –1-1-onto→wf1o 6537  ‘cfv 6538  ωcom 7877   ≈ cen 8970   ≼ cdom 8971   ≺ csdm 8972  Fincfn 8973
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-om 7878  df-1o 8476  df-en 8974  df-dom 8975  df-sdom 8976  df-fin 8977
This theorem is used by:  phpeqd  9227  onomeneq  9229  pssinf  9253  f1finf1o  9264  findcard3  9274  fofinf1o  9321  ackbij1b  10316  fincssdom  10401  fin23lem25  10402  canthp1lem2  10738  pwfseqlem4  10747  uzindi  14125  symggen  19684  pgpssslw  19828  pgpfaclem2  20298  lindsenlbs  22157  ppiltx  27504  finminlem  37106
  Copyright terms: Public domain W3C validator