Exponential decay of correlations for rectangles under Arnold's cat map #
Category: 1-Mathlib (CSD-free; staged as a Mathlib-upstream candidate).
BACKLOG #118(i); consumed by SigmaLayer/FibreCellDecay.lean and Mathlib/Dynamics/CatMapStrongMixing.lean.
CatMapWitness.lean proved that the cat map (x, y) ↦ (2x + y, x + y) on T² decorrelates the
single trigonometric observable Re e^{2πix}, with correlations exactly zero at every nonzero lag.
That is a witness. This file proves the statement a coarse-graining actually needs: the indicator
of any rectangle (a, b) × (c, d) of arcs has correlations decaying like 4 · 2^{-⌊(n−2)/3⌋},
a summable envelope, and the same for the pair correlation of two different rectangles.
The argument #
Four stages, each a section below.
- The frequency orbit grows.
catZ (m, n) = (2m + n, m + n)is the transpose action on character indices. The integer quadratic formm² − mn − n²iscatZ-invariant and never vanishes on a nonzero integer vector (its discriminant5is not a square: a zero would make the golden ratio rational,goldenRatio_irrational), while the expanding linear form is multiplied byφ²at each step. Hence ★goldenRatio_pow_le_supNormZ_catZ_iterate,φ^{2n} ≤ φ³ ‖catZ^[n] v‖ ‖v‖, and ★catCutoff_lt_supNormZ_catZ_iterate: forn ≥ 2every nonzero frequency in the box of half-widthcatCutoff n = 4^{⌊(n−2)/3⌋}is carried strictly outside it. No eigenvector is ever written down;φ² = φ + 1does all the work. - Arcs. The indicator of an arc of the unit circle, read through the representative in
(0, 1], has Fourier coefficients(e^{-2πinb} − e^{-2πina}) / (−2πin)(fourierCoeff_arcInd), hence ★norm_fourierCoeff_arcInd_le:‖â(n)‖ ≤ 1/(π|n|). - Truncation.
trunc R ukeeps|n| ≤ R. Mathlib's Parseval (tsum_sq_fourierCoeff) identifies theL²truncation error with the tail of the series (integral_normSq_sub_trunc), Bessel bounds the truncation's energy (integral_normSq_trunc_le), and∑_{|n|>R} n⁻² ≤ 4/R(tsum_tail_inv_sq_le) give ★★integral_normSq_arcInd_sub_trunc_le: the error of truncating an arc is at most1/R. - Rectangles and the main term. A rectangle is
u(x) v(y); its truncation is the product of the truncations, a trigonometric polynomial on the frequency box, withL²error at most4/R(integral_normSq_rect_sub_trunc_le, Fubini). Undercat^[n]the box is carried off itself, so by character orthogonality the integral of one truncated rectangle afternsteps against another collapses to the product of the means, ★integral_rect_trunc_mul_rect_trunc. Two Cauchy–Schwarz estimates (normSq_integral_mul_le) control the error terms, and ★★norm_integral_rect_iterate_mul_sub_leis the bound at lagsn ≥ 2; at lags0, 1the trivial bound1applies.
The results #
- ★★
abs_integral_rectIndR_iterate_mul_sub_le_env: for any two rectangles of arcs,|∫ 1_A(cat^n p) 1_B(p) − |A||B|| ≤ catRectEnv n, wherecatRectEnv n = 1forn < 2and4 / 2^{⌊(n−2)/3⌋}afterwards. This is the pair (mixing) statement. - ★★★
cat_hasCorrelationDecay_rectIndR: the corpus'sHasCorrelationDecayfor the indicator of any rectangle of arcs, with ★summable_catRectEnv(catRectEnv n ≤ 13 (4/5)^n).
Honest scope #
- Rectangles of arcs only, with a rate. Indicators of products of arcs, and by linearity their
finite combinations. The statement for a general
L²observable — convergence of the correlation with no rate — isCatMapStrongMixing.lean(★★★tendsto_integral_comp_cat_iterate_mul, by the density of trigonometric polynomials and anε/3argument); the rate is what this file adds, and it is for rectangles only. - The concrete matrix only, as in
CatMapWitness.lean:[[2,1],[1,1]]. The argument uses nothing about it beyondφ² = φ + 1and the invariant form, so a general hyperbolic element ofSL₂(ℤ)would go the same way with its own quadratic form; not attempted. - The constants are not sharp. The true rate is
φ^{-2n}up to polynomial factors; the cutoff4^{⌊(n−2)/3⌋}was chosen to keep the envelope's square root a natural number, and the trivial bound covers lags0and1. Nothing downstream is sensitive to this. - The arc indicator is read through the representative in
(0, 1], so its value at the two endpoints is a convention; everything here is insensitive to it.
References: Arnold–Avez, Ergodic Problems of Classical Mechanics (1968), §1.16; the Fourier
proof of mixing for hyperbolic toral automorphisms is standard (Katok–Hasselblatt, Introduction to
the Modern Theory of Dynamical Systems, §4.2). In-corpus: Mathlib/Dynamics/CatMapWitness.lean
(the map, the characters, the orthogonality), Mathlib/Dynamics/CorrelationDecay.lean (the
predicate and its consumers), specs/BACKLOG.md #118, specs/residues.tsv R-019.
Stage 1: the frequency orbit of catZ grows geometrically #
catZ (m, n) = (2m + n, m + n) is the transpose action of the cat map on character indices
(chi_cat). Its eigenvalues are φ² and φ⁻², with φ the golden ratio, and the integer
quadratic form m² − mn − n² is invariant and never vanishes on a nonzero integer vector (its
discriminant 5 is not a square, i.e. φ is irrational). The expanding component of a nonzero
integer vector is therefore bounded below by 1 / (φ² ‖v‖), and the orbit grows like φ^{2n}.
The linear form along the expanding eigendirection of catZ: scaled by φ².
Equations
- MeasureTheory.ellU v = ↑v.1 + (Real.goldenRatio - 1) * ↑v.2
Instances For
The linear form along the contracting eigendirection of catZ: scaled by φ⁻².
Equations
- MeasureTheory.ellS v = ↑v.1 - Real.goldenRatio * ↑v.2
Instances For
★ The frequency orbit grows geometrically. For a nonzero integer vector v,
φ^{2n} ≤ φ³ · ‖catZ^[n] v‖ · ‖v‖: the orbit cannot stay small, because the invariant form is a
nonzero integer and the expanding component is multiplied by φ² at every step.
The lag-dependent frequency cutoff #
3/2 < φ, since 2 < √5.
φ⁶ = 8φ + 5, so in particular 16 < φ⁶.
The frequency cutoff at lag n: a perfect square 4^{⌊(n−2)/3⌋}, chosen so that its square
stays below φ^{2n-3} (the orbit growth) for n ≥ 2, and so that its square root 2^{⌊(n−2)/3⌋}
is a natural number.
Equations
- MeasureTheory.catCutoff n = 4 ^ ((n - 2) / 3)
Instances For
R(n)² · φ³ < φ^{2n} for n ≥ 2: the cutoff is small enough for the orbit growth to beat
it.
★ Separation. For n ≥ 2, a nonzero frequency inside the cutoff box at lag n is
carried strictly outside it by catZ^[n]. This is the one fact the main-term computation uses.
Stage 2: arcs of the circle and their Fourier coefficients #
An arc is read through the representative in (0, 1]. Its Fourier coefficients are the usual
(e^{-2πinb} − e^{-2πina}) / (−2πin), of modulus at most 1/(π|n|).
The representative of a point of the unit circle in (0, 1].
Equations
- MeasureTheory.unitRep x = ↑((AddCircle.equivIoc 1 0) x)
Instances For
haarAddCircle on the unit circle is volume.
The indicator of the arc {x | unitRep x ∈ (a, b)}, as a complex observable.
Equations
- MeasureTheory.arcInd a b x = (Set.Ioo a b).indicator (fun (x : ℝ) => 1) (MeasureTheory.unitRep x)
Instances For
The zeroth coefficient of any integrable observable is its mean.
The mean of an arc is its length.
Stage 3: truncation, Parseval, and the tail of an arc's Fourier series #
trunc R u keeps the frequencies |n| ≤ R. Parseval (Mathlib's tsum_sq_fourierCoeff) turns the
L² error of the truncation into the tail ∑_{|n|>R} ‖û(n)‖², which for an arc is at most 1/R
by the coefficient bound of Stage 2 and ∑_{|n|>R} n⁻² ≤ 4/R.
The frequency box [-R, R].
Equations
- MeasureTheory.freqBox R = Finset.Icc (-↑R) ↑R
Instances For
The truncation of u to the frequencies |n| ≤ R.
Equations
- MeasureTheory.trunc R u x = ∑ n ∈ MeasureTheory.freqBox R, fourierCoeff u n * (fourier n) x
Instances For
The coefficients of the truncation: those of u inside the box, 0 outside.
The L² error of the truncation is the tail of the series.
Bessel: the truncation has no more energy than the observable.
The tail of ∑ n⁻² over |n| > R #
Stage 4: rectangles on the torus, and the main term #
A rectangle observable is a product u(x) v(y) of two circle observables. Its truncation at the
cutoff R is the product of the two truncations, a trigonometric polynomial supported on the
frequency box; under cat^[n] that box is carried off itself (Stage 1), so the integral of the
truncated product against another truncated rectangle collapses to the product of the means.
The truncation errors are controlled by Stage 3 through Cauchy–Schwarz.
A rectangle observable: the product of two circle observables.
Equations
- MeasureTheory.rect u v p = u p.1 * v p.2
Instances For
The truncation error of a rectangle of arcs #
The main term #
★ The main term. For n ≥ 2 the truncated rectangles at the cutoff catCutoff n have,
after n steps of the cat map, no frequency in common except 0, so the integral of their product
is the product of their means.
Stage 5: the correlation bound, and HasCorrelationDecay for rectangles #
Write f = T + D with T the truncation at the lag-dependent cutoff and D the error. Then
∫ f∘catⁿ · f' = ∫ T∘catⁿ · T' + ∫ T∘catⁿ · D' + ∫ D∘catⁿ · f': the first term is the product of
the means (Stage 4), and the other two are at most 2 / 2^{⌊(n−2)/3⌋} each by Cauchy–Schwarz and
the truncation error 4 / R.
a ≤ 1, 0 ≤ b ≤ 1 give a * b ≤ 1 (the deprecated mul_le_one_of_le_one, spelled out).
★★ Exponential decay of correlations for rectangles of arcs under the cat map, complex
form, at lags n ≥ 2.
The real form #
The real indicator of the arc (a, b).
Equations
- MeasureTheory.arcIndR a b x = (Set.Ioo a b).indicator (fun (x : ℝ) => 1) (MeasureTheory.unitRep x)
Instances For
The real indicator of the rectangle (a, b) × (c, d) of the torus.
Equations
- MeasureTheory.rectIndR a b c d p = MeasureTheory.arcIndR a b p.1 * MeasureTheory.arcIndR c d p.2
Instances For
★★ The real form at lags n ≥ 2.
Both integrals of a [0,1]-valued rectangle pair lie in [0, 1], so the trivial bound is 1.
★★ The pair correlation of two rectangles of arcs decays with the envelope catRectEnv.
The envelope is summable #
The envelope is dominated by the geometric sequence 13 · (4/5)^n.
★★★ A rectangle of arcs has exponentially decaying correlations under the cat map, in the
corpus's HasCorrelationDecay form.