Documentation

Oseledets.Lyapunov.Extensions.Regularity

Regularity of the Lyapunov exponents in the generating cocycle #

The regularity of the Lyapunov exponents as functions of the generator A, built on the spectrum object Oseledets.exponents : Fin d → ℝ, the telescoping growth rate Oseledets.gammaK (Oseledets/Lyapunov/ExponentSums.lean), and the determinant identity Oseledets.sumAllExp_eq_integral_log_abs_det (Oseledets/Lyapunov/DetIdentity.lean).

Main definitions #

Main results #

Implementation notes #

References #

A Bochner–Fatou helper for nonnegative a.e.-convergent sequences #

If h n ≥ 0 (a.e.) is integrable, h n → H a.e. with H integrable, and the integral sequence converges to b, then ∫ H ≤ b. This is Fatou's lemma in the convenient convergent form; it powers the non-trivial direction of gammaK_eq_gammaKInf.

The Fekete infimum representation of Γ_k #

theorem Oseledets.integral_logSprod_subadditive {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hT : MeasureTheory.MeasurePreserving T μ μ) (hTmeas : Measurable T) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) {k : } (hk : k d) :
Subadditive fun (n : ) => (x : X), Real.log (sprod A T k n x) μ

Subadditivity of the integral sequence. The sequence aₙ = ∫ log sprod_k(n) is subadditive (a (m+n) ≤ a m + a n): integrate the subadditive-cocycle inequality (isSubadditiveCocycle_logSprod) over the measure-preserving base. This is the Fekete input.

noncomputable def Oseledets.gammaKInf {X : Type u_1} [MeasurableSpace X] {d : } {μ : MeasureTheory.Measure X} {T : XX} {A : XMatrix (Fin d) (Fin d) } {k : } (_hk : k d) :

The Fekete infimum Γ_k = ⨅ n, (∫ log sprod_k(n+1))/(n+1). By Fekete's lemma the normalized integral sequence of a subadditive sequence decreases to its infimum; this packages that infimum as a plain real. (It is identified with the ergodic constant gammaK in gammaK_eq_gammaKInf.)

Equations
Instances For
    theorem Oseledets.gammaKInf_eq_lim {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : MeasureTheory.MeasurePreserving T μ μ) (hTmeas : Measurable T) {k : } (hk : k d) :
    gammaKInf hk = .lim

    gammaKInf is the Subadditive.lim of the integral sequence. Both are sInf of the same set (the image of Ici 1 under u · / ·); range_div_succ_eq reconciles the -over- shifted indexing with the Subadditive.lim Ici 1 indexing.

    theorem Oseledets.tendsto_integral_logSprod {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : MeasureTheory.MeasurePreserving T μ μ) (hTmeas : Measurable T) {k : } (hk : k d) :
    Filter.Tendsto (fun (n : ) => ( (x : X), Real.log (sprod A T k (n + 1) x) μ) / (n + 1)) Filter.atTop (nhds (gammaKInf hk))

    Fekete's lemma. The normalized integral sequence (∫ log sprod_k(n+1))/(n+1) converges to the Fekete infimum gammaKInf.

    The ergodic constant equals the Fekete infimum #

    theorem Oseledets.gammaK_eq_gammaKInf {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] (hT : Ergodic T μ) {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) {k : } (hk : k d) :
    gammaK hT hA hAmeas hint hint' hk = gammaKInf hk

    The ergodic constant is the Fekete infimum. gammaK = gammaKInf. The inequality gammaK ≤ gammaKInf is a Fatou estimate on f_n − L_n ≥ 0 where L_n = −k·birkhoffAverage(log⁺‖A⁻¹‖) converges a.e. (Birkhoff) to a constant; the reverse gammaKInf ≤ gammaK is the symmetric Fatou estimate on U_n − f_n ≥ 0 with U_n = k·birkhoffAverage(log⁺‖A‖). The integral sequence converges to gammaKInf by Fekete (tendsto_integral_logSprod), the integrands converge a.e. to gammaK (gammaK_tendsto), and the dominating-Birkhoff integrals are constant by measure preservation.

    theorem Oseledets.gammaK_eq_iInf {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] (hT : Ergodic T μ) {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) {k : } (hk : k d) :
    gammaK hT hA hAmeas hint hint' hk = ⨅ (n : ), ( (x : X), Real.log (sprod A T k (n + 1) x) μ) / (n + 1)

    The Fekete infimum representation of Γ_k. The ergodic growth rate equals the infimum, over n, of the normalized integrals: Γ_k = ⨅ n, (∫ log sprod_k(n+1))/(n+1). This is the representation that makes Γ_k an infimum of functions continuous in the generator, hence upper semicontinuous.

    Per-n integral continuity under a fixed log-integrable envelope (regime 1) #

    theorem Oseledets.tendsto_integral_logSprod_of_dominated {X : Type u_1} [MeasurableSpace X] {d : } {μ : MeasureTheory.Measure X} {T : XX} {B : XMatrix (Fin d) (Fin d) } {A : XMatrix (Fin d) (Fin d) } {k n : } {bound : X} (hmeas : ∀ (m : ), MeasureTheory.AEStronglyMeasurable (fun (x : X) => Real.log (sprod (B m) T k n x)) μ) (hbound_int : MeasureTheory.Integrable bound μ) (hbound : ∀ (m : ), ∀ᵐ (x : X) μ, Real.log (sprod (B m) T k n x) bound x) (hlim : ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => Real.log (sprod (B m) T k n x)) Filter.atTop (nhds (Real.log (sprod A T k n x)))) :
    Filter.Tendsto (fun (m : ) => (x : X), Real.log (sprod (B m) T k n x) μ) Filter.atTop (nhds ( (x : X), Real.log (sprod A T k n x) μ))

    Per-n integral continuity (dominated convergence, regime 1). Suppose a sequence of generators B m → A is such that, for a fixed iterate count n and μ-a.e. x, the integrand log sprod_k(B m, n, x) → log sprod_k(A, n, x) converges, and is dominated by a fixed integrable function bound. Then ∫ log sprod_k(B m, n) → ∫ log sprod_k(A, n).

    The a.e. integrand convergence is supplied, e.g., by entrywise a.e. convergence B m → A through the continuity of the singular-value product sprod in the matrix entries; the fixed bound (e.g. k·(log⁺‖·‖ + log⁺‖·⁻¹‖) for a uniform envelope) is the required -log domination. Pointwise generator convergence alone is insufficient: the dominated-convergence theorem requires a fixed integrable envelope.

    Upper semicontinuity of the partial sums, top exponent, and positive-exponent sum #

    theorem Oseledets.gammaK_upperSemicontinuous {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {ι : Type u_2} {l : Filter ι} {B : ιXMatrix (Fin d) (Fin d) } (hB : ∀ (i : ι), (∀ (x : X), (B i x).det 0) Measurable (B i) IntegrableLogNorm (B i) μ IntegrableLogNorm (fun (x : X) => (B i x)⁻¹) μ) {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : Ergodic T μ) [l.IsCountablyGenerated] [l.NeBot] {k : } (hk : k d) (hcobdd : Filter.IsCoboundedUnder (fun (x1 x2 : ) => x1 x2) l fun (i : ι) => gammaK hT hk) (hcont : ∀ (n : ), Filter.Tendsto (fun (i : ι) => (x : X), Real.log (sprod (B i) T k (n + 1) x) μ) l (nhds ( (x : X), Real.log (sprod A T k (n + 1) x) μ))) :
    Filter.limsup (fun (i : ι) => gammaK hT hk) l gammaK hT hA hAmeas hint hint' hk

    Upper semicontinuity of the partial sums in the generator. Let B i be a family of generators (each satisfying the standing hypotheses, via hB) and A a limiting generator, such that for every fixed n the per-n integral is continuous along the filter l (hcont, the conclusion of tendsto_integral_logSprod_of_dominated). Then the partial-sum growth rate Γ_k is upper semicontinuous: limsup_i Γ_k(B i) ≤ Γ_k(A).

    This is upper semicontinuity, not continuity. Γ_k is an infimum of the per-n continuous normalized integrals (gammaK_eq_iInf); an infimum of continuous functions is USC, and the inequality can be strict — full continuity of the partial sums (and a fortiori of individual exponents) fails in general when a spectral gap closes. The per-n continuity hypothesis is the dominated-convergence conclusion and itself requires a fixed integrable envelope (pointwise generator convergence alone does not suffice).

    theorem Oseledets.topExponent_upperSemicontinuous {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {ι : Type u_2} {l : Filter ι} {B : ιXMatrix (Fin d) (Fin d) } (hB : ∀ (i : ι), (∀ (x : X), (B i x).det 0) Measurable (B i) IntegrableLogNorm (B i) μ IntegrableLogNorm (fun (x : X) => (B i x)⁻¹) μ) {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : Ergodic T μ) [l.IsCountablyGenerated] [l.NeBot] (hcobdd : Filter.IsCoboundedUnder (fun (x1 x2 : ) => x1 x2) l fun (i : ι) => topExponent hT ) (hcont : ∀ (n : ), Filter.Tendsto (fun (i : ι) => (x : X), Real.log (sprod (B i) T 1 (n + 1) x) μ) l (nhds ( (x : X), Real.log (sprod A T 1 (n + 1) x) μ))) :
    Filter.limsup (fun (i : ι) => topExponent hT ) l topExponent hT hA hAmeas hint hint'

    Upper semicontinuity of the top Lyapunov exponent. Specializing gammaK_upperSemicontinuous to k = 1 (λ₁ = Γ_1): the top exponent is USC in the generator, limsup_i λ₁(B i) ≤ λ₁(A). As for the partial sums, this is USC, not continuity.

    Lower semicontinuity of the bottom exponent #

    The bottom (smallest) Lyapunov exponent is λ_d = Γ_d − Γ_{d-1}. Since Γ_d = ∫ log|det| is continuous (linear in log|det|, the determinant identity), while Γ_{d-1} is only USC, the difference is lower semicontinuous — the opposite asymmetry to the top exponent.

    noncomputable def Oseledets.botExp {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {A : XMatrix (Fin d) (Fin d) } (hT : Ergodic T μ) (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) :

    The bottom Lyapunov exponent, as the telescoping difference Γ_d − Γ_{d-1}. By the telescoping identity (gammaK_eq_sum_top_exponents) this equals the smallest entry of the sorted spectrum exponents ⟨d-1, …⟩ (recorded in botExp_eq_exponents_last).

    Equations
    Instances For
      theorem Oseledets.botExp_eq_exponents_last {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : Ergodic T μ) :
      botExp hT hA hAmeas hint hint' = exponents hT hA hAmeas hint hint' d - 1,

      The bottom exponent is the smallest entry of the sorted spectrum. Γ_d − Γ_{d-1} telescopes to the last (smallest) spectral value exponents ⟨d-1, …⟩.

      theorem Oseledets.botExp_lowerSemicontinuous {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} [MeasureTheory.IsProbabilityMeasure μ] {ι : Type u_2} {l : Filter ι} {B : ιXMatrix (Fin d) (Fin d) } (hB : ∀ (i : ι), (∀ (x : X), (B i x).det 0) Measurable (B i) IntegrableLogNorm (B i) μ IntegrableLogNorm (fun (x : X) => (B i x)⁻¹) μ) {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : Ergodic T μ) [l.IsCountablyGenerated] [l.NeBot] (hwbelow : Filter.IsBoundedUnder (fun (x1 x2 : ) => x1 x2) l fun (i : ι) => gammaK hT ) (hcont : ∀ (n : ), Filter.Tendsto (fun (i : ι) => (x : X), Real.log (sprod (B i) T (d - 1) (n + 1) x) μ) l (nhds ( (x : X), Real.log (sprod A T (d - 1) (n + 1) x) μ))) (hdet : Filter.Tendsto (fun (i : ι) => (x : X), Real.log |(B i x).det| μ) l (nhds ( (x : X), Real.log |(A x).det| μ))) :
      botExp hT hA hAmeas hint hint' Filter.liminf (fun (i : ι) => botExp hT ) l

      Lower semicontinuity of the bottom exponent in the generator. Under the per-n integral continuity for the top-(d-1) sum (hcont, supplying USC of Γ_{d-1}) and continuity of the determinant growth Γ_d = ∫ log|det| (hdet), the bottom exponent is lower semicontinuous: botExp(A) ≤ liminf_i botExp(B i).

      This LSC is the opposite asymmetry to the top exponent's USC, and is special to the bottom exponent: it holds precisely because Γ_d = ∫ log|det| is continuous (indeed linear) in the generator, whereas a generic interior exponent λᵢ = Γ_{i+1} − Γ_i is a difference of two USC functions and has no semicontinuity in either direction.

      Per-n integral continuity under a.e. generator convergence + uniform integrability #

      (regime 2, the Vitali route)

      The second per-n continuity regime replaces the fixed integrable envelope of regime 1 (tendsto_integral_logSprod_of_dominated) by the -log control hypothesis of uniform integrability of the integrand family log sprod_k(B m, n, ·), together with μ-a.e. convergence of the generators B m → A. The latter is purely analytic: it propagates through the cocycle (a finite matrix product / orbit composition), the Gram matrix, its sorted eigenvalues (Weyl perturbation, tendsto_eigenvalues₀), the singular values (gram_eigenvalues₀_eq_sq_singularValues), and finally sprod = ∏ σ and Real.log. This is the a.e. convergence of log sprod in ae_tendsto_logSprod_of_ae_tendsto_generator. The integral continuity is then Vitali's convergence theorem (tendsto_Lp_finite_of_tendsto_ae + tendsto_integral_of_L1'), packaged in tendsto_integral_logSprod_of_unifIntegrable and combined with the a.e. generator convergence in tendsto_integral_logSprod_of_ae_unifIntegrable.

      Uniform integrability is an explicit hypothesis, not something derived from pure -log convergence of the generators: log sprod is not -continuous in posLog‖·‖, so pure -log convergence of the generators does not imply integral continuity. Uniform integrability is the correct -log control that, together with a.e. convergence, makes the Vitali theorem applicable. The a.e. generator-convergence helper requires T to be measure-preserving: the integrand at x samples the generator along the finite orbit x, Tx, …, T^{n-1}x, so propagating an a.e. statement from x to its orbit requires quasi-measure-preservation of T. (At the wrapper's call site this is supplied by Ergodic.T.)

      theorem Oseledets.ae_tendsto_logSprod_of_ae_tendsto_generator {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} {B : XMatrix (Fin d) (Fin d) } {A : XMatrix (Fin d) (Fin d) } (hA : ∀ (x : X), (A x).det 0) {k : } (hk : k d) {n : } (hT : MeasureTheory.MeasurePreserving T μ μ) (hconv : ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => B m x) Filter.atTop (nhds (A x))) :
      ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => Real.log (sprod (B m) T k n x)) Filter.atTop (nhds (Real.log (sprod A T k n x)))

      A.e. convergence of log sprod from a.e. generator convergence. If the generators converge μ-a.e. B m → A, then for each fixed iterate count n and k ≤ d, μ-a.e. the integrand converges log sprod_k(B m, n, x) → log sprod_k(A, n, x).

      This is the analytic core of regime 2. The chain is: a.e. B m → A propagates to the cocycle (ae_tendsto_cocycle_of_ae_tendsto_generator); the Gram matrix Qₙ = cocycleᵀ · cocycle converges (continuity of transpose and matrix multiplication); its sorted eigenvalues converge (Weyl perturbation, tendsto_eigenvalues₀); the squared singular values equal the Gram eigenvalues (gram_eigenvalues₀_eq_sq_singularValues), so each σᵢ(B m)² → σᵢ(A)², hence σᵢ(B m) → σᵢ(A) (Real.sqrt continuity, σᵢ ≥ 0); the finite product sprod = ∏_{i<k} σᵢ converges (tendsto_finsetProd); and Real.log is continuous at the strictly positive limit sprod_k(A, n, x) > 0 (sprod_pos).

      The measure-preserving hypothesis hT is required: log sprod_k(·, n, x) samples the generator along the finite orbit x, Tx, …, T^{n-1}x, so an a.e. statement at x propagates to its orbit only through quasi-measure-preservation of T.

      theorem Oseledets.tendsto_integral_logSprod_of_unifIntegrable {X : Type u_1} [MeasurableSpace X] {d : } {μ : MeasureTheory.Measure X} {T : XX} {B : XMatrix (Fin d) (Fin d) } {A : XMatrix (Fin d) (Fin d) } [MeasureTheory.IsFiniteMeasure μ] {k n : } (hBmeas : ∀ (m : ), MeasureTheory.AEStronglyMeasurable (fun (x : X) => Real.log (sprod (B m) T k n x)) μ) (hAmemLp : MeasureTheory.MemLp (fun (x : X) => Real.log (sprod A T k n x)) 1 μ) (hui : MeasureTheory.UnifIntegrable (fun (m : ) (x : X) => Real.log (sprod (B m) T k n x)) 1 μ) (hlim : ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => Real.log (sprod (B m) T k n x)) Filter.atTop (nhds (Real.log (sprod A T k n x)))) :
      Filter.Tendsto (fun (m : ) => (x : X), Real.log (sprod (B m) T k n x) μ) Filter.atTop (nhds ( (x : X), Real.log (sprod A T k n x) μ))

      Per-n integral continuity via uniform integrability (Vitali, regime 2). For a fixed iterate count n and k ≤ d, if the integrand family log sprod_k(B m, n, ·) is uniformly integrable (hui), μ-a.e.-strongly-measurable (hBmeas), and converges μ-a.e. to log sprod_k(A, n, ·) (hlim, with the limit , hAmemLp), then the integrals converge: ∫ log sprod_k(B m, n) → ∫ log sprod_k(A, n).

      This is Vitali's convergence theorem: a.e. convergence with uniform integrability yields -convergence (tendsto_Lp_finite_of_tendsto_ae), which gives integral convergence (tendsto_integral_of_L1'). Uniform integrability is the -log control replacing the fixed envelope of regime 1; it is not derivable from pure -log convergence of the generators (log sprod is not -continuous in posLog‖·‖) and is kept as a hypothesis.

      theorem Oseledets.tendsto_integral_logSprod_of_ae_unifIntegrable {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} {B : XMatrix (Fin d) (Fin d) } {A : XMatrix (Fin d) (Fin d) } [MeasureTheory.IsFiniteMeasure μ] (hA : ∀ (x : X), (A x).det 0) {k : } (hk : k d) {n : } (hT : MeasureTheory.MeasurePreserving T μ μ) (hconv : ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => B m x) Filter.atTop (nhds (A x))) (hBmeas : ∀ (m : ), MeasureTheory.AEStronglyMeasurable (fun (x : X) => Real.log (sprod (B m) T k n x)) μ) (hAmemLp : MeasureTheory.MemLp (fun (x : X) => Real.log (sprod A T k n x)) 1 μ) (hui : MeasureTheory.UnifIntegrable (fun (m : ) (x : X) => Real.log (sprod (B m) T k n x)) 1 μ) :
      Filter.Tendsto (fun (m : ) => (x : X), Real.log (sprod (B m) T k n x) μ) Filter.atTop (nhds ( (x : X), Real.log (sprod A T k n x) μ))

      Per-n integral continuity from a.e. generator convergence and uniform integrability. Combines ae_tendsto_logSprod_of_ae_tendsto_generator (a.e. generator convergence B m → A ⟹ a.e. integrand convergence) with the Vitali theorem tendsto_integral_logSprod_of_unifIntegrable. The output is exactly the per-n continuity hypothesis hcont consumed by gammaK_upperSemicontinuous, topExponent_upperSemicontinuous, and botExp_lowerSemicontinuous (those take hcont over any countably-generated NeBot filter, and atTop on qualifies), so it feeds the regime-2 semicontinuity statement gammaK_upperSemicontinuous_of_ae_unifIntegrable directly.

      The measure-preserving hypothesis is supplied at the USC call site by Ergodic.toMeasurePreserving. Uniform integrability remains an explicit hypothesis (the -log control), not derived from pure -log convergence of the generators.

      theorem Oseledets.gammaK_upperSemicontinuous_of_ae_unifIntegrable {X : Type u_1} [MeasurableSpace X] {d : } [NeZero d] {μ : MeasureTheory.Measure X} {T : XX} {B : XMatrix (Fin d) (Fin d) } {A : XMatrix (Fin d) (Fin d) } [MeasureTheory.IsProbabilityMeasure μ] (hB : ∀ (m : ), (∀ (x : X), (B m x).det 0) Measurable (B m) IntegrableLogNorm (B m) μ IntegrableLogNorm (fun (x : X) => (B m x)⁻¹) μ) (hA : ∀ (x : X), (A x).det 0) (hAmeas : Measurable A) (hint : IntegrableLogNorm A μ) (hint' : IntegrableLogNorm (fun (x : X) => (A x)⁻¹) μ) (hT : Ergodic T μ) {k : } (hk : k d) (hcobdd : Filter.IsCoboundedUnder (fun (x1 x2 : ) => x1 x2) Filter.atTop fun (m : ) => gammaK hT hk) (hconv : ∀ᵐ (x : X) μ, Filter.Tendsto (fun (m : ) => B m x) Filter.atTop (nhds (A x))) (hBmeas : ∀ (n m : ), MeasureTheory.AEStronglyMeasurable (fun (x : X) => Real.log (sprod (B m) T k (n + 1) x)) μ) (hAmemLp : ∀ (n : ), MeasureTheory.MemLp (fun (x : X) => Real.log (sprod A T k (n + 1) x)) 1 μ) (hui : ∀ (n : ), MeasureTheory.UnifIntegrable (fun (m : ) (x : X) => Real.log (sprod (B m) T k (n + 1) x)) 1 μ) :
      Filter.limsup (fun (m : ) => gammaK hT hk) Filter.atTop gammaK hT hA hAmeas hint hint' hk

      Regime-2 upper semicontinuity of the partial sums. Specializing gammaK_upperSemicontinuous to the filter atTop on with the regime-2 per-n continuity from tendsto_integral_logSprod_of_ae_unifIntegrable: under a.e. generator convergence B m → A (hconv) and, for each fixed iterate count, a.e.-strong measurability (hBmeas), an limit (hAmemLp), and uniform integrability (hui) of the integrand family, the partial-sum growth rate Γ_k is upper semicontinuous: limsup_m Γ_k(B m) ≤ Γ_k(A). Regime 2 thus feeds the same USC statement gammaK_upperSemicontinuous.

      This is upper semicontinuity, not continuity, and uniform integrability is an explicit -log hypothesis, not a consequence of pure -log generator convergence.