Flows and invariant sets #
This file defines a flow on a topological space α by a topological
monoid τ as a continuous monoid-act of τ on α. Anticipating the
cases where τ is one of ℕ, ℤ, ℝ⁺, or ℝ, we use additive
notation for the monoids, though the definition does not require
commutativity.
A subset s of α is invariant under a family of maps ϕₜ : α → α
if ϕₜ s ⊆ s for all t. In many cases ϕ will be a flow on
α. For the cases where ϕ is a flow by an ordered (additive,
commutative) monoid, we additionally define forward invariance, where
t ranges over those elements which are nonnegative.
Additionally, we define such constructions as the restriction of a flow onto an invariant subset, and the time-reversal of a flow by a group.
Invariant sets #
A set s ⊆ α is invariant under ϕ : τ → α → α if
ϕ t s ⊆ s for all t in τ.
Equations
- IsInvariant ϕ s = ∀ (t : τ), Set.MapsTo (ϕ t) s s
Instances For
A set s ⊆ α is forward-invariant under ϕ : τ → α → α if
ϕ t s ⊆ s for all t ≥ 0.
Equations
- IsFwInvariant ϕ s = ∀ ⦃t : τ⦄, 0 ≤ t → Set.MapsTo (ϕ t) s s
Instances For
If τ is a CanonicallyOrderedAddCommMonoid (e.g., ℕ or ℝ≥0), then the notions
IsFwInvariant and IsInvariant are equivalent.
If τ is a CanonicallyOrderedAddCommMonoid (e.g., ℕ or ℝ≥0), then the notions
IsFwInvariant and IsInvariant are equivalent.
Flows #
A flow on a topological space α by an additive topological
monoid τ is a continuous monoid action of τ on α.
- toFun : τ → α → α
- cont' : Continuous (Function.uncurry self.toFun)
- map_zero' : ∀ (x : α), self.toFun 0 x = x
Instances For
Equations
- Flow.instInhabitedFlow = { default := { toFun := fun (x : τ) (x : α) => x, cont' := ⋯, map_add' := ⋯, map_zero' := ⋯ } }
Equations
- Flow.instCoeFunFlowForAll = { coe := Flow.toFun }
Alias of Flow.continuous.
Iterations of a continuous function from a topological space α
to itself defines a semiflow by ℕ on α.
Equations
- Flow.fromIter h = { toFun := fun (n : ℕ) (x : α) => g^[n] x, cont' := ⋯, map_add' := ⋯, map_zero' := ⋯ }
Instances For
Restriction of a flow onto an invariant set.
Equations
- Flow.restrict ϕ h = { toFun := fun (t : τ) => Set.MapsTo.restrict (ϕ.toFun t) s s ⋯, cont' := ⋯, map_add' := ⋯, map_zero' := ⋯ }
Instances For
The time-reversal of a flow ϕ by a (commutative, additive) group
is defined ϕ.reverse t x = ϕ (-t) x.
Equations
- Flow.reverse ϕ = { toFun := fun (t : τ) => ϕ.toFun (-t), cont' := ⋯, map_add' := ⋯, map_zero' := ⋯ }
Instances For
The map ϕ t as a homeomorphism.
Equations
- Flow.toHomeomorph ϕ t = { toEquiv := { toFun := ϕ.toFun t, invFun := ϕ.toFun (-t), left_inv := ⋯, right_inv := ⋯ }, continuous_toFun := ⋯, continuous_invFun := ⋯ }