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

Theorem php3 9238
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 5331. (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 9016 . . 3 (𝐴 ∈ Fin ↔ ∃𝑥 ∈ ω 𝐴 ≈ 𝑥)
2 bren 8997 . . . . . 6 (𝐴 ≈ 𝑥 ↔ ∃𝑓 𝑓:𝐴–1-1-onto→𝑥)
3 pssss 4028 . . . . . . . . . . . . . 14 (𝐵 ⊊ 𝐴 → 𝐵 ⊆ 𝐴)
4 imass2 6061 . . . . . . . . . . . . . 14 (𝐵 ⊆ 𝐴 → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
53, 4syl 18 . . . . . . . . . . . . 13 (𝐵 ⊊ 𝐴 → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
65adantl 487 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴))
7 pssnel 4427 . . . . . . . . . . . . . 14 (𝐵 ⊊ 𝐴 → ∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵))
8 eldif 4052 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (𝐴 ∖ 𝐵) ↔ (𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵))
9 f1ofn 6836 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓 Fn 𝐴)
10 difss 4075 . . . . . . . . . . . . . . . . . . . 20 (𝐴 ∖ 𝐵) ⊆ 𝐴
11 fnfvima 7249 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓 Fn 𝐴 ∧ (𝐴 ∖ 𝐵) ⊆ 𝐴 ∧ 𝑦 ∈ (𝐴 ∖ 𝐵)) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵)))
12113expia 1139 . . . . . . . . . . . . . . . . . . . 20 ((𝑓 Fn 𝐴 ∧ (𝐴 ∖ 𝐵) ⊆ 𝐴) → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵))))
139, 10, 12sylancl 598 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵))))
14 dff1o3 6842 . . . . . . . . . . . . . . . . . . . . 21 (𝑓:𝐴–1-1-onto→𝑥 ↔ (𝑓:𝐴–onto→𝑥 ∧ Fun ◡𝑓))
15 imadif 6635 . . . . . . . . . . . . . . . . . . . . 21 (Fun ◡𝑓 → (𝑓 “ (𝐴 ∖ 𝐵)) = ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)))
1614, 15simplbiim 514 . . . . . . . . . . . . . . . . . . . 20 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ (𝐴 ∖ 𝐵)) = ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)))
1716eleq2d 2850 . . . . . . . . . . . . . . . . . . 19 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑓‘𝑦) ∈ (𝑓 “ (𝐴 ∖ 𝐵)) ↔ (𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵))))
1813, 17sylibd 242 . . . . . . . . . . . . . . . . . 18 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → (𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵))))
19 n0i 4289 . . . . . . . . . . . . . . . . . 18 ((𝑓‘𝑦) ∈ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
2018, 19syl6 36 . . . . . . . . . . . . . . . . 17 (𝑓:𝐴–1-1-onto→𝑥 → (𝑦 ∈ (𝐴 ∖ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
218, 20biimtrrid 246 . . . . . . . . . . . . . . . 16 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
2221exlimdv 1967 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → (∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅))
2322imp 412 . . . . . . . . . . . . . 14 ((𝑓:𝐴–1-1-onto→𝑥 ∧ ∃𝑦(𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵)) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
247, 23sylan2 605 . . . . . . . . . . . . 13 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ¬ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
25 ssdif0 4317 . . . . . . . . . . . . 13 ((𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵) ↔ ((𝑓 “ 𝐴) ∖ (𝑓 “ 𝐵)) = ∅)
2624, 25sylnibr 332 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ¬ (𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵))
27 dfpss3 4019 . . . . . . . . . . . 12 ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ ((𝑓 “ 𝐵) ⊆ (𝑓 “ 𝐴) ∧ ¬ (𝑓 “ 𝐴) ⊆ (𝑓 “ 𝐵)))
286, 26, 27sylanbrc 595 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴))
29 imadmrn 6073 . . . . . . . . . . . . . 14 (𝑓 “ dom 𝑓) = ran 𝑓
30 f1odm 6839 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → dom 𝑓 = 𝐴)
3130imaeq2d 6058 . . . . . . . . . . . . . 14 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ dom 𝑓) = (𝑓 “ 𝐴))
32 f1ofo 6843 . . . . . . . . . . . . . . 15 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓:𝐴–onto→𝑥)
33 forn 6810 . . . . . . . . . . . . . . 15 (𝑓:𝐴–onto→𝑥 → ran 𝑓 = 𝑥)
3432, 33syl 18 . . . . . . . . . . . . . 14 (𝑓:𝐴–1-1-onto→𝑥 → ran 𝑓 = 𝑥)
3529, 31, 343eqtr3a 2822 . . . . . . . . . . . . 13 (𝑓:𝐴–1-1-onto→𝑥 → (𝑓 “ 𝐴) = 𝑥)
3635psseq2d 4026 . . . . . . . . . . . 12 (𝑓:𝐴–1-1-onto→𝑥 → ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ (𝑓 “ 𝐵) ⊊ 𝑥))
3736adantr 486 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → ((𝑓 “ 𝐵) ⊊ (𝑓 “ 𝐴) ↔ (𝑓 “ 𝐵) ⊊ 𝑥))
3828, 37mpbid 235 . . . . . . . . . 10 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 “ 𝐵) ⊊ 𝑥)
39 php2 9237 . . . . . . . . . 10 ((𝑥 ∈ ω ∧ (𝑓 “ 𝐵) ⊊ 𝑥) → (𝑓 “ 𝐵) ≺ 𝑥)
4038, 39sylan2 605 . . . . . . . . 9 ((𝑥 ∈ ω ∧ (𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴)) → (𝑓 “ 𝐵) ≺ 𝑥)
41 nnfi 9197 . . . . . . . . . 10 (𝑥 ∈ ω → 𝑥 ∈ Fin)
42 f1of1 6834 . . . . . . . . . . . 12 (𝑓:𝐴–1-1-onto→𝑥 → 𝑓:𝐴–1-1→𝑥)
43 f1ores 6850 . . . . . . . . . . . 12 ((𝑓:𝐴–1-1→𝑥 ∧ 𝐵 ⊆ 𝐴) → (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵))
4442, 3, 43syl2an 608 . . . . . . . . . . 11 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵))
45 vex 3458 . . . . . . . . . . . . . 14 𝑓 ∈ V
4645resex 6024 . . . . . . . . . . . . 13 (𝑓 ↾ 𝐵) ∈ V
47 f1oeq1 6823 . . . . . . . . . . . . 13 (𝑦 = (𝑓 ↾ 𝐵) → (𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵) ↔ (𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵)))
4846, 47spcev 3564 . . . . . . . . . . . 12 ((𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵) → ∃𝑦 𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵))
49 bren 8997 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓 “ 𝐵) ↔ ∃𝑦 𝑦:𝐵–1-1-onto→(𝑓 “ 𝐵))
5048, 49sylibr 237 . . . . . . . . . . 11 ((𝑓 ↾ 𝐵):𝐵–1-1-onto→(𝑓 “ 𝐵) → 𝐵 ≈ (𝑓 “ 𝐵))
5144, 50syl 18 . . . . . . . . . 10 ((𝑓:𝐴–1-1-onto→𝑥 ∧ 𝐵 ⊊ 𝐴) → 𝐵 ≈ (𝑓 “ 𝐵))
52 endom 9020 . . . . . . . . . . . 12 (𝐵 ≈ (𝑓 “ 𝐵) → 𝐵 ≼ (𝑓 “ 𝐵))
53 sdomdom 9021 . . . . . . . . . . . . . . 15 ((𝑓 “ 𝐵) ≺ 𝑥 → (𝑓 “ 𝐵) ≼ 𝑥)
54 domfi 9218 . . . . . . . . . . . . . . 15 ((𝑥 ∈ Fin ∧ (𝑓 “ 𝐵) ≼ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
5553, 54sylan2 605 . . . . . . . . . . . . . 14 ((𝑥 ∈ Fin ∧ (𝑓 “ 𝐵) ≺ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
56553adant2 1149 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → (𝑓 “ 𝐵) ∈ Fin)
57 domfi 9218 . . . . . . . . . . . . . . 15 (((𝑓 “ 𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵)) → 𝐵 ∈ Fin)
58573adant3 1150 . . . . . . . . . . . . . 14 (((𝑓 “ 𝐵) ∈ Fin ∧ 𝐵 ≼ (𝑓 “ 𝐵) ∧ (𝑓 “ 𝐵) ≺ 𝑥) → 𝐵 ∈ Fin)
59 domsdomtrfi 9231 . . . . . . . . . . . . . 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 1967 . . . . . 6 (𝑥 ∈ ω → (∃𝑓 𝑓:𝐴–1-1-onto→𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝑥)))
682, 67biimtrid 245 . . . . 5 (𝑥 ∈ ω → (𝐴 ≈ 𝑥 → (𝐵 ⊊ 𝐴 → 𝐵 ≺ 𝑥)))
69 ensymfib 9213 . . . . . . . . . . 11 (𝑥 ∈ Fin → (𝑥 ≈ 𝐴 ↔ 𝐴 ≈ 𝑥))
7069adantr 486 . . . . . . . . . 10 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥) → (𝑥 ≈ 𝐴 ↔ 𝐴 ≈ 𝑥))
7170biimp3ar 1499 . . . . . . . . 9 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝐴 ≈ 𝑥) → 𝑥 ≈ 𝐴)
72 endom 9020 . . . . . . . . . 10 (𝑥 ≈ 𝐴 → 𝑥 ≼ 𝐴)
73 sdomdom 9021 . . . . . . . . . . . . 13 (𝐵 ≺ 𝑥 → 𝐵 ≼ 𝑥)
74 domfi 9218 . . . . . . . . . . . . 13 ((𝑥 ∈ Fin ∧ 𝐵 ≼ 𝑥) → 𝐵 ∈ Fin)
7573, 74sylan2 605 . . . . . . . . . . . 12 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥) → 𝐵 ∈ Fin)
76753adant3 1150 . . . . . . . . . . 11 ((𝑥 ∈ Fin ∧ 𝐵 ≺ 𝑥 ∧ 𝑥 ≼ 𝐴) → 𝐵 ∈ Fin)
77 sdomdomtrfi 9230 . . . . . . . . . . 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 3160 . . 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 1569  ∃wex 1811   ∈ wcel 2146  ∃wrex 3090   ⊆ wss 3900   ⊊ wpss 4016   ∖ cdif 4048  ∅c0 4281   class class class wbr 5106  ◡ccnv 5654  dom cdm 5655  ran crn 5656   ↾ cres 5657   “ cima 5658  Fun wfun 6541   Fn wfn 6542  –1-1→wf1 6544  –onto→wfo 6545  –1-1-onto→wf1o 6546  ‘cfv 6547  ωcom 7887   ≈ cen 8984   ≼ cdom 8985   ≺ csdm 8986  Fincfn 8987
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1944  ax-6 2001  ax-7 2042  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2196  ax-12 2215  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pr 5395  ax-un 7761
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2101  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-ord 6372  df-on 6373  df-lim 6374  df-suc 6375  df-iota 6501  df-fun 6549  df-fn 6550  df-f 6551  df-f1 6552  df-fo 6553  df-f1o 6554  df-fv 6555  df-om 7888  df-1o 8490  df-en 8988  df-dom 8989  df-sdom 8990  df-fin 8991
This theorem is used by:  phpeqd  9241  onomeneq  9243  pssinf  9267  f1finf1o  9278  findcard3  9288  fofinf1o  9335  ackbij1b  10329  fincssdom  10414  fin23lem25  10415  canthp1lem2  10751  pwfseqlem4  10760  uzindi  14138  symggen  19699  pgpssslw  19843  pgpfaclem2  20313  lindsenlbs  22172  ppiltx  27519  finminlem  37236
  Copyright terms: Public domain W3C validator