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.
- Approximation. Every measurable
Ais approximated in symmetric difference by a finite-block cylinderC(a set measurable with respect to the coordinates in a finite blockJ ⊆ ℤ):∀ ε > 0, ∃ C ∈ blockAlg, μ (C ∆ A) < ε. This is Mathlib'sMeasureTheory.exists_measure_symmDiff_lt_of_generateFrom_isSetRing, applied to the ringblockAlgof finite-block sets, which generates the product σ-algebra and containsuniv. - Independence of separated blocks. For
nlarge, the blockJofCand the blockJ + nofT^[n] ⁻¹' Care disjoint, so the two sets are independent under the i.i.d. measure (ProbabilityTheory.indep_iSup_of_disjointapplied to the independent coordinate σ-algebras):μ (C ∩ T^[n] ⁻¹' C) = μ C · μ (T^[n] ⁻¹' C) = (μ C)²(the last step by measure preservation). - Pushing through.
μ A = μ (A ∩ T^[n] ⁻¹' A)by invariance, and intersections are stable in symmetric difference, soμ Aand(μ C)²differ byO(ε), whileμ Aandμ Cdiffer byε. Lettingε → 0gives(μ A) = (μ A)², henceμ A ∈ {0, 1}⟹ ergodicity.
Main result #
ergodic_biShiftEquiv_bernZ : Ergodic biShiftEquiv (bernZ ν).
The integer-coordinate σ-algebras and their independence #
The σ-algebra generated by the n-th coordinate projection of the two-sided full shift.
Equations
- Oseledets.Multifractal.coordSigmaZ n = MeasurableSpace.comap (fun (x : Oseledets.Multifractal.BiShift α₀) => x n) inferInstance
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 #
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.
Enlarging the block enlarges the block σ-algebra.
A single coordinate σ-algebra sits inside the block over the singleton block.
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
- Oseledets.Multifractal.blockAlg = {s : Set (Oseledets.Multifractal.BiShift α₀) | ∃ (J : Finset ℤ), MeasurableSet s}
Instances For
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 #
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 #
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.)
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 #
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.
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 #
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.