Concrete inputs for the determinant-squeeze spectral upper bound #
This file wires the concrete cocycle facts into the abstract determinant-squeeze machinery of
Oseledets.Lyapunov.ForwardDetSqueeze, producing the spectral upper bound
limsup_n (1/n)·log ‖A⁽ⁿ⁾ v‖ ≤ λᵢ, for v in the limit slow subspace S(x).
Main results #
Oseledets.SqueezeData: the bundle of concrete cocycle facts along an orbit.Oseledets.limsup_slowNorm_le_of_squeezeData: from aSqueezeData, the determinant squeeze bounds the top-slow restricted-norm exponent,limsup (1/n) log ‖A⁽ⁿ⁾|_S‖ ≤ λᵢ.Oseledets.spectral_upper_bound_of_squeezeData: from aSqueezeData, the per-vector spectral upper boundlimsup (1/n) log ‖A⁽ⁿ⁾ v‖ ≤ λᵢ.
Implementation notes #
The abstract squeeze chain #
The abstract chain provided by ForwardDetSqueeze is:
tendsto_slowVolume_exponent (hD, hVF, hS, hfact → slow-volume limit VS → slowSum)
→ limsup_topSlow_le_of_squeeze (slow-volume limit + hsplit + lower bounds + boundedness
→ limsup topS ≤ λᵢ)
→ spectral_upper_bound_of_squeeze (hslownorm + hrestrict + side conditions → the
per-vector spectral upper bound).
The concrete cocycle inputs are bundled in SqueezeData, a structure of precisely typed
hypotheses — each entry matches the infrastructure lemma that supplies it, so discharging the
structure is exactly the remaining concrete work, with no hidden arithmetic. The theorem
spectral_upper_bound_of_squeezeData proves the chain is gapless: a SqueezeData alone yields
the per-vector spectral upper bound. Boundedness side-conditions are derived where possible
from the convergence inputs (a convergent real sequence is bounded above and below, cobounded,
etc.), so they are not carried as separate fields.
The fields of SqueezeData #
Listed with the lemma that discharges each (see the field docstrings):
hD— Furstenberg–Kesten det limit (furstenbergKesten_*+ det/exterior Kingman).hVF— exterior-Kingman fast-volume limit (ExteriorNorm‖⋀ᵏ‖ = ∏σ+ Kingman).hS— the tempered angle→ 0(tempering_posLog+ L¹-temperedness + Fischer'ssin ≤ 1).hfact— the determinant/angle factorization (det_sq_eq_gram_image+ block-Gram sine).htop_lb,hrest_lb— per-direction lower bounds (log_le_liminf_log_cocycle_apply+tendsto_log_singularValue/exists_lam_tendsto_singularValue).hrestrict— slow-restriction operator-norm bound (v ∈ Sequivariant + op-norm monotonicity).hMvpos— strict positivity of the per-vector growth (norm_cocycle_posapplied tov ≠ 0).
References #
- L. Arnold, Random dynamical systems, Springer Monographs in Mathematics, Springer (1998).
- D. Ruelle, Ergodic theory of differentiable dynamical systems, Publ. Math. IHÉS 50 (1979), 27–58.
Boundedness helpers: a convergent real sequence is bounded/cobounded both ways. #
These discharge the IsBoundedUnder/IsCoboundedUnder side-conditions of the abstract squeeze
lemmas purely from the convergence inputs, so SqueezeData need not carry them as fields.
The concrete cocycle inputs of the determinant squeeze #
SqueezeData A T x v lamI bundles the concrete facts about the cocycle A⁽ⁿ⁾(x) along the
orbit of x that feed the determinant squeeze, for a fixed slow vector v in the limit slow
subspace S(x) with target top-slow Lyapunov exponent lamI. Each field is typed against the
infrastructure lemma that supplies it (see the field docstrings); the boundedness
side-conditions are derived (not assumed).
Notation for the sequences (all : ℕ → ℝ):
D n = (1/n) log|det A⁽ⁿ⁾|— det exponent,→ dSum = Σ_all λ(hD).VF n = (1/n) log vol(A⁽ⁿ⁾ ω_F)— fast-frame volume exponent,→ fSum = Σ_fast λ(hVF).VS n = (1/n) log vol(A⁽ⁿ⁾ ω_S)— slow-frame volume exponent (= topS + restS).S n = (1/n) log sin∠(A⁽ⁿ⁾F, A⁽ⁿ⁾S)— tempered angle,→ 0(hS).topS n = (1/n) log (r n),r n = ‖A⁽ⁿ⁾|_S‖— top-slow restricted-norm exponent.restS n— remainingq−1slow singular exponents,VS = topS + restS.
The slow vector is nonzero.
Det exponent sequence
(1/n) log|det A⁽ⁿ⁾|.Fast-frame volume exponent sequence.
Slow-frame volume exponent sequence.
Tempered-angle exponent sequence.
Top-slow restricted-norm exponent sequence.
Remaining slow-direction exponent sequence.
Restricted operator norm
r n = ‖A⁽ⁿ⁾|_S‖.- dSum : ℝ
Total exponent sum
Σ_all λ. - fSum : ℝ
Fast exponent sum
Σ_fast λ. - restSum : ℝ
Rest exponent sum (slow without the top direction).
- hD : Filter.Tendsto self.D Filter.atTop (nhds self.dSum)
hD — Furstenberg–Kesten det limit:
(1/n) log|det A⁽ⁿ⁾| → Σ_all λ. Discharged byfurstenbergKesten_*+ the det/top-exterior Kingman limit (|det A⁽ⁿ⁾| = ∏ⱼ σⱼ,(1/n)Σ log σⱼ → Σλ). - hVF : Filter.Tendsto self.VF Filter.atTop (nhds self.fSum)
hVF — exterior-Kingman fast-volume limit:
(1/n) log vol(A⁽ⁿ⁾ ω_F) → Σ_fast λ. Discharged by the exterior-norm identity‖⋀ᵖ‖ = ∏σ+ Kingman (upper), with the fast frameω_Fchosen ≈ the limit top-psingular subspace (band-projector convergence) so the angle defect is tempered (lower). - hS : Filter.Tendsto self.S Filter.atTop (nhds 0)
hS — the tempered angle
(1/n) log sin∠(A⁽ⁿ⁾F, A⁽ⁿ⁾S) → 0. Discharged bytempering_posLogapplied tog = 1/sin∠_splitting(using equivarianceA⁽ⁿ⁾S(x) = S(Tⁿx)so the image angle is the splitting angle atTⁿx), providedlog(1/sin∠_splitting) ∈ L¹(μ)(Arnold §3.4; fromIntegrableLogNorm A+…A⁻¹), together with Fischer'ssin∠ ≤ 1(soS n ≤ 0, i.e. theposLogcaptures the whole). The slow exponent sum splits as the top-slow exponent
lamIplus the rest:(dSum − fSum) = lamI + restSum.htop_lb — top-slow per-direction lower bound
lamI ≤ liminf topS. Discharged bylog_le_liminf_log_cocycle_applyat thresholdc = e^{lamI}+tendsto_log_singularValue.- htopS_ub : Filter.IsBoundedUnder (fun (x1 x2 : ℝ) => x1 ≤ x2) Filter.atTop self.topS
The top-slow restricted-norm exponent is bounded above (Furstenberg–Kesten:
(1/n) log‖A⁽ⁿ⁾‖converges, andr n = ‖A⁽ⁿ⁾|_S‖ ≤ ‖A⁽ⁿ⁾‖). Provided as a clean uniform bound. - htopS_lb : Filter.IsBoundedUnder (fun (x1 x2 : ℝ) => x1 ≥ x2) Filter.atTop self.topS
The top-slow restricted-norm exponent is bounded below (Furstenberg–Kesten on the inverse cocycle:
r n = ‖A⁽ⁿ⁾|_S‖ ≥ 1/‖(A⁽ⁿ⁾)⁻¹‖, whose log-exponent converges byfurstenbergKesten_norm_inv). Note: aliminflower bound alone does NOT give this in a conditionally-complete order, so it is carried explicitly. - hrestS_ub : Filter.IsBoundedUnder (fun (x1 x2 : ℝ) => x1 ≤ x2) Filter.atTop self.restS
restSis bounded above (FK: the slow volume is bounded by‖A⁽ⁿ⁾‖^q, so each exponent term is bounded; equivalently from the convergence of all singular-value exponents). - hrestS_lb : Filter.IsBoundedUnder (fun (x1 x2 : ℝ) => x1 ≥ x2) Filter.atTop self.restS
restSis bounded below (FK on the inverse cocycle: singular values stay away from0). r n ≥ 0(an operator norm).- hMvpos : ∀ᶠ (n : ℕ) in Filter.atTop, 0 < ‖(Matrix.toEuclideanLin (cocycle A T n x)) v‖
hMvpos — strict positivity of the per-vector growth:
0 < ‖A⁽ⁿ⁾ v‖. Fromv ≠ 0anddet A⁽ⁿ⁾ ≠ 0(soA⁽ⁿ⁾is invertible ⇒A⁽ⁿ⁾ v ≠ 0). - hcobdd : Filter.IsCoboundedUnder (fun (x1 x2 : ℝ) => x1 ≤ x2) Filter.atTop fun (n : ℕ) => (↑n)⁻¹ * Real.log ‖(Matrix.toEuclideanLin (cocycle A T n x)) v‖
The per-vector log-growth sequence is cobounded above (FK: bounded above ⇒ cobounded).
Instances For
The chain: SqueezeData → limsup topS ≤ λᵢ → spectral upper bound. #
The determinant squeeze pins the top-slow exponent. From a SqueezeData,
limsup (1/n) log r ≤ λᵢ, where r n = ‖A⁽ⁿ⁾|_S‖ is the slow restricted operator norm. This
chains tendsto_slowVolume_exponent (the volume limit VS → dSum − fSum) into
limsup_topSlow_le_of_squeeze (the two-term pinning squeeze), with all boundedness
side-conditions discharged from the convergence inputs of the data. No per-vector growth
information is used, so the bound may feed the per-vector estimate without circularity.
The per-vector spectral upper bound. The full chain from SqueezeData: for a slow
vector v in the limit slow subspace S(x), the determinant squeeze yields
limsup_n (1/n)·log ‖A⁽ⁿ⁾ v‖ ≤ λᵢ.
All hypotheses of spectral_upper_bound_of_squeeze are discharged from the data (the slow-norm
limsup bound from limsup_slowNorm_le_of_squeezeData, the restriction bound, positivity, and the
boundedness side-conditions, the last derived from the slow-norm bound).