A twice differentiable first downward wall-crossing branch
ProvedBianchiIX.exists_activeWall_first_downcrossing_twoFor 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.
Define the core radius, angle, and clock factor by
For , write , , and . All quotients use the total convention .
The core state space is with coordinates . Define
For fixed put , , , and define
For real , put and define
Write , , and let be the maximal solution of with initial value at and domain . Put
Write , , and . Define
The entrance parametrization and radial exit factor are
For projective initial data , put
Coordinates of three-vectors are indexed by ; projective coordinates are indexed by .
For normalized initial data , let and . Define the event differential by
Its expression in projective initial and final coordinates is
For a time function , write . Let and assume the normalized orbit from exists on with positive chart clock. At every , suppose either or the event rate is positive. At , assume and the event rate is negative. There is a time branch , at , with and . Its projective endpoint is , with derivative . For every initial state near , is the least negative-rate crossing after in the maximal domain, and the whole interval from to that crossing remains in the positive-clock chart.
import Definitions.Def_BianchiIX_Dynamics_Normalized import Definitions.Def_BianchiIX_Dynamics_ProjectiveState import Definitions.Def_BianchiIX_Dynamics_ProjectiveRegularity import Definitions.Def_BianchiIX_Dynamics_MaximalFlow 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.exists_activeWall_first_downcrossing_two {x : NormalizedState} {t₀ s t η : ℝ}
(hst : s < t)
(hreg : ∀ u ∈ Icc s t, u ∈ normalizedMaxDomain x t₀ ∧ 0 < 1 + normalizedMaxCurve x t₀ u 0)
(hbefore : ∀ u ∈ Ico s t,
projectiveActiveWall (normalizedMaxCurve x t₀ u) ≠ η ∨
0 < normalizedEventRate projectiveActiveWall x t₀ u)
(hrate : normalizedEventRate projectiveActiveWall x t₀ t < 0)
(hhit : projectiveActiveWall (normalizedMaxCurve x t₀ t) = η) :
∃ τ : NormalizedState → ℝ, τ x = t ∧ ContDiffAt ℝ 2 τ x ∧
ContDiffAt ℝ 2 (fun y => toProjectiveState (normalizedMaxCurve y t₀ (τ y))) x ∧
HasFDerivAt τ (normalizedEventTimeDifferential projectiveActiveWall x t₀ t) x ∧
HasFDerivAt (fun y => toProjectiveState (normalizedMaxCurve y t₀ (τ y)))
((fderiv ℝ toProjectiveState (normalizedMaxCurve x t₀ t)).comp
(normalizedEventDifferential projectiveActiveWall x t₀ t)) x ∧
(∀ᶠ y in 𝓝 x,
IsLeast {u | s < u ∧ u ∈ normalizedMaxDomain y t₀ ∧
projectiveActiveWall (normalizedMaxCurve y t₀ u) = η ∧
normalizedEventRate projectiveActiveWall y t₀ u < 0} (τ y) ∧
(∀ u ∈ Icc s (τ y), u ∈ normalizedMaxDomain y t₀ ∧ 0 < 1 + normalizedMaxCurve y t₀ u 0)) := by sorry