@@ -99,30 +99,32 @@ def ofDescendingChain (s : ℕ → α) (hs : ∀ i j, i ≤ j → s i ≥ s j) :
9999@[simp] lemma mem_descendingChain_iff (s : ℕ → α) (hs : ∀ i j, i ≤ j → s i ≥ s j) :
100100 x ∈ ofDescendingChain s hs ↔ ∃ i, s i ≤ x := by rfl
101101
102- class Generic (F : PFilter α) (𝓓 : Set (DenseSet α)) where
103- generic : ∀ d ∈ 𝓓, ∃ a ∈ F, a ∈ d
102+ class IsGeneric (F : PFilter α) (𝓓 : Set (DenseSet α)) where
103+ isGeneric : ∀ d ∈ 𝓓, ∃ a ∈ F, a ∈ d
104104
105- @[simp] instance Generic .empty (F : PFilter α) : F.Generic ∅ := ⟨by simp⟩
105+ @[simp] instance IsGeneric .empty (F : PFilter α) : F.IsGeneric ∅ := ⟨by simp⟩
106106
107- theorem countable_generic [Inhabited α] (𝓓 : Set (DenseSet α)) (ctb : Set.Countable 𝓓) :
108- ∃ G, Generic G 𝓓 := by
107+ theorem countable_isGeneric (𝓓 : Set (DenseSet α)) (ctb : Set.Countable 𝓓) (a : α ) :
108+ ∃ G : PFilter α, G.IsGeneric 𝓓 ∧ a ∈ G := by
109109 by_cases emp : 𝓓.Nonempty
110- case neg => exact ⟨default , by simp [Set.not_nonempty_iff_eq_empty.mp emp]⟩
110+ case neg => exact ⟨principal a , by simp [Set.not_nonempty_iff_eq_empty.mp emp]⟩
111111 have : ∃ D : ℕ → 𝓓, Function.Surjective D := ctb.exists_surjective emp
112112 rcases this with ⟨D, hD⟩
113- let s (n : ℕ) : α := n.rec default fun i ↦ (D i).val.choose
113+ let s (n : ℕ) : α := n.rec a fun i ↦ (D i).val.choose
114114 have hs : ∀ i j, i ≤ j → s i ≥ s j := fun i j hij ↦
115115 Nat.monotone_of_succ_monotone (r := fun i j ↦ s i ≥ s j)
116116 (fun _ ↦ le_refl _)
117117 ⟨fun _ _ _ ↦ ge_trans⟩
118118 (by simp [s]) hij
119- refine ⟨ofDescendingChain s hs, ⟨?_⟩⟩
120- intro d hd
121- rcases show ∃ i, D i = ⟨d, hd⟩ from hD ⟨d, hd⟩ with ⟨i, hi⟩
122- refine ⟨s (i + 1 ), ?_, ?_⟩
123- · simp only [mem_descendingChain_iff]
124- exact ⟨i + 1 , by rfl⟩
125- · simp [s, hi]
119+ refine ⟨ofDescendingChain s hs, ⟨?_⟩, ?_⟩
120+ · intro d hd
121+ rcases show ∃ i, D i = ⟨d, hd⟩ from hD ⟨d, hd⟩ with ⟨i, hi⟩
122+ refine ⟨s (i + 1 ), ?_, ?_⟩
123+ · simp only [mem_descendingChain_iff]
124+ exact ⟨i + 1 , by rfl⟩
125+ · simp [s, hi]
126+ · suffices ∃ i, s i ≤ a by simpa
127+ refine ⟨0 , by simp [s]⟩
126128
127129end Order.PFilter
128130
0 commit comments