The full-time special-flow exponent under a bounded roof #
This module closes the section-level full-time special-flow Lyapunov exponent
λ_flow = λ_base / ∫τ (the headline of Issue #5) under the natural extra hypothesis that the roof
τ is bounded above, τ ≤ C. The reduction lemmas
Oseledets.coverCocycle_norm_eq_lapCount and Oseledets.log_coverCocycle_div_eq_lapCount
(of Oseledets.Continuous.SuspensionFullTimeExponent) already factor the full-time Birkhoff ratio
exactly as
log‖coverCocycle (x,0) t‖ / t = (returnTime (lapCount t x) x / t) · (log‖cocycle A T (lapCount t x) x‖ / returnTime (lapCount t x) x),
a product of a time-distortion factor and a return-time exponent ratio. The
SuspensionFullTimeExponent header records the precise remaining analytic gap: with only a uniform
lower bound c ≤ τ, the time-distortion factor returnTime (lapCount t x) x / t cannot be
squeezed to 1 (the lap width returnTime (n+1) x − returnTime n x = τ (Tⁿ x) is unbounded). The
present file supplies exactly the missing analytic input: with a uniform upper bound τ ≤ C the
lap width is bounded by C, the first-passage sandwich tightens to
returnTime (lapCount t x) x ≤ t < returnTime (lapCount t x) x + C,
and the time-distortion factor is squeezed to 1.
This is the special-flow / flow-under-a-roof construction of Cornfeld–Fomin–Sinai, Ergodic
Theory (Springer 1982), Ch. 11 (special/suspension flows; Ambrose–Kakutani), the first-return /
ceiling construction underlying Abramov's entropy formula h(flow) = h(base)/∫τ (L.M. Abramov, On
the entropy of a flow, Dokl. Akad. Nauk SSSR 128 (1959) 873–875); the Lyapunov-exponent
analogue is the design reference of Bessa–Varandas (suspension Lyapunov exponents).
Main results #
Oseledets.returnTime_succ_eq: the return-time stepreturnTime (n + 1) x = returnTime n x + τ (baseIter T hτ n x).Oseledets.lapCount_returnTime_lt_add_C: the tightened upper sandwich underτ ≤ C,t < returnTime (lapCount t x) x + C(the lap width is at mostC).Oseledets.lapCount_returnTime_div_tendsto_one: the time-distortion factor tends to1,returnTime (lapCount t x) x / t → 1as the realt → ∞(squeeze between1 − C/tand1).Oseledets.lapCount_tendsto_atTop: the lap count diverges,lapCount t x → ∞ast → ∞.Oseledets.coverCocycle_tendsto_exponent_of_bddRoof: the headline full-time section exponent. Under the base growth, roof-average, and bounded-roof hypotheses, the full-time flow log-norm rescaled bytconvergesμ-a.e. tolam / ∫τ,Real.log ‖coverCocycle (x,0) t‖ / t → lam / ∫τas the realt → ∞.
What is not in this file — the precise remaining gap #
The convergence below is the section-level (cover) full-time exponent on the base cross-section:
coverCocycle (x, 0) · is the suspension flow cocycle read from height 0. Two pieces remain
toward the genuine space-level headline against the invariant suspension measure:
- Quotient descent to
SuspensionSpace. Reading the rate as a class-invariant measurable function on the orbit quotientOseledets.SuspensionSpace T hτ(the(x, τ x) ∼ (T x, 0)identification) is the open keystone, the genuine space-levelFlowCocycle(cf. the quotient gap documented inOseledets.Continuous.SuspensionCocycle). MeasurePreservingFlowpackaging. Readingλ_flow = λ_base / ∫τagainst the invariant suspension measureμ̂needs per-time measure-preservation of the suspension flow. The denominator∫τis Abramov's; the numerator is the base Oseledets exponent.
Under the bounded-roof hypothesis the full real-time section exponent is now sorry-free; only the quotient descent and the measure-preservation packaging remain.
The return-time step. Advancing one lap adds the roof value at the shifted base point:
returnTime (n + 1) x = returnTime n x + τ (baseIter T hτ n x). This unfolds the return time as the
roof Birkhoff sum and applies the roof-cocycle step roofSum_add_one.
Bounded lap width. Under a roof bounded above by C (τ ≤ C), one lap takes at most flow
time C: returnTime (n + 1) x ≤ returnTime n x + C. Combined with the lower bound c ≤ τ this
pins each lap width into [c, C].
The tightened upper sandwich. Under τ ≤ C the next return overshoots t by at most C:
t < returnTime (lapCount t x) x + C. This is the upper first-passage bound
t < returnTime (lapCount t x + 1) x (lapCount_lt_returnTime_succ) combined with the bounded lap
width returnTime (lapCount t x + 1) x ≤ returnTime (lapCount t x) x + C. Together with the lower
bound returnTime (lapCount t x) x ≤ t (lapCount_returnTime_le) it confines t to a window of
width C above the lap's return time — the input that squeezes the time-distortion factor.
The lap count is at least n once t has reached the n-th return. For returnTime n x ≤ t the flow has completed at least n laps: n ≤ lapCount t x. This is read off from the upper
first-passage bound t < returnTime (lapCount t x + 1) x through strict monotonicity of the return
times. It is the engine of lapCount_tendsto_atTop.
The lap count diverges. As the real flow time t → ∞ the number of completed laps tends to
+∞: lapCount t x → ∞. For each target n the return time returnTime n x is a witness: once
t ≥ returnTime n x the flow has completed at least n laps
(le_lapCount_of_returnTime_le).
The time-distortion factor tends to 1. Under the bounded roof τ ≤ C, the ratio of the
lap's return time to the elapsed flow time converges to 1:
returnTime (lapCount t x) x / t → 1 as the real t → ∞. This is the missing analytic input of the
between-returns squeeze. The tightened sandwich returnTime (lapCount t x) x ≤ t < returnTime (lapCount t x) x + C confines the factor to 1 − C/t < returnTime (lapCount t x) x / t ≤ 1, and
1 − C/t → 1, so the squeeze closes.
The full-time section special-flow exponent under a bounded roof (headline). Suppose the
base cocycle A has a μ-a.e. log-norm growth rate lam (n⁻¹·log‖cocycle A T n x‖ → lam a.e.;
the discrete Oseledets/Furstenberg–Kesten output, taken as a hypothesis so the lemma applies to the
top exponent or any other rate), the roof average converges a.e. to ∫τ, ∫τ ≠ 0, and the roof is
bounded c ≤ τ ≤ C. Then the cover flow cocycle log-norm, read from the base section and
rescaled by the real elapsed flow time t, converges μ-a.e. to lam / ∫τ as t → ∞:
Real.log ‖coverCocycle (x, 0) t‖ / t → lam / ∫τ.
This is the full real-time upgrade of coverCocycle_returnTime_tendsto_exponent (which holds only
along the discrete return subsequence). The proof runs the between-returns squeeze: by
log_coverCocycle_div_eq_lapCount the ratio factors as the time-distortion factor times the
return-time exponent ratio. The time-distortion factor tends to 1
via lapCount_returnTime_div_tendsto_one (the bounded-roof input). The exponent ratio is the
discrete return-time exponent sampled at the lap count, tending to lam / ∫τ by composing
coverCocycle_returnTime_tendsto_exponent with lapCount_tendsto_atTop and the norm bridge
coverCocycle_returnTime_norm_eq. The product of the two limits is (lam / ∫τ)·1 = lam / ∫τ.