Documentation

Oseledets.Examples.CatMapOrbit

The cat-map index orbit is infinite #

For the Arnold cat-map matrix M = !![2,1;1,1] : Matrix (Fin 2) (Fin 2) ℤ, this file proves that the forward orbit p ↦ Mᵖ ·ᵥ v of any nonzero integer vector v is injective in p, hence the orbit is an infinite set. This is the number-theoretic heart of the ergodicity proof for the hyperbolic toral automorphism: a Fourier coefficient that is constant along such an orbit and ℓ²-summable must vanish.

The argument is the eigen-covector / growth one (Walkden, Ergodic Theory, Lecture 17): the matrix M is symmetric with two real eigenvalues λ = (3+√5)/2 > 1 and λ⁻¹ = (3-√5)/2 ∈ (0,1), neither a root of unity. Pairing a vector with the two eigen-covectors w (for λ) and u (for λ⁻¹) gives two real functionals φ, ψ with φ(Mᵏ v) = λᵏ φ(v) and ψ(Mᵏ v) = λ⁻ᵏ ψ(v). If Mᵏ v = v for some k ≥ 1 then φ(v) = λᵏ φ(v) and ψ(v) = λ⁻ᵏ ψ(v) with λᵏ ≠ 1, forcing φ(v) = ψ(v) = 0; since w, u span, v = 0.

Main results #

The cat-map matrix and its real eigen-data #

The Arnold cat-map matrix !![2,1;1,1] over .

Equations
Instances For
    noncomputable def Oseledets.CatMapToral.catℝ :
    Matrix (Fin 2) (Fin 2)

    The cat-map matrix over (entrywise integer cast).

    Equations
    Instances For
      noncomputable def Oseledets.CatMapToral.lam :

      The dominant eigenvalue λ = (3 + √5)/2 > 1.

      Equations
      Instances For

        √5 < 3 (since 5 < 9).

        2 < √5 (since 4 < 5).

        (√5)² = 5.

        The dominant eigenvalue is hyperbolic: 1 < λ.

        λ satisfies the characteristic equation λ² = 3λ - 1.

        noncomputable def Oseledets.CatMapToral.mu :

        The stable eigenvalue μ = (3 - √5)/2.

        Equations
        Instances For

          μ satisfies the same characteristic equation μ² = 3μ - 1.

          The two eigenvalues are distinct: λ - μ = √5 ≠ 0.

          The growth functionals coming from the two eigen-covectors #

          Because catℝ is symmetric, an eigenvector is simultaneously an eigen-covector. Pairing with ![1, λ-2] and ![1, μ-2] (the eigenvectors for λ and μ) gives two linear functionals that scale by λ and μ respectively under one step of the dynamics.

          theorem Oseledets.CatMapToral.catℝ_mulVec_apply (v : Fin 2) :
          catℝ.mulVec v = ![2 * v 0 + v 1, v 0 + v 1]

          Evaluate catℝ *ᵥ v componentwise as a Fin 2 vector.

          One application of the cat-map matrix to the λ-eigenvector scales it by λ.

          One application of the cat-map matrix to the μ-eigenvector scales it by μ.

          catℝ is symmetric, hence equal to its transpose.

          The k-th power of catℝ scales the λ-eigenvector by λᵏ.

          The k-th power of catℝ scales the μ-eigenvector by μᵏ.

          Adjoint identity for the symmetric matrix catℝ and its powers: w ⬝ᵥ (catℝᵏ *ᵥ v) = (catℝᵏ *ᵥ w) ⬝ᵥ v.

          A +1-eigenvector of a power forces the zero vector #

          theorem Oseledets.CatMapToral.eq_zero_of_pow_mulVec_eq {k : } (hk : 1 k) {v : Fin 2} (hv : (catℝ ^ k).mulVec v = v) :
          v = 0

          If catℝᵏ ·ᵥ v = v for some k ≥ 1, then v = 0. Pairing with the two eigen-covectors collapses both coordinates: the λ-pairing gives λᵏ ⟨w,v⟩ = ⟨w,v⟩ with λᵏ ≠ 1, hence ⟨w,v⟩ = 0; likewise ⟨u,v⟩ = 0; the two covectors are independent, so v = 0.

          From the eigen-collapse to orbit injectivity and infiniteness #

          The real cat-map matrix is the entrywise integer cast of the integer one.

          det catℝ = 1, hence every power has nonzero determinant.

          catℝ ^ p is the entrywise integer cast of catℤ ^ p.

          theorem Oseledets.CatMapToral.cast_pow_mulVec (p : ) (v : Fin 2) :
          (fun (i : Fin 2) => ((catℤ ^ p).mulVec v i)) = (catℝ ^ p).mulVec fun (i : Fin 2) => (v i)

          Casting an integer orbit step to is the corresponding real orbit step.

          theorem Oseledets.CatMapToral.orbit_injective {v : Fin 2} (hv : v 0) :
          Function.Injective fun (p : ) => (catℤ ^ p).mulVec v

          Orbit injectivity. For nonzero integer v, the forward orbit p ↦ catℤᵖ ·ᵥ v is injective.

          theorem Oseledets.CatMapToral.orbit_infinite {v : Fin 2} (hv : v 0) :
          (Set.range fun (p : ) => (catℤ ^ p).mulVec v).Infinite

          Orbit infiniteness. For nonzero integer v, the orbit {catℤᵖ ·ᵥ v | p} is infinite.