Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Stable boundary projection and finite connection phase

Definition
BianchiIX_CompactPhaseExpansionData

by trppppp · Nov 5, 2026 · Mathlib 0df444a (Lean v4.33.1)

bianchi-ix-era-statisticsdynamical-systems

For real variables p,s,a,b,cp,s,a,b,cp,s,a,b,c, set

K=a2+b2+c2−2(ab+bc+ca),S=p2+s2,C=S+K.K=a^2+b^2+c^2-2(ab+bc+ca),\qquad S=p^2+s^2,\qquad C=S+K.K=a2+b2+c2−2(ab+bc+ca),S=p2+s2,C=S+K.

The shear components and wall rates are

P=Kp−2a2+b2+c2+ab−2bc+ac,P=Kp-2a^2+b^2+c^2+ab-2bc+ac,P=Kp−2a2+b2+c2+ab−2bc+ac, Q=Ks+3(−b2+c2+ab−ac),Q=Ks+\sqrt{3}(-b^2+c^2+ab-ac),Q=Ks+3​(−b2+c2+ab−ac), r1=−S+2p,r2=−S−p+3s,r3=−S−p−3s.r_1=-S+2p,\qquad r_2=-S-p+\sqrt{3}s,\qquad r_3=-S-p-\sqrt{3}s.r1​=−S+2p,r2​=−S−p+3​s,r3​=−S−p−3​s.

These functions define the normalized vacuum Bianchi IX vector field (P,Q,r1a,r2b,r3c)(P,Q,r_1a,r_2b,r_3c)(P,Q,r1​a,r2​b,r3​c). For y=(m,u,v,w)∈R4y=(m,u,v,w)\in\mathbb R^4y=(m,u,v,w)∈R4, define

K(u,v,w)=u2+v2+w2−2(uv+vw+wu),κ=u(v+w−u),K(u,v,w)=u^2+v^2+w^2-2(uv+vw+wu),\qquad \kappa=u(v+w-u),K(u,v,w)=u2+v2+w2−2(uv+vw+wu),κ=u(v+w−u), Fm=−v2+w2+u(v−w)−mκ,Fu=12(1−m2−(v−w)2+u2)u,F_m=-v^2+w^2+u(v-w)-m\kappa,\qquad F_u=\tfrac12(1-m^2-(v-w)^2+u^2)u,Fm​=−v2+w2+u(v−w)−mκ,Fu​=21​(1−m2−(v−w)2+u2)u, Fv=(m−1−κ)v,Fw=(−m−1−κ)w,F=(Fm,Fu,Fv,Fw),F_v=(m-1-\kappa)v,\qquad F_w=(-m-1-\kappa)w,\qquad F=(F_m,F_u,F_v,F_w),Fv​=(m−1−κ)v,Fw​=(−m−1−κ)w,F=(Fm​,Fu​,Fv​,Fw​),

and E(m,v)=(m−1)2+v2E(m,v)=(m-1)^2+v^2E(m,v)=(m−1)2+v2.

For x=(p,s,a,b,c)x=(p,s,a,b,c)x=(p,s,a,b,c), put

ψ(p,z)=3 z1+p,Π(x)=(ψ(p,s),ψ(p,a),ψ(p,b),ψ(p,c)).\psi(p,z)=\frac{\sqrt3\,z}{1+p},\qquad \Pi(x)=(\psi(p,s),\psi(p,a),\psi(p,b),\psi(p,c)).ψ(p,z)=1+p3​z​,Π(x)=(ψ(p,s),ψ(p,a),ψ(p,b),ψ(p,c)).

For y=(m,u,v,w)y=(m,u,v,w)y=(m,u,v,w), set D(y)=3+m2+K(u,v,w)D(y)=3+m^2+K(u,v,w)D(y)=3+m2+K(u,v,w) and

ΞA(y)=(A−1,Am3,Au3,Av3,Aw3),Ξ(y)=Ξ6/D(y)(y).\Xi_A(y)=\left(A-1,\frac{Am}{\sqrt3},\frac{Au}{\sqrt3}, \frac{Av}{\sqrt3},\frac{Aw}{\sqrt3}\right),\qquad \Xi(y)=\Xi_{6/D(y)}(y).ΞA​(y)=(A−1,3​Am​,3​Au​,3​Av​,3​Aw​),Ξ(y)=Ξ6/D(y)​(y).

Write N(x)=(P,Q,r1a,r2b,r3c)N(x)=(P,Q,r_1a,r_2b,r_3c)N(x)=(P,Q,r1​a,r2​b,r3​c) for the normalized vector field and C(x)=C(p,s,a,b,c)\mathcal C(x)=C(p,s,a,b,c)C(x)=C(p,s,a,b,c) for its constraint.

The normalized and projective state spaces are R5\mathbb R^5R5 and R4\mathbb R^4R4 with their finite-product norms. The maps Π,Ξ,D,F\Pi,\Xi,D,FΠ,Ξ,D,F act on these state spaces.

The projective vector field in normalized time is

G(y)=6D(y)F(y).G(y)=\frac6{D(y)}F(y).G(y)=D(y)6​F(y).

Write X=R5X=\mathbb R^5X=R5, Y=R4Y=\mathbb R^4Y=R4, and let αx,t0\alpha_{x,t_0}αx,t0​​ be the maximal solution of α′=N(α)\alpha'=N(\alpha)α′=N(α) with initial value xxx at t0t_0t0​ and domain Imax⁡(x,t0)I_{\max}(x,t_0)Imax​(x,t0​). Put

Jx,t0(t)=dxαx,t0(t),Ψt0(y,t)=Π(αΞ(y),t0(t)),J_{x,t_0}(t)=d_x\alpha_{x,t_0}(t),\qquad \Psi_{t_0}(y,t)=\Pi(\alpha_{\Xi(y),t_0}(t)),Jx,t0​​(t)=dx​αx,t0​​(t),Ψt0​​(y,t)=Π(αΞ(y),t0​​(t)), Jy,t0(t)=dΠαΞ(y),t0(t)∘JΞ(y),t0(t)∘dΞy.\mathcal J_{y,t_0}(t)=d\Pi_{\alpha_{\Xi(y),t_0}(t)} \circ J_{\Xi(y),t_0}(t)\circ d\Xi_y.Jy,t0​​(t)=dΠαΞ(y),t0​​(t)​∘JΞ(y),t0​​(t)∘dΞy​.

For Y=(k,u,w)∈R3Y=(k,u,w)\in\mathbb R^3Y=(k,u,w)∈R3, define

e−(Y)=(1−k2−1,u,1,w),xY=Ξ(e−(Y)),βY(t)=Ψ0(e−(Y),t),g(x)=(Π(x))v.e_-(Y)=(1-\sqrt{k^2-1},u,1,w),\quad x_Y=\Xi(e_-(Y)),\quad \beta_Y(t)=\Psi_0(e_-(Y),t),\quad g(x)=(\Pi(x))_v.e−​(Y)=(1−k2−1​,u,1,w),xY​=Ξ(e−​(Y)),βY​(t)=Ψ0​(e−​(Y),t),g(x)=(Π(x))v​.

For any real height η\etaη, put

Hη,Y={t>0:t∈Imax⁡(xY,0), g(αxY,0(t))=η},H_{\eta,Y}=\{t>0:t\in I_{\max}(x_Y,0),\ g(\alpha_{x_Y,0}(t))=\eta\},Hη,Y​={t>0:t∈Imax​(xY​,0), g(αxY​,0​(t))=η}, Tη(Y)=inf⁡Hη,Y,Pη(Y)=βY(Tη(Y)).T_\eta(Y)=\inf H_{\eta,Y},\qquad P_\eta(Y)=\beta_Y(T_\eta(Y)).Tη​(Y)=infHη,Y​,Pη​(Y)=βY​(Tη​(Y)).

The infimum uses the total real-order convention. Let TailValid⁡η(Y)\operatorname{TailValid}_\eta(Y)TailValidη​(Y) mean that Tη(Y)T_\eta(Y)Tη​(Y) is the least element of Hη,YH_{\eta,Y}Hη,Y​, and, writing T=Tη(Y)T=T_\eta(Y)T=Tη​(Y), that

t∈Imax⁡(xY,0),1+(αxY,0(t))0>0(0≤t≤T),t\in I_{\max}(x_Y,0),\quad 1+(\alpha_{x_Y,0}(t))_0>0 \quad(0\leq t\leq T),t∈Imax​(xY​,0),1+(αxY​,0​(t))0​>0(0≤t≤T), g(αxY,0(t))>η(0≤t<T),g(\alpha_{x_Y,0}(t))>\eta\quad(0\leq t<T),g(αxY​,0​(t))>η(0≤t<T), dgαxY,0(t)N(αxY,0(t))<0,∣(Π(αxY,0(t)))w∣<1/2(0≤t≤T).dg_{\alpha_{x_Y,0}(t)}N(\alpha_{x_Y,0}(t))<0,\quad |(\Pi(\alpha_{x_Y,0}(t)))_w|<1/2\quad(0\leq t\leq T).dgαxY​,0​(t)​N(αxY​,0​(t))<0,∣(Π(αxY​,0​(t)))w​∣<1/2(0≤t≤T).

All vector and operator norms use the finite-product supremum norms.

For i=0,1i=0,1i=0,1 put j(0)=1j(0)=1j(0)=1, j(1)=3j(1)=3j(1)=3, and define

mi(η,Y)=exp⁡(log⁡(1+(xY)0)−log⁡(1+(αxY,0(Tη(Y)))0)+∫0Tη(Y)rj(i)(αxY,0(t)) dt).m_i(\eta,Y)=\exp\left(\log(1+(x_Y)_0) -\log(1+(\alpha_{x_Y,0}(T_\eta(Y)))_0) +\int_0^{T_\eta(Y)}r_{j(i)}(\alpha_{x_Y,0}(t))\,dt\right).mi​(η,Y)=exp(log(1+(xY​)0​)−log(1+(αxY​,0​(Tη​(Y)))0​)+∫0Tη​(Y)​rj(i)​(αxY​,0​(t))dt).

Let R(m,u,v,w)=(−m,u,w,v)\mathcal R(m,u,v,w)=(-m,u,w,v)R(m,u,v,w)=(−m,u,w,v).

On the invariant plane with zero active wall, use y=(m,u,w)∈R3y=(m,u,w)\in\mathbb R^3y=(m,u,w)∈R3, the inclusion ι(m,u,w)=(m,u,0,w)\iota(m,u,w)=(m,u,0,w)ι(m,u,w)=(m,u,0,w) and the restriction πs(m,u,v,w)=(m,u,w)\pi_s(m,u,v,w)=(m,u,w)πs​(m,u,v,w)=(m,u,w). Define

f(y)=(mu2−(m+1)uw+w2,1−m2−w2+u22u,−(m+1+uw−u2)w),f(y)=\left(mu^2-(m+1)uw+w^2, \frac{1-m^2-w^2+u^2}{2}u,-(m+1+uw-u^2)w\right),f(y)=(mu2−(m+1)uw+w2,21−m2−w2+u2​u,−(m+1+uw−u2)w), Δ(y)=3+m2+(u−w)2,fo(y)=6f(y)/Δ(y).\Delta(y)=3+m^2+(u-w)^2,\qquad f_o(y)=6f(y)/\Delta(y).Δ(y)=3+m2+(u−w)2,fo​(y)=6f(y)/Δ(y).

Write J=dfJ=dfJ=df, H=d2fH=d^2fH=d2f, Jo=dfoJ_o=df_oJo​=dfo​, Ho=d2foH_o=d^2f_oHo​=d2fo​ for their explicit Jacobian and Hessian expressions. The denominator derivatives are dΔ=(2m,2(u−w),2(w−u))d\Delta=(2m,2(u-w),2(w-u))dΔ=(2m,2(u−w),2(w−u)) and d2Δ(v,z)=2v0z0+2(v1−v2)(z1−z2)d^2\Delta(v,z)=2v_0z_0+2(v_1-v_2)(z_1-z_2)d2Δ(v,z)=2v0​z0​+2(v1​−v2​)(z1​−z2​). The exact original-time boundary flow and its projected variation are

Φ(y,t)=πsΨ0(ιy,t),L(y,t)=πsJιy,0(t)ι.\Phi(y,t)=\pi_s\Psi_0(\iota y,t),\qquad L(y,t)=\pi_s\mathcal J_{\iota y,0}(t)\iota.Φ(y,t)=πs​Ψ0​(ιy,t),L(y,t)=πs​Jιy,0​(t)ι.

For a fixed scale KKK, set ΦK(y,s)=Φ(y,Ks)\Phi_K(y,s)=\Phi(y,Ks)ΦK​(y,s)=Φ(y,Ks), LK(y,s)=L(y,Ks)L_K(y,s)=L(y,Ks)LK​(y,s)=L(y,Ks) and QK(y,s)=dyLK(y,s)Q_K(y,s)=d_yL_K(y,s)QK​(y,s)=dy​LK​(y,s). For directions v,zv,zv,z, define

SK(y,s;v,z)=K[Ho(ΦK)(LKv,LKz)+Jo(ΦK)QK(v,z)].S_K(y,s;v,z)=K\left[H_o(\Phi_K)(L_Kv,L_Kz)+J_o(\Phi_K)Q_K(v,z)\right].SK​(y,s;v,z)=K[Ho​(ΦK​)(LK​v,LK​z)+Jo​(ΦK​)QK​(v,z)].

All vector norms are sup norms, and operator norms are induced by them. Write b(y)=∣u∣+∣w∣b(y)=|u|+|w|b(y)=∣u∣+∣w∣, E(y)=e512b(y)E(y)=e^{512b(y)}E(y)=e512b(y), vs=(v1,v2)v_s=(v_1,v_2)vs​=(v1​,v2​), and

H(y;v,z)=b(y)∥v∥∥z∥+∥vs∥∥z∥+∥v∥∥zs∥,\mathcal H(y;v,z)=b(y)\|v\|\|z\|+\|v_s\|\|z\|+\|v\|\|z_s\|,H(y;v,z)=b(y)∥v∥∥z∥+∥vs​∥∥z∥+∥v∥∥zs​∥, B2(y)=192b(y)(40000E(y)3)+10000E(y)2.B_2(y)=192b(y)(40000E(y)^3)+10000E(y)^2.B2​(y)=192b(y)(40000E(y)3)+10000E(y)2.

The closed boundary region is Sc={(m,u,0,w):∣m−c∣≤1/10, ∣u∣,∣w∣≤1/100}\mathcal S_c=\{(m,u,0,w):|m-c|\leq1/10,\ |u|,|w|\leq1/100\}Sc​={(m,u,0,w):∣m−c∣≤1/10, ∣u∣,∣w∣≤1/100}. The boundary projection P(m,u,w)P(m,u,w)P(m,u,w) is the limit of Φ(m,u,w;t)0\Phi(m,u,w;t)_0Φ(m,u,w;t)0​ as t→∞t\to\inftyt→∞, using the total limit convention of the formal definitions.

For y∈R4y\in\mathbb R^4y∈R4, put

Pe(y)=P(y0,y1,y3),Re(y)=(Pe(y)−1)2+y22.P_e(y)=P(y_0,y_1,y_3),\quad R_e(y)=\sqrt{(P_e(y)-1)^2+y_2^2}.Pe​(y)=P(y0​,y1​,y3​),Re​(y)=(Pe​(y)−1)2+y22​​.

The reflected finite-tail entry is eη(Y)=RPη(Y)e_\eta(Y)=\mathcal R P_\eta(Y)eη​(Y)=RPη​(Y), and its finite matching phase is Fη(Y)=Re(eη(Y))F_\eta(Y)=R_e(e_\eta(Y))Fη​(Y)=Re​(eη​(Y)). For AY(t)=1+(αxY,0(t))0A_Y(t)=1+(\alpha_{x_Y,0}(t))_0AY​(t)=1+(αxY​,0​(t))0​, define the weak-wall multiplier

Mw(Y,t)=exp⁡(log⁡(1+(xY)0)−log⁡AY(t)+∫0tr3(αxY,0(q)) dq),M_w(Y,t)=\exp\left(\log(1+(x_Y)_0)-\log A_Y(t) +\int_0^t r_3(\alpha_{x_Y,0}(q))\,dq\right),Mw​(Y,t)=exp(log(1+(xY​)0​)−logAY​(t)+∫0t​r3​(αxY​,0​(q))dq),

where r3r_3r3​ is the third normalized wall rate. Set

Bη(Y)=∫0Tη(Y)2AY(t)(βY(t)0−1)Mw(Y,t)2 dt.B_\eta(Y)=\int_0^{T_\eta(Y)}2A_Y(t)(\beta_Y(t)_0-1)M_w(Y,t)^2\,dt.Bη​(Y)=∫0Tη​(Y)​2AY​(t)(βY​(t)0​−1)Mw​(Y,t)2dt.

Set r=(m+1)2+w2r=\sqrt{(m+1)^2+w^2}r=(m+1)2+w2​ and

A(m)=mm2−1,C(m)=−2m+1,Θ(m,u,w)=r−1+A(m)u2+C(m)uw.A(m)=\frac{m}{m^2-1},\quad C(m)=-\frac2{m+1},\quad \Theta(m,u,w)=r-1+A(m)u^2+C(m)uw.A(m)=m2−1m​,C(m)=−m+12​,Θ(m,u,w)=r−1+A(m)u2+C(m)uw.

Its explicit gradient is used together with the residual R=r4u4+r3u3w+r2u2w2+r1uw3R=r_4u^4+r_3u^3w+r_2u^2w^2+r_1uw^3R=r4​u4+r3​u3w+r2​u2w2+r1​uw3, where

r4=−2m(m2−1)2,r3=2(3m−1)(m2−1)2,r_4=-\frac{2m}{(m^2-1)^2},\quad r_3=\frac{2(3m-1)}{(m^2-1)^2},r4​=−(m2−1)22m​,r3​=(m2−1)22(3m−1)​, r2=−m2+1(m2−1)2−mm2−1+r+1r(r+m+1),r1=2(m+1)2+1m+1−1r+m+1.r_2=-\frac{m^2+1}{(m^2-1)^2}-\frac m{m^2-1} +\frac{r+1}{r(r+m+1)},\quad r_1=\frac2{(m+1)^2}+\frac1{m+1}-\frac1{r+m+1}.r2​=−(m2−1)2m2+1​−m2−1m​+r(r+m+1)r+1​,r1​=(m+1)22​+m+11​−r+m+11​.

The two scalar wall rates are (1−m2−w2+u2)/2(1-m^2-w^2+u^2)/2(1−m2−w2+u2)/2 and −(m+1+uw−u2)-(m+1+uw-u^2)−(m+1+uw−u2). The stable linear block is the last two rows and columns of KJoKJ_oKJo​; its center column is (K(Jo)10,K(Jo)20)(K(J_o)_{10},K(J_o)_{20})(K(Jo​)10​,K(Jo​)20​). The first and second center variations are the zeroth components of Lc+1L_{c+1}Lc+1​ and Qc+1Q_{c+1}Qc+1​; their limiting operators use the same total limit convention. The open parameter neighborhood is ∣m−c∣<1/40|m-c|<1/40∣m−c∣<1/40, ∣u∣,∣w∣<1/200|u|,|w|<1/200∣u∣,∣w∣<1/200. The center approximation is Φc+1(y,s)0\Phi_{c+1}(y,s)_0Φc+1​(y,s)0​ and the corrected approximation is Θ(Φ(y,t))\Theta(\Phi(y,t))Θ(Φ(y,t)). The derivative of Kdfo(ΦK(y,s))(LK(y,s)z)Kdf_o(\Phi_K(y,s))(L_K(y,s)z)Kdfo​(ΦK​(y,s))(LK​(y,s)z) with respect to yyy, integrated from zero to sss, defines the second-variation integral. The center budgets are

128b∥vs∥+33000b2E∥v∥,128b+33000b2E,B2(y).128b\|v_s\|+33000b^2E\|v\|,\qquad 128b+33000b^2E,\qquad B_2(y).128b∥vs​∥+33000b2E∥v∥,128b+33000b2E,B2​(y).

For a normalized boundary orbit, its stable clock is (c+1)∫at(1+αx,t0(q)0) dq(c+1)\int_a^t(1+\alpha_{x,t_0}(q)_0)\,dq(c+1)∫at​(1+αx,t0​​(q)0​)dq. For the orbit from ι(m,u,w)\iota(m,u,w)ι(m,u,w), the corrected residual integral is

IR(m,u,w,T)=∫0T(1+αΞ(ι(m,u,w)),0(t)0)R(Φ(m,u,w;t)) dt.I_R(m,u,w,T)=\int_0^T(1+\alpha_{\Xi(\iota(m,u,w)),0}(t)_0) R(\Phi(m,u,w;t))\,dt.IR​(m,u,w,T)=∫0T​(1+αΞ(ι(m,u,w)),0​(t)0​)R(Φ(m,u,w;t))dt.

The entrance partials are the four ordinary components of dPedP_edPe​. Writing rη(Y)=(Pη(Y)0−1)2+η2r_\eta(Y)=\sqrt{(P_\eta(Y)_0-1)^2+\eta^2}rη​(Y)=(Pη​(Y)0​−1)2+η2​, the weak finite-phase coefficient is

Bη(Y)(1−4/(rη(Y)+Y0))+m1(η,Y)2Fη(Y)+Y0−2.\frac{B_\eta(Y)(1-4/(r_\eta(Y)+Y_0))+m_1(\eta,Y)^2} {F_\eta(Y)+Y_0-2}.Fη​(Y)+Y0​−2Bη​(Y)(1−4/(rη​(Y)+Y0​))+m1​(η,Y)2​.

Finally, for the reference pulse βk(t)=(1−ktanh⁡(kt),0,ksech⁡(kt),0)\beta_k(t)=(1-k\tanh(kt),0,k\operatorname{sech}(kt),0)βk​(t)=(1−ktanh(kt),0,ksech(kt),0), the shifted original-time clock is τk(a,t)=∫atD(βk(q))/6 dq\tau_k(a,t)=\int_a^tD(\beta_k(q))/6\,dqτk​(a,t)=∫at​D(βk​(q))/6dq, and the shifted variation is Jβk(a),0(τk(a,t))v\mathcal J_{\beta_k(a),0}(\tau_k(a,t))vJβk​(a),0​(τk​(a,t))v.

Definition code
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.Deriv.Inv
import Mathlib.Tactic.FieldSimp
import Mathlib.Tactic.LinearCombination
import Definitions.Def_BianchiIX_Algebra_MatchingPhase
import Mathlib.Analysis.SpecialFunctions.Sqrt
import Mathlib.Analysis.SpecialFunctions.Pow.Deriv
import Definitions.Def_BianchiIX_Dynamics_ProjectiveState
import Definitions.Def_BianchiIX_Dynamics_ReferencePulse
import Definitions.Def_BianchiIX_Dynamics_ReferenceReturn
import Definitions.Def_BianchiIX_Dynamics_ProjectiveFlowVariation
import Mathlib.Analysis.Calculus.FDeriv.Symmetric
import Mathlib.Tactic.NormNum
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.Arcosh
import Mathlib.MeasureTheory.Integral.IntervalIntegral.FundThmCalculus
import Mathlib.Analysis.Calculus.InverseFunctionTheorem.Deriv
import Mathlib.Analysis.Calculus.Deriv.MeanValue
import Mathlib.Analysis.SpecialFunctions.Integrals.Basic
import Mathlib.Analysis.ODE.ExistUnique
import Mathlib.Analysis.Calculus.FDeriv.Partial
import Mathlib.Analysis.Calculus.ImplicitContDiff
import Definitions.Def_BianchiIX_Dynamics_IntegralClock
import Definitions.Def_BianchiIX_Dynamics_Normalized
import Definitions.Def_BianchiIX_Dynamics_ProjectiveClock
import Mathlib.Analysis.SpecialFunctions.Arsinh
import Mathlib.MeasureTheory.Integral.IntervalIntegral.DistLEIntegral
import Mathlib.Analysis.ODE.Gronwall
import Mathlib.Data.Matrix.Mul
import Definitions.Def_BianchiIX_Dynamics_MaximalFlow
import Mathlib.Topology.Instances.Real.Lemmas
import Mathlib.Tactic.GCongr
import Mathlib.Analysis.Calculus.Deriv.Slope
import Mathlib.Topology.Order.OrderClosed
import Mathlib.Topology.Order.IntermediateValue
import Mathlib.Topology.MetricSpace.Cauchy
import Mathlib.Analysis.Calculus.ContDiff.Comp
import Mathlib.Analysis.Calculus.Deriv.Comp
import Definitions.Def_BianchiIX_Dynamics_CoreAngle
import Definitions.Def_BianchiIX_Dynamics_ProjectiveWallMultipliers
import Definitions.Def_BianchiIX_Dynamics_CoreTail
import Mathlib.Topology.Order.Compact
import Mathlib.Tactic.Module
import Mathlib.Algebra.BigOperators.Fin
import Mathlib.Data.Real.Basic
import Mathlib.Analysis.SpecialFunctions.Trigonometric.ArctanDeriv
import Mathlib.Analysis.SpecialFunctions.Trigonometric.DerivHyp
import Mathlib.Analysis.SpecialFunctions.Log.Basic
import Mathlib.Topology.MetricSpace.Thickening
import Mathlib.Analysis.Normed.Module.FiniteDimension
import Mathlib.LinearAlgebra.Determinant
import Mathlib.Topology.Instances.Matrix
import Mathlib.LinearAlgebra.Matrix.Trace
import Mathlib.Analysis.Calculus.FDeriv.Analytic
import Mathlib.Topology.Algebra.Module.Determinant
import Mathlib.Analysis.Calculus.Deriv.Pi
import Mathlib.Analysis.Calculus.ParametricIntervalIntegral
import Mathlib.MeasureTheory.Integral.DominatedConvergence
import Mathlib.Analysis.Calculus.UniformLimitsDeriv
import Mathlib.Topology.Order.ProjIcc
import Definitions.Def_BianchiIX_Algebra_CoreAngle
import Definitions.Def_BianchiIX_Dynamics_CompactConnectionReturn
import Mathlib.Analysis.SpecialFunctions.Log.Deriv
import Definitions.Def_BianchiIX_Dynamics_CoreTailMultipliers

section

noncomputable section

namespace BianchiIX

def stableStrongRate (m u w : ℝ) : ℝ := (1 - m ^ 2 - w ^ 2 + u ^ 2) / 2

def stableWeakRate (m u w : ℝ) : ℝ := -(m + 1 + u * w - u ^ 2)











end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableWeakRadius (m w : ℝ) : ℝ := phaseNorm (m + 1) w

def stableCorrectionA (m : ℝ) : ℝ := m / (m ^ 2 - 1)

def stableCorrectionC (m : ℝ) : ℝ := -2 / (m + 1)

def stableCorrectedPhase (m u w : ℝ) : ℝ :=
  stableWeakRadius m w - 1 + stableCorrectionA m * u ^ 2 + stableCorrectionC m * u * w

def stableCorrectedGradient (m u w : ℝ) : Fin 3 → ℝ :=
  ![(m + 1) / stableWeakRadius m w - (m ^ 2 + 1) / (m ^ 2 - 1) ^ 2 * u ^ 2 +
      2 / (m + 1) ^ 2 * u * w,
    2 * stableCorrectionA m * u + stableCorrectionC m * w,
    w / stableWeakRadius m w + stableCorrectionC m * u]



















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableResidual4 (m : ℝ) : ℝ := -2 * m / (m ^ 2 - 1) ^ 2

def stableResidual3 (m : ℝ) : ℝ := 2 * (3 * m - 1) / (m ^ 2 - 1) ^ 2

def stableResidual2 (m w : ℝ) : ℝ :=
  -(m ^ 2 + 1) / (m ^ 2 - 1) ^ 2 - m / (m ^ 2 - 1) +
    (stableWeakRadius m w + 1) / (stableWeakRadius m w * (stableWeakRadius m w + (m + 1)))

def stableResidual1 (m w : ℝ) : ℝ :=
  2 / (m + 1) ^ 2 + 1 / (m + 1) - 1 / (stableWeakRadius m w + (m + 1))

def stableCorrectedResidual (m u w : ℝ) : ℝ :=
  stableResidual4 m * u ^ 4 + stableResidual3 m * u ^ 3 * w +
    stableResidual2 m w * u ^ 2 * w ^ 2 + stableResidual1 m w * u * w ^ 3









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set

def referenceShiftClock (k s t : ℝ) : ℝ :=
  referenceClockPrimitive k t - referenceClockPrimitive k s













def referenceShiftedVariation (k s : ℝ) (w : ProjectiveState) (t : ℝ) : ProjectiveState :=
  projectiveFlowDifferential (referencePulse k s) 0 (referenceShiftClock k s t) w





end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter MeasureTheory
open scoped Topology

def stableBoundaryRegion (c : ℝ) (y : ProjectiveState) : Prop :=
  |y 0 - c| ≤ 1 / 10 ∧ |y 1| ≤ 1 / 100 ∧ y 2 = 0 ∧ |y 3| ≤ 1 / 100

def normalizedStableClock (x : NormalizedState) (t₀ s c t : ℝ) : ℝ :=
  (c + 1) * integralClock (normalizedProjectiveRate x t₀) s t









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter MeasureTheory
open scoped Topology





def stableBoundaryEntry (m u w : ℝ) : ProjectiveState := ![m, u, 0, w]

def stableBoundaryOrbit (m u w t : ℝ) : ProjectiveState :=
  toProjectiveState (normalizedMaxCurve (fromProjectiveState (stableBoundaryEntry m u w)) 0 t)

/-- The projection is defined from the exact Einstein orbit in original time. -/
def stableBoundaryProjection (m u w : ℝ) : ℝ :=
  limUnder atTop (fun t => stableBoundaryOrbit m u w t 0)











end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

abbrev StableState := Fin 3 → ℝ

def stableInclusion : StableState →L[ℝ] ProjectiveState :=
  ContinuousLinearMap.pi ![ContinuousLinearMap.proj 0, ContinuousLinearMap.proj 1,
    0, ContinuousLinearMap.proj 2]

def stableRestriction : ProjectiveState →L[ℝ] StableState :=
  ContinuousLinearMap.pi ![ContinuousLinearMap.proj 0, ContinuousLinearMap.proj 1,
    ContinuousLinearMap.proj 3]

def stableBoundaryField (y : StableState) : StableState :=
  ![y 0 * y 1 ^ 2 - (y 0 + 1) * y 1 * y 2 + y 2 ^ 2,
    stableStrongRate (y 0) (y 1) (y 2) * y 1,
    stableWeakRate (y 0) (y 1) (y 2) * y 2]

def stableBoundaryDenom (y : StableState) : ℝ := 3 + y 0 ^ 2 + (y 1 - y 2) ^ 2

def stableOriginalField (y : StableState) : StableState :=
  (6 / stableBoundaryDenom y) • stableBoundaryField y



























end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter MeasureTheory
open scoped Topology

def stableCorrectedApproximation (y : Fin 3 → ℝ) (t : ℝ) : ℝ :=
  let Y := stableBoundaryOrbit (y 0) (y 1) (y 2) t
  stableCorrectedPhase (Y 0) (Y 1) (Y 3)

def stableResidualIntegral (m u w T : ℝ) : ℝ :=
  ∫ t in 0..T, normalizedProjectiveRate (fromProjectiveState (stableBoundaryEntry m u w)) 0 t *
    stableCorrectedResidual (stableBoundaryOrbit m u w t 0)
      (stableBoundaryOrbit m u w t 1) (stableBoundaryOrbit m u w t 3)













end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter
open scoped Topology

def stableOriginalFlow (y : StableState) (t : ℝ) : StableState :=
  stableRestriction (projectiveOriginalFlow (stableInclusion y) 0 t)

def stableFlowDifferential (y : StableState) (t : ℝ) : StableState →L[ℝ] StableState :=
  stableRestriction.comp ((projectiveFlowDifferential (stableInclusion y) 0 t).comp stableInclusion)



















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableBoundaryJacobian (y : StableState) : Matrix (Fin 3) (Fin 3) ℝ :=
  let m := y 0
  let u := y 1
  let w := y 2
  ![![u ^ 2 - u * w, 2 * m * u - (m + 1) * w, -(m + 1) * u + 2 * w],
    ![-m * u, (1 - m ^ 2 - w ^ 2 + 3 * u ^ 2) / 2, -u * w],
    ![-w, (2 * u - w) * w, -(m + 1 + 2 * u * w - u ^ 2)]]

def stableDenomGradient (y : StableState) : StableState :=
  ![2 * y 0, 2 * (y 1 - y 2), 2 * (y 2 - y 1)]

def stableOriginalJacobian (y : StableState) : Matrix (Fin 3) (Fin 3) ℝ :=
  fun i j => 6 / stableBoundaryDenom y * stableBoundaryJacobian y i j -
    6 / stableBoundaryDenom y ^ 2 * stableBoundaryField y i * stableDenomGradient y j















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableBoundaryHessian (y v w : StableState) : StableState :=
  ![(2 * y 1 - y 2) * (v 0 * w 1 + v 1 * w 0) -
      y 1 * (v 0 * w 2 + v 2 * w 0) + 2 * y 0 * v 1 * w 1 -
      (y 0 + 1) * (v 1 * w 2 + v 2 * w 1) + 2 * v 2 * w 2,
    -y 1 * v 0 * w 0 - y 0 * (v 0 * w 1 + v 1 * w 0) +
      3 * y 1 * v 1 * w 1 - y 2 * (v 1 * w 2 + v 2 * w 1) -
      y 1 * v 2 * w 2,
    -(v 0 * w 2 + v 2 * w 0) + 2 * y 2 * v 1 * w 1 +
      2 * (y 1 - y 2) * (v 1 * w 2 + v 2 * w 1) - 2 * y 1 * v 2 * w 2]

def stableDenomHessian (v w : StableState) : ℝ :=
  2 * v 0 * w 0 + 2 * (v 1 - v 2) * (w 1 - w 2)

















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Filter
open scoped Topology

/-- The scale is held fixed when differentiating the initial state. -/
def stableRescaledFlow (K : ℝ) (y : StableState) (s : ℝ) : StableState :=
  stableOriginalFlow y (K * s)

def stableRescaledDifferential (K : ℝ) (y : StableState) (s : ℝ) : StableState →L[ℝ] StableState :=
  stableFlowDifferential y (K * s)



















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableOriginalHessian (y v w : StableState) : StableState :=
  (6 / stableBoundaryDenom y) • stableBoundaryHessian y v w -
    (6 / stableBoundaryDenom y ^ 2) •
      (dotProduct (stableDenomGradient y) v • (stableBoundaryJacobian y).mulVec w +
        dotProduct (stableDenomGradient y) w • (stableBoundaryJacobian y).mulVec v +
        stableDenomHessian v w • stableBoundaryField y) +
    (12 * dotProduct (stableDenomGradient y) v * dotProduct (stableDenomGradient y) w /
      stableBoundaryDenom y ^ 3) • stableBoundaryField y













end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter
open scoped Topology

def stableRescaledSecondDifferential (K : ℝ) (y : StableState) (s : ℝ) :
    StableState →L[ℝ] (StableState →L[ℝ] StableState) :=
  (fderiv ℝ (fun z : StableState × ℝ => stableRescaledDifferential K z.1 z.2) (y, s)).comp
    (ContinuousLinearMap.inl ℝ StableState ℝ)









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set

def stableLinearBlock (K : ℝ) (y : StableState) : Matrix (Fin 2) (Fin 2) ℝ :=
  ![![K * stableOriginalJacobian y 1 1, K * stableOriginalJacobian y 1 2],
    ![K * stableOriginalJacobian y 2 1, K * stableOriginalJacobian y 2 2]]

def stableCenterColumn (K : ℝ) (y : StableState) : Fin 2 → ℝ :=
  ![K * stableOriginalJacobian y 1 0, K * stableOriginalJacobian y 2 0]









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableRescaledVariationRate (K : ℝ) (w : StableState) (p : StableState × ℝ) : StableState :=
  K • fderiv ℝ stableOriginalField (stableRescaledFlow K p.1 p.2)
    (stableRescaledDifferential K p.1 p.2 w)

def stableRescaledSecondSource (K : ℝ) (v w : StableState) (p : StableState × ℝ) : StableState :=
  K • (stableOriginalHessian (stableRescaledFlow K p.1 p.2)
      (stableRescaledDifferential K p.1 p.2 v) (stableRescaledDifferential K p.1 p.2 w) +
    (stableOriginalJacobian (stableRescaledFlow K p.1 p.2)).mulVec
      (stableRescaledSecondDifferential K p.1 p.2 v w))





end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set MeasureTheory

def coreTailWeakEnergyIntegrand (p : CoreAngleState × ℝ) : ℝ :=
  2 * normalizedProjectiveRate (fromProjectiveState (coreTailEntry p.1)) 0 p.2 *
    (projectiveOriginalFlow (coreTailEntry p.1) 0 p.2 0 - 1) *
    (normalizedProjectiveWallMultiplier (fromProjectiveState (coreTailEntry p.1)) p.2 2) ^ 2

def coreTailWeakEnergyCoefficient (η : ℝ) (Y : CoreAngleState) : ℝ :=
  ∫ t in 0..coreTailTime η Y, coreTailWeakEnergyIntegrand (Y, t)







end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def stableHessianBudget (y v w : StableState) : ℝ :=
  (|y 1| + |y 2|) * ‖v‖ * ‖w‖ + ‖![v 1, v 2]‖ * ‖w‖ + ‖v‖ * ‖![w 1, w 2]‖









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set MeasureTheory

def stableVariationCenterBudget (y v : StableState) : ℝ :=
  128 * (|y 1| + |y 2|) * ‖![v 1, v 2]‖ +
    33000 * (|y 1| + |y 2|) ^ 2 * Real.exp (512 * (|y 1| + |y 2|)) * ‖v‖











end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Filter
open scoped Topology

def stableCenterDifferential (c : ℝ) (y : StableState) (s : ℝ) : StableState →L[ℝ] ℝ :=
  (ContinuousLinearMap.proj 0).comp (stableRescaledDifferential (c + 1) y s)

def stableCenterDifferentialLimit (c : ℝ) (y : StableState) : StableState →L[ℝ] ℝ :=
  limUnder atTop (stableCenterDifferential c y)

def stableCenterTailCoefficient (y : StableState) : ℝ :=
  128 * (|y 1| + |y 2|) + 33000 * (|y 1| + |y 2|) ^ 2 * Real.exp (512 * (|y 1| + |y 2|))













end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter
open scoped Topology

def stableParameterDomain (c : ℝ) : Set StableState :=
  {y | |y 0 - c| < 1 / 40 ∧ |y 1| < 1 / 200 ∧ |y 2| < 1 / 200}

def stableCenterApproximation (c s : ℝ) (y : StableState) : ℝ := stableRescaledFlow (c + 1) y s 0





















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter MeasureTheory
open scoped Topology

def stableSecondIntegral (K : ℝ) (y w : StableState) (s : ℝ) : StableState →L[ℝ] StableState :=
  ∫ r in 0..s, (fderiv ℝ (stableRescaledVariationRate K w) (y, r)).comp
    (ContinuousLinearMap.inl ℝ StableState ℝ)









end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set

def stableSecondCenterBudget (y : StableState) : ℝ :=
  192 * (|y 1| + |y 2|) * (40000 * Real.exp (512 * (|y 1| + |y 2|)) ^ 3) +
    10000 * Real.exp (512 * (|y 1| + |y 2|)) ^ 2







end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter
open scoped Topology

def stableCenterSecondDifferential (c : ℝ) (y : StableState) (s : ℝ) :
    StableState →L[ℝ] (StableState →L[ℝ] ℝ) :=
  (ContinuousLinearMap.compL ℝ StableState StableState ℝ (ContinuousLinearMap.proj 0)).comp
    (stableRescaledSecondDifferential (c + 1) y s)

def stableCenterSecondDifferentialLimit (c : ℝ) (y : StableState) :
    StableState →L[ℝ] (StableState →L[ℝ] ℝ) :=
  limUnder atTop (stableCenterSecondDifferential c y)















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

def entranceStablePhase (y : ProjectiveState) : ℝ :=
  stableBoundaryProjection (y 0) (y 1) (y 3)

def entranceStablePartial (y : ProjectiveState) (i : Fin 4) : ℝ :=
  fderiv ℝ entranceStablePhase y (Pi.single i 1)

def entranceStableRadius (y : ProjectiveState) : ℝ := coreRadius (entranceStablePhase y) (y 2)





















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter Metric
open scoped Topology

/-- The finite phase in (B.47), before the long entrance. -/
def compactConnectionFinitePhase (η : ℝ) (Y : CoreAngleState) : ℝ :=
  entranceStableRadius (compactConnectionEntry η Y)















end BianchiIX

end
end

section

noncomputable section

namespace BianchiIX

open Set Filter
open scoped Topology

def compactConnectionWeakCoefficient (η : ℝ) (Y : CoreAngleState) : ℝ :=
  (coreTailWeakEnergyCoefficient η Y * (1 - 4 / (coreRadius (coreTailState η Y 0) η + Y 0)) +
    coreTailMultiplier η Y 1 ^ 2) / (compactConnectionFinitePhase η Y + Y 0 - 2)









end BianchiIX

end
end
Source
https://github.com/l46430640-del/ERA-STATISTICS-FORMAL/tree/d74c241819f896ab8d050b21ace80c8e90eabd9e/BianchiIX

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me