Anosov plugs III: plugs, hyperbolic plugs, laminations, attractors
DefinitionAnosovPlugs_PlugsLet be a 3-manifold with boundary and a vector field on . At a boundary point, a vector written in the boundary chart points strictly inwards iff its first coordinate is positive.
- Entrance / exit boundary. (resp. ) is the set of boundary points where points strictly inwards (resp. outwards).
- Plug (Definition 3.1). is a plug if is a nonsingular C¹ vector field transverse to . It is attracting if and repelling if .
- Maximal invariant set : points whose orbit is defined for all real times. Stable set : points whose forward orbit is defined for all ; unstable set : points whose backward orbit is defined for all .
- Hyperbolic plug (Definition 3.2): a plug whose maximal invariant set is a hyperbolic set (with 1-dimensional strong stable/unstable bundles).
- Entrance and exit laminations: , .
- Leaves. The weak stable manifold of is the set of forward-complete points such that tends to the diagonal as for some shift . The leaf of through is the path component of in (weak stable manifold of ) ; leaves of are defined in the same way for .
- Attractor / repeller. An attractor is a nonempty compact invariant subset with a dense orbit, admitting a neighbourhood with . A repeller is an attractor of .
Formalization Note Leaves are defined as path components of intersections of weak stable manifolds with the boundary; since weak stable manifolds are injectively immersed surfaces meeting any transversal in a totally disconnected set, these path components are exactly the leaves of the paper.
import Mathlib
import Definitions.Def_AnosovPlugs_Hyperbolic
/-!
Béguin–Bonatti–Yu, *Building Anosov flows on 3-manifolds*, Geom. Topol. 21 (2017).
Plugs and hyperbolic plugs (§1.2, Definitions 3.1 and 3.2), their maximal invariant set, stable
and unstable sets, entrance/exit laminations and the leaves of these laminations, attractors and
repellers.
Tangent vectors at `x` are expressed in the chart at `x`, whose model is the half-space
`{x₀ ≥ 0}`; at a boundary point `x`, a vector `v` points strictly inwards iff `v₀ > 0`.
-/
open scoped Manifold ContDiff Topology
open Set Filter
namespace AnosovPlugs
variable {M : Type} [TopologicalSpace M] [ChartedSpace (EuclideanHalfSpace 3) M]
[IsManifold I3 ∞ M]
/-- The first coordinate `v₀` of a vector `v ∈ ℝ³`. A tangent vector at a boundary point,
written in the chart at that point (modelled on the half-space `{x₀ ≥ 0}`), points strictly
inwards iff its first coordinate is positive. -/
def normalCoord (v : EuclideanSpace ℝ (Fin 3)) : ℝ := v 0
/-- The entrance boundary `∂^{in} M`: boundary points at which `X` points strictly inwards. -/
def inBoundary (X : (x : M) → TangentSpace I3 x) : Set M :=
{x | x ∈ I3.boundary M ∧ 0 < normalCoord (X x)}
/-- The exit boundary `∂^{out} M`: boundary points at which `X` points strictly outwards. -/
def outBoundary (X : (x : M) → TangentSpace I3 x) : Set M :=
{x | x ∈ I3.boundary M ∧ normalCoord (X x) < 0}
/-- `X` is nonsingular and transverse to the boundary `∂M`. -/
def IsNonsingularTransverse (X : (x : M) → TangentSpace I3 x) : Prop :=
(∀ x, X x ≠ 0) ∧ ∀ x ∈ I3.boundary M, normalCoord (X x) ≠ 0
/-- `(M, X)` is a plug (Definition 3.1): `X` is a nonsingular C¹ vector field transverse to the
boundary `∂M`. (Compactness of `M` is a standing typeclass assumption where plugs are used.) -/
def IsPlug (X : (x : M) → TangentSpace I3 x) : Prop :=
IsC1VectorField X ∧ IsNonsingularTransverse X
/-- Attracting plug: a plug with empty exit boundary. -/
def IsAttractingPlug (X : (x : M) → TangentSpace I3 x) : Prop :=
IsPlug X ∧ outBoundary X = ∅
/-- Repelling plug: a plug with empty entrance boundary. -/
def IsRepellingPlug (X : (x : M) → TangentSpace I3 x) : Prop :=
IsPlug X ∧ inBoundary X = ∅
/-- The maximal invariant set `Λ`: points whose forward and backward orbits are defined for all
times. -/
def maxInvSet (X : (x : M) → TangentSpace I3 x) : Set M :=
{x | ∃ γ : ℝ → M, γ 0 = x ∧ IsMIntegralCurve γ X}
/-- The stable set `W^s(Λ)`: points whose forward orbit is defined for all positive times. -/
def stableSet (X : (x : M) → TangentSpace I3 x) : Set M :=
{x | ∃ γ : ℝ → M, γ 0 = x ∧ IsMIntegralCurveOn γ X (Ici 0)}
/-- The unstable set `W^u(Λ)`: points whose backward orbit is defined for all negative times. -/
def unstableSet (X : (x : M) → TangentSpace I3 x) : Set M :=
{x | ∃ γ : ℝ → M, γ 0 = x ∧ IsMIntegralCurveOn γ X (Iic 0)}
/-- `(M, X)` is a hyperbolic plug (Definition 3.2): a plug whose maximal invariant set is a
hyperbolic set with one-dimensional strong stable and strong unstable bundles. -/
def IsHyperbolicPlug (X : (x : M) → TangentSpace I3 x) : Prop :=
IsPlug X ∧ IsHyperbolicSet X (maxInvSet X)
/-- The entrance lamination `L^s_X = W^s(Λ) ∩ ∂^{in} M`. -/
def entranceLamination (X : (x : M) → TangentSpace I3 x) : Set M :=
stableSet X ∩ inBoundary X
/-- The exit lamination `L^u_X = W^u(Λ) ∩ ∂^{out} M`. -/
def exitLamination (X : (x : M) → TangentSpace I3 x) : Set M :=
unstableSet X ∩ outBoundary X
/-- The weak stable manifold of a point `p`: the points `q` with forward-complete orbit whose
forward orbit is asymptotic to the forward orbit of `p` up to a time shift `s`, i.e.
`(X^t q, X^{t+s} p)` tends to the diagonal as `t → +∞`. -/
def weakStableSet (X : (x : M) → TangentSpace I3 x) (p : M) : Set M :=
{q | q ∈ stableSet X ∧ ∃ s : ℝ,
Tendsto (fun t : ℝ => (flowMap X t q, flowMap X (t + s) p)) atTop (𝓝ˢ (diagonal M))}
/-- The leaf through `p` of the entrance lamination: the path component of `p` in the
intersection of the weak stable manifold of `p` with the entrance boundary. -/
def entranceLeaf (X : (x : M) → TangentSpace I3 x) (p : M) : Set M :=
pathComponentIn (weakStableSet X p ∩ inBoundary X) p
/-- The leaf through `p` of the exit lamination (the entrance leaf for the reversed field). -/
def exitLeaf (X : (x : M) → TangentSpace I3 x) (p : M) : Set M :=
entranceLeaf (fun x => -X x) p
/-- `A` is an attractor of `X`: a nonempty compact invariant set, contained in the maximal
invariant set, with a dense orbit, admitting a neighbourhood `U` with
`⋂_{t ≥ 0} X^t(U) = A` (where `X^t(U)` is the set of points `X^t(y)`, `y ∈ U`, whose forward
orbit is defined up to time `t`). -/
def IsAttractor (X : (x : M) → TangentSpace I3 x) (A : Set M) : Prop :=
A.Nonempty ∧ IsCompact A ∧ A ⊆ maxInvSet X ∧ (∀ x ∈ A, ∀ t : ℝ, flowMap X t x ∈ A) ∧
(∃ x ∈ A, A ⊆ closure (range fun t : ℝ => flowMap X t x)) ∧
∃ U ∈ 𝓝ˢ A, (⋂ t ∈ Ici (0 : ℝ), {y | ∃ z ∈ U, FlowDefined X z t ∧ flowMap X t z = y}) = A
/-- `A` is a repeller of `X`: an attractor of `-X`. -/
def IsRepeller (X : (x : M) → TangentSpace I3 x) (A : Set M) : Prop :=
IsAttractor (fun x => -X x) A
/-- The maximal invariant set of `X` contains neither attractors nor repellers. -/
def NoAttractorNorRepeller (X : (x : M) → TangentSpace I3 x) : Prop :=
∀ A ⊆ maxInvSet X, ¬ IsAttractor X A ∧ ¬ IsRepeller X A
end AnosovPlugs
Read-back
What the Lean code literally says, in plain math · Aristotle (Harmonic) — same agent as the drafter; non-blind
Non-blind read-back — not independent testimony. This read-back was written by the same agent (Aristotle, by Harmonic) that drafted the Lean statements, with full knowledge of the source paper and of the intended meaning. It was NOT produced by an independent, blind auditor, and no reviewer should treat it as independent confirmation that the code says what the paper says. Compare it against the Lean code yourself.
is a charted space over the half-space with a manifold structure; (coordinates in the chart at ).
- normalCoord , the first coordinate of .
- inBoundary ; outBoundary , where is Mathlib's manifold boundary (points not mapped to the interior of by their chart).
- IsNonsingularTransverse : for all , and for all .
- IsPlug : is and IsNonsingularTransverse . No compactness is part of this definition.
- IsAttractingPlug : plug with outBoundary . IsRepellingPlug : plug with inBoundary .
- maxInvSet an integral curve of on all of .
- stableSet integral curve of on ; unstableSet : same on .
- IsHyperbolicPlug : IsPlug and IsHyperbolicSet (maxInvSet ) (previous file: metric, lines , constants with invariance and exponential estimates on ).
- entranceLamination stableSet inBoundary ; exitLamination unstableSet outBoundary .
- weakStableSet stableSet diagonal as , where "tends to the diagonal" means eventually inside every neighbourhood of the diagonal of . No condition is put on (if is not forward complete, flowMap returns at undefined times).
- entranceLeaf is the path component of inside (weakStableSet ) (inBoundary ) (empty if is not in that set). exitLeaf is entranceLeaf of the field at .
- IsAttractor : nonempty, compact, maxInvSet , flowMap maps into for all real , some has , and some neighbourhood of satisfies
- IsRepeller : IsAttractor .
- NoAttractorNorRepeller : no subset of maxInvSet is an attractor or a repeller of .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.