@@ -261,20 +261,28 @@ lemma has_basis_self {l : filter α} {P : set α → Prop} :
261
261
has_basis l (λ s, s ∈ l ∧ P s) id ↔ ∀ t, (t ∈ l ↔ ∃ r ∈ l, P r ∧ r ⊆ t) :=
262
262
by simp only [has_basis_iff, exists_prop, id, and_assoc]
263
263
264
- /-- If `{s i | p i}` is a basis of a filter `l` and `V ∈ l`, then `{s i | p i ∧ s i ⊆ V}`
265
- is a basis of `l`. -/
266
- lemma has_basis.restrict (h : l.has_basis p s) {V : set α} (hV : V ∈ l) :
267
- l.has_basis (λ i, p i ∧ s i ⊆ V) s :=
264
+ /-- If `{s i | p i}` is a basis of a filter `l` and each `s i` includes `s j` such that
265
+ `p j ∧ q j`, then `{s j | p j ∧ q j}` is a basis of `l`. -/
266
+ lemma has_basis.restrict (h : l.has_basis p s) {q : ι → Prop }
267
+ (hq : ∀ i, p i → ∃ j, p j ∧ q j ∧ s j ⊆ s i) :
268
+ l.has_basis (λ i, p i ∧ q i) s :=
268
269
begin
269
270
refine ⟨λ t, ⟨λ ht, _, λ ⟨i, hpi, hti⟩, h.mem_iff.2 ⟨i, hpi.1 , hti⟩⟩⟩,
270
- rcases h.mem_iff.1 (inter_mem_sets hV ht) with ⟨i, hpi, hti⟩,
271
- rw subset_inter_iff at hti ,
272
- exact ⟨i , ⟨hpi, hti. 1 ⟩, hti. 2 ⟩
271
+ rcases h.mem_iff.1 ht with ⟨i, hpi, hti⟩,
272
+ rcases hq i hpi with ⟨j, hpj, hqj, hji⟩ ,
273
+ exact ⟨j , ⟨hpj, hqj ⟩, subset.trans hji hti ⟩
273
274
end
274
275
276
+ /-- If `{s i | p i}` is a basis of a filter `l` and `V ∈ l`, then `{s i | p i ∧ s i ⊆ V}`
277
+ is a basis of `l`. -/
278
+ lemma has_basis.restrict_subset (h : l.has_basis p s) {V : set α} (hV : V ∈ l) :
279
+ l.has_basis (λ i, p i ∧ s i ⊆ V) s :=
280
+ h.restrict $ λ i hi, (h.mem_iff.1 (inter_mem_sets hV (h.mem_of_mem hi))).imp $
281
+ λ j hj, ⟨hj.fst, subset_inter_iff.1 hj.snd⟩
282
+
275
283
lemma has_basis.has_basis_self_subset {p : set α → Prop } (h : l.has_basis (λ s, s ∈ l ∧ p s) id)
276
284
{V : set α} (hV : V ∈ l) : l.has_basis (λ s, s ∈ l ∧ p s ∧ s ⊆ V) id :=
277
- by simpa only [and_assoc] using h.restrict hV
285
+ by simpa only [and_assoc] using h.restrict_subset hV
278
286
279
287
theorem has_basis.ge_iff (hl' : l'.has_basis p' s') : l ≤ l' ↔ ∀ i', p' i' → s' i' ∈ l :=
280
288
⟨λ h i' hi', h $ hl'.mem_of_mem hi',
0 commit comments