A locally unique downward crossing remains the first downward crossing
ProvedBianchiIX.eventually_activeWall_first_downcrossingFor real variables , set
The shear components and wall rates are
These functions define the normalized vacuum Bianchi IX vector field . For , define
and .
For , put
For , set and
Write for the normalized vector field and for its constraint.
The normalized and projective state spaces are and with their finite-product norms. The maps act on these state spaces.
The projective vector field in normalized time is
Write , , and let be the maximal solution of with initial value at and domain . Put
Let and put
Fix and a function continuous at , with . Suppose the reference flow lies in its maximal domain with on . At each earlier time in , assume either or . For every sufficiently near , assume
Assume also that, for near , equality implies . Then, for near , is the least time in the maximal domain at which the height is and the event rate is negative. The whole interval stays in that domain with positive clock .
import Definitions.Def_BianchiIX_Dynamics_Normalized import Definitions.Def_BianchiIX_Dynamics_ProjectiveRegularity import Definitions.Def_BianchiIX_Dynamics_MaximalFlow import Definitions.Def_BianchiIX_Dynamics_FlowRegularity import Definitions.Def_BianchiIX_Dynamics_Events import Mathlib.Analysis.Calculus.Deriv.Pow import Mathlib.Analysis.Calculus.Deriv.Mul import Mathlib.Analysis.Calculus.Deriv.Add import Mathlib.Analysis.Real.Sqrt import Mathlib.Tactic.Linarith import Mathlib.Tactic.Ring import Mathlib.Analysis.Calculus.ContDiff.Operations import Mathlib.Analysis.Calculus.Deriv.Prod import Mathlib.Analysis.Calculus.MeanValue import Mathlib.Data.Fin.VecNotation import Mathlib.Tactic.FinCases import Mathlib.Tactic.FunProp import Mathlib.Analysis.SpecialFunctions.Pow.Deriv import Mathlib.Tactic.FieldSimp import Mathlib.Analysis.SpecialFunctions.Integrals.Basic import Mathlib.Analysis.ODE.ExistUnique import Mathlib.Analysis.Calculus.FDeriv.Partial import Mathlib.Analysis.Calculus.ImplicitContDiff import Mathlib.Analysis.Calculus.Deriv.Inv import Mathlib.Tactic.LinearCombination import Mathlib.Analysis.SpecialFunctions.Arcosh import Mathlib.MeasureTheory.Integral.IntervalIntegral.FundThmCalculus import Mathlib.Analysis.Calculus.InverseFunctionTheorem.Deriv import Mathlib.Analysis.Calculus.Deriv.MeanValue import Mathlib.Topology.Order.IntermediateValue import Mathlib.Topology.Order.Compact import Mathlib.Topology.Instances.Real.Lemmas import Mathlib.Tactic.NormNum noncomputable section open BianchiIX open Set Filter open scoped Topology
theorem BianchiIX.eventually_activeWall_first_downcrossing {x : NormalizedState}
{τ : NormalizedState → ℝ} {t₀ s η : ℝ}
(hcτ : ContinuousAt τ x) (hst : s < τ x)
(hreg : ∀ t ∈ Icc s (τ x), t ∈ normalizedMaxDomain x t₀ ∧ 0 < 1 + normalizedMaxCurve x t₀ t 0)
(hbefore : ∀ t ∈ Ico s (τ x),
projectiveActiveWall (normalizedMaxCurve x t₀ t) ≠ η ∨
0 < normalizedEventRate projectiveActiveWall x t₀ t)
(hhit : ∀ᶠ y in 𝓝 x, projectiveActiveWall (normalizedMaxCurve y t₀ (τ y)) = η ∧
normalizedEventRate projectiveActiveWall y t₀ (τ y) < 0)
(huniq : ∀ᶠ z : NormalizedState × ℝ in 𝓝 (x, τ x),
projectiveActiveWall (normalizedMaxCurve z.1 t₀ z.2) = η → τ z.1 = z.2) :
∀ᶠ y in 𝓝 x,
IsLeast {t | s < t ∧ t ∈ normalizedMaxDomain y t₀ ∧
projectiveActiveWall (normalizedMaxCurve y t₀ t) = η ∧
normalizedEventRate projectiveActiveWall y t₀ t < 0} (τ y) ∧
(∀ t ∈ Icc s (τ y), t ∈ normalizedMaxDomain y t₀ ∧ 0 < 1 + normalizedMaxCurve y t₀ t 0) := by sorry