diff --git a/src/order/filter/at_top_bot.lean b/src/order/filter/at_top_bot.lean index 0daa34a7d241d..7bbf74a0724a0 100644 --- a/src/order/filter/at_top_bot.lean +++ b/src/order/filter/at_top_bot.lean @@ -101,6 +101,10 @@ lemma eventually_gt_at_top [preorder α] [no_max_order α] (a : α) : ∀ᶠ x in at_top, a < x := Ioi_mem_at_top a +lemma eventually_ne_at_top [preorder α] [no_max_order α] (a : α) : + ∀ᶠ x in at_top, x ≠ a := +(eventually_gt_at_top a).mono (λ x hx, hx.ne.symm) + lemma eventually_lt_at_bot [preorder α] [no_min_order α] (a : α) : ∀ᶠ x in at_bot, x < a := Iio_mem_at_bot a diff --git a/src/order/filter/basic.lean b/src/order/filter/basic.lean index d58438bca3069..9d2f5b1f24298 100644 --- a/src/order/filter/basic.lean +++ b/src/order/filter/basic.lean @@ -122,16 +122,19 @@ filter.ext_iff.2 @[simp] lemma univ_mem : univ ∈ f := f.univ_sets -lemma mem_of_superset : ∀ {x y : set α}, x ∈ f → x ⊆ y → y ∈ f := -f.sets_of_superset +lemma mem_of_superset {x y : set α} (hx : x ∈ f) (hxy : x ⊆ y) : y ∈ f := +f.sets_of_superset hx hxy -lemma inter_mem : ∀ {s t}, s ∈ f → t ∈ f → s ∩ t ∈ f := -f.inter_sets +lemma inter_mem {s t : set α} (hs : s ∈ f) (ht : t ∈ f) : s ∩ t ∈ f := +f.inter_sets hs ht -@[simp] lemma inter_mem_iff {s t} : s ∩ t ∈ f ↔ s ∈ f ∧ t ∈ f := +@[simp] lemma inter_mem_iff {s t : set α} : s ∩ t ∈ f ↔ s ∈ f ∧ t ∈ f := ⟨λ h, ⟨mem_of_superset h (inter_subset_left s t), mem_of_superset h (inter_subset_right s t)⟩, and_imp.2 inter_mem⟩ +lemma diff_mem {s t : set α} (hs : s ∈ f) (ht : tᶜ ∈ f) : s \ t ∈ f := +inter_mem hs ht + lemma univ_mem' (h : ∀ a, a ∈ s) : s ∈ f := mem_of_superset univ_mem (λ x _, h x)