Documentation

Oseledets.Multifractal.BernoulliTwoSidedErgodic

Ergodicity of the two-sided Bernoulli shift (mixing via cylinder approximation) #

This file proves that the invertible left shift biShiftEquiv on the two-sided full shift BiShift α₀ is ergodic with respect to the i.i.d. product (Bernoulli) measure bernZ ν = Measure.infinitePi (fun _ : ℤ => ν).

Why not Kolmogorov 0–1? #

The one-sided proof (Oseledets/Multifractal/BernoulliErgodic.lean) routes through Kolmogorov's 0–1 law on the forward tail ⨅_n ⨆_{i ≥ n} coordSigma i. That argument relies on the iterate shiftMap^[n] x k = x (k + n) with k ∈ ℕ reading only the coordinates {k + n : k ≥ 0} = [n, ∞), so an invariant set lands in the forward tail. For the two-sided shift the iterate biShiftEquiv^[n] x k = x (k + n) with k ∈ ℤ reads {k + n : k ∈ ℤ} = ℤall coordinates — so an invariant set is not tail-measurable and the 0–1-law-on-the-tail does not apply.

The honest route: mixing by cylinder approximation #

This is the standard textbook proof. Let A be a measurable biShiftEquiv-invariant set and write μ = bernZ ν, T = biShiftEquiv.

Main result #

The integer-coordinate σ-algebras and their independence #

@[reducible]

The σ-algebra generated by the n-th coordinate projection of the two-sided full shift.

Equations
Instances For

    Independence of coordinates. Under the two-sided Bernoulli measure the coordinate σ-algebras coordSigmaZ form an independent family. This is iIndepFun_infinitePi applied to the identity coordinate projections, converted from iIndepFun to iIndep of the generated σ-algebras.

    Each integer-coordinate σ-algebra is below the ambient product σ-algebra.

    The finite-block σ-algebra and the ring of cylinders #

    @[reducible]

    The σ-algebra of events depending only on the coordinates in a finite block J ⊆ ℤ: the supremum of the coordinate σ-algebras over J.

    Equations
    Instances For

      Each finite-block σ-algebra is below the ambient product σ-algebra.

      theorem Oseledets.Multifractal.piBlock_mono {α₀ : Type u_1} [MeasurableSpace α₀] {J K : Finset } (h : J K) :

      Enlarging the block enlarges the block σ-algebra.

      A single coordinate σ-algebra sits inside the block over the singleton block.

      def Oseledets.Multifractal.blockAlg {α₀ : Type u_1} [MeasurableSpace α₀] :
      Set (Set (BiShift α₀))

      The ring of finite-block cylinders: the sets that are measurable with respect to some finite block of coordinates. This is the ring fed to the symmetric-difference approximation lemma.

      Equations
      Instances For
        theorem Oseledets.Multifractal.mem_blockAlg {α₀ : Type u_1} [MeasurableSpace α₀] {s : Set (BiShift α₀)} :

        Membership unfolding for the finite-block ring.

        A block-J measurable set is a member of the finite-block ring.

        The finite-block ring is a genuine ring of sets: it contains and is closed under union and set difference. Two block-measurable sets are jointly measurable over the union of their blocks, where a sub-σ-algebra is closed under all Boolean operations.

        The ambient product σ-algebra is the supremum of the integer-coordinate σ-algebras.

        The finite-block ring generates the ambient product σ-algebra. The product σ-algebra is the supremum of the coordinate σ-algebras, each of which is generated by a singleton-block cylinder, so the generated σ-algebra is exactly MeasurableSpace.pi.

        The whole space is a finite-block cylinder (the empty block), so the ring covers the space — the nondegeneracy hypothesis of the approximation lemma.

        Cylinder approximation of an arbitrary measurable set #

        theorem Oseledets.Multifractal.exists_blockAlg_symmDiff_lt {α₀ : Type u_1} [MeasurableSpace α₀] (ν : MeasureTheory.Measure α₀) [MeasureTheory.IsProbabilityMeasure ν] {A : Set (BiShift α₀)} (hA : MeasurableSet A) {ε : ENNReal} ( : 0 < ε) :
        CblockAlg, (bernZ ν) (symmDiff C A) < ε

        Cylinder approximation. Any measurable set is approximated, in symmetric difference, by a finite-block cylinder. This is Mathlib's exists_measure_symmDiff_lt_of_generateFrom_isSetRing specialized to the finite-block ring (which contains univ, so the space is covered modulo 0, and which generates the product σ-algebra).

        The shifted block of a cylinder under an iterate of the shift #

        theorem Oseledets.Multifractal.biShiftMap_iterate_apply' {α₀ : Type u_1} (k : ) (x : BiShift α₀) (i : ) :
        biShiftMap^[k] x i = x (i + k)

        The k-th iterate of the two-sided shift advances every (integer) index by k: biShiftMap^[k] x i = x (i + k). (Local copy, to avoid importing the entropy module.)

        The block-translation embedding i ↦ i + k of into itself, used to re-index a finite block under the iterate biShiftMap^[k].

        Equations
        Instances For
          @[simp]

          Pulling back the i-th coordinate σ-algebra along biShiftMap^[k] gives the (i + k)-th coordinate σ-algebra: eval i ∘ biShiftMap^[k] = eval (i + k) since biShiftMap^[k] x i = x (i+k).

          Pulling back a single block-summand ⨆ (_ : i ∈ J), coordSigmaZ i along biShiftMap^[k] re-indexes the coordinate to i + k.

          Shifted-cylinder measurability. If C is a block-J cylinder, then its preimage under the iterate biShiftMap^[k] is a block-(J + k) cylinder.

          Independence of separated blocks #

          theorem Oseledets.Multifractal.piBlock_eq_iSup_coe {α₀ : Type u_1} [MeasurableSpace α₀] (J : Finset ) :
          piBlock J = iJ, coordSigmaZ i

          The finite-block σ-algebra over J is the supremum of the coordinate σ-algebras over J viewed as a set of indices, the form consumed by ProbabilityTheory.indep_iSup_of_disjoint.

          theorem Oseledets.Multifractal.measure_inter_of_disjoint_blocks {α₀ : Type u_1} [MeasurableSpace α₀] (ν : MeasureTheory.Measure α₀) [MeasureTheory.IsProbabilityMeasure ν] {J K : Finset } (hJK : Disjoint J K) {C D : Set (BiShift α₀)} (hC : MeasurableSet C) (hD : MeasurableSet D) :
          (bernZ ν) (C D) = (bernZ ν) C * (bernZ ν) D

          Independence of disjoint blocks. If the blocks J and K are disjoint, then a block-J cylinder C and a block-K cylinder D are independent under the two-sided Bernoulli measure: bernZ ν (C ∩ D) = bernZ ν C · bernZ ν D. This is the i.i.d. independence of the coordinate σ-algebras (iIndep_coordSigmaZ_bernZ) grouped over the disjoint index blocks (indep_iSup_of_disjoint).

          For any finite block J, all sufficiently large forward shifts of J are disjoint from J: there is N so that Disjoint J (J.map (blockShiftEmb k)) for every k ≥ N. Concretely, pick N beyond the diameter of J.

          The mixing squeeze and pre-ergodicity #

          theorem Oseledets.Multifractal.symmDiff_inter_subset {α₀ : Type u_1} (C D A B : Set (BiShift α₀)) :
          symmDiff (C D) (A B) symmDiff C A symmDiff D B

          The symmetric difference of two intersections is contained in the union of the corresponding symmetric differences: (C ∩ D) ∆ (A ∩ B) ⊆ (C ∆ A) ∪ (D ∆ B).

          The mixing squeeze. For a measurable biShiftEquiv-invariant set A, the real measure a = bernZ ν A satisfies |a - a²| ≤ 4 ε for every ε > 0, hence a = a². The cylinder C that ε-approximates A is independent of its own large forward shift (disjoint blocks), giving (bernZ ν C).real² = bernZ ν (C ∩ shift⁻¹ C), while invariance gives a = bernZ ν (A ∩ shift⁻¹ A); the two intersections differ by 2 ε in measure and C, A differ by ε.

          Pre-ergodicity and the main result #

          Pre-ergodicity via mixing. Any measurable biShiftEquiv-invariant set has bernZ ν-measure 0 or 1. The real measure a satisfies a² = a (the mixing squeeze), so a ∈ {0, 1}; lifting back to ENNReal gives bernZ ν A ∈ {0, 1}.

          Ergodicity of the two-sided Bernoulli shift. The invertible left shift biShiftEquiv is ergodic with respect to the i.i.d. product (Bernoulli) measure bernZ ν. The measure-preserving half is measurePreserving_biShiftEquiv_bernZ; pre-ergodicity is the mixing argument (measure_invariant_eq_zero_or_one_bernZ) — the honest, textbook route via cylinder approximation, since the two-sided shift's invariant sets are not tail-measurable and Kolmogorov's 0–1 law does not apply.