@@ -2206,8 +2206,8 @@ begin
2206
2206
exact nat.not_succ_le_self n w,
2207
2207
end
2208
2208
2209
- lemma not_injective_infinite_finite [infinite α] [finite β] (f : α → β) : ¬ injective f :=
2210
- λ hf, (finite.of_injective f hf).not_infinite ‹_›
2209
+ lemma not_injective_infinite_finite {α β} [infinite α] [finite β] (f : α → β) : ¬ injective f :=
2210
+ λ hf, (finite.of_injective f hf).false
2211
2211
2212
2212
/--
2213
2213
The pigeonhole principle for infinitely many pigeons in finitely many pigeonholes. If there are
@@ -2216,16 +2216,12 @@ same pigeonhole.
2216
2216
2217
2217
See also: `fintype.exists_ne_map_eq_of_card_lt`, `finite.exists_infinite_fiber`.
2218
2218
-/
2219
- lemma finite.exists_ne_map_eq_of_infinite [infinite α] [finite β] (f : α → β) :
2219
+ lemma finite.exists_ne_map_eq_of_infinite {α β} [infinite α] [finite β] (f : α → β) :
2220
2220
∃ x y : α, x ≠ y ∧ f x = f y :=
2221
- begin
2222
- classical, by_contra' hf,
2223
- apply not_injective_infinite_finite f,
2224
- intros x y, contrapose, apply hf,
2225
- end
2221
+ by simpa only [injective, not_forall, not_imp, and.comm] using not_injective_infinite_finite f
2226
2222
2227
2223
instance function.embedding.is_empty {α β} [infinite α] [finite β] : is_empty (α ↪ β) :=
2228
- ⟨λ f, let ⟨x, y, ne, feq⟩ := finite.exists_ne_map_eq_of_infinite f in ne $ f.injective feq ⟩
2224
+ ⟨λ f, not_injective_infinite_finite f f. 2 ⟩
2229
2225
2230
2226
/--
2231
2227
The strong pigeonhole principle for infinitely many pigeons in
0 commit comments