Skip to content

Commit 5ba24f2

Browse files
committed
chore(Dynamics): factor out a definition and fix names (leanprover-community#37402)
Define the identity as a constant flow and correct a few names.
1 parent 85dcf29 commit 5ba24f2

2 files changed

Lines changed: 23 additions & 9 deletions

File tree

Mathlib/Dynamics/Flow.lean

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,22 @@ namespace Flow
105105
variable {τ : Type*} [AddMonoid τ] [TopologicalSpace τ] [ContinuousAdd τ]
106106
{α : Type*} [TopologicalSpace α] (ϕ : Flow τ α)
107107

108-
instance : Inhabited (Flow τ α) :=
109-
⟨{ toFun := fun _ x => x
110-
cont' := continuous_snd
111-
map_add' := fun _ _ _ => rfl
112-
map_zero' := fun _ => rfl }⟩
113-
114108
instance : CoeFun (Flow τ α) fun _ => τ → α → α := ⟨Flow.toFun⟩
115109

110+
variable (τ α) in
111+
/-- The identity map as a constant flow. -/
112+
protected def id : Flow τ α where
113+
toFun _ := id
114+
cont' := continuous_snd
115+
map_add' _ _ _ := rfl
116+
map_zero' _ := rfl
117+
118+
@[simp]
119+
theorem id_apply (t : τ) : Flow.id τ α t = id := rfl
120+
121+
instance : Inhabited (Flow τ α) :=
122+
⟨Flow.id τ α⟩
123+
116124
@[ext]
117125
theorem ext : ∀ {ϕ₁ ϕ₂ : Flow τ α}, (∀ t x, ϕ₁ t x = ϕ₂ t x) → ϕ₁ = ϕ₂
118126
| ⟨f₁, _, _, _⟩, ⟨f₂, _, _, _⟩, h => by

Mathlib/Dynamics/OmegaLimit.lean

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,11 +134,14 @@ theorem mem_omegaLimit_iff_frequently₂ (y : β) :
134134

135135
/-- An element `y` is in the ω-limit of `x` w.r.t. `f` if the forward
136136
images of `x` frequently (w.r.t. `f`) falls within an arbitrary neighbourhood of `y`. -/
137-
theorem mem_omegaLimit_singleton_iff_map_cluster_point (x : α) (y : β) :
137+
theorem mem_omegaLimit_singleton_iff_mapClusterPt (x : α) (y : β) :
138138
y ∈ ω f ϕ {x} ↔ MapClusterPt y f fun t ↦ ϕ t x := by
139139
simp_rw [mem_omegaLimit_iff_frequently, mapClusterPt_iff_frequently, singleton_inter_nonempty,
140140
mem_preimage]
141141

142+
@[deprecated (since := "2026-03-31")]
143+
alias mem_omegaLimit_singleton_iff_map_cluster_point := mem_omegaLimit_singleton_iff_mapClusterPt
144+
142145
/-!
143146
### Set operations and omega limits
144147
-/
@@ -187,13 +190,16 @@ theorem omegaLimit_eq_iInter_inter {v : Set τ} (hv : v ∈ f) :
187190
rw [omegaLimit_eq_biInter_inter _ _ _ hv]
188191
apply biInter_eq_iInter
189192

190-
theorem omegaLimit_subset_closure_fw_image {u : Set τ} (hu : u ∈ f) :
193+
theorem omegaLimit_subset_closure_image2 {u : Set τ} (hu : u ∈ f) :
191194
ω f ϕ s ⊆ closure (image2 ϕ u s) := by
192195
rw [omegaLimit_eq_iInter]
193196
intro _ hx
194197
rw [mem_iInter] at hx
195198
exact hx ⟨u, hu⟩
196199

200+
@[deprecated (since := "2026-03-31")]
201+
alias omegaLimit_subset_closure_fw_image := omegaLimit_subset_closure_image2
202+
197203
-- An instance with better keys
198204
instance : Inhabited f.sets := Filter.inhabitedMem
199205

@@ -348,7 +354,7 @@ theorem omegaLimit_omegaLimit (hf : ∀ t, Tendsto (t + ·) f f) : ω f ϕ (ω f
348354
(inter_subset_inter_left _
349355
((isInvariant_iff_image _ _).mp (isInvariant_omegaLimit _ _ _ hf) _))
350356
have l₂ : (closure (image2 ϕ u s) ∩ o).Nonempty :=
351-
l₁.mono fun b hb ↦ ⟨omegaLimit_subset_closure_fw_image _ _ _ hu hb.1, hb.2
357+
l₁.mono fun b hb ↦ ⟨omegaLimit_subset_closure_image2 _ _ _ hu hb.1, hb.2
352358
have l₃ : (o ∩ image2 ϕ u s).Nonempty := by
353359
rcases l₂ with ⟨b, hb₁, hb₂⟩
354360
exact mem_closure_iff_nhds.mp hb₁ o (IsOpen.mem_nhds ho₂ hb₂)

0 commit comments

Comments
 (0)