Documentation

CsdLean4.Mathlib.Dynamics.ShearReturns

What returns under a shear: the torsion circles #

Category: 1-Mathlib (CSD-free; staged for upstream). BACKLOG #181 (out of #19, #153, #177).

The t-th iterate of the horizontal shear (x, y) ↦ (x + y, y) is (x, y) ↦ (x + t·y, y), so a point returns after t strokes iff t·y = 0: the return set is the union of the t circles over the t-torsion points of the read coordinate, infinite at every stroke. So a shear fails the return criterion (#177) at every stroke, not merely at one — the finite clause never holds.

Honest scope #

References: Mathlib/Dynamics/CatMapShears.lean (#153, shearX, shearY, cat_eq_shearX_comp_shearY), Mathlib/Dynamics/ReturnCriterion.lean (#177); specs/BACKLOG.md #181, #19.

The iterates #

theorem MeasureTheory.shearX_iterate (t : ℕ) :
shearX^[t] = fun (p : Torus2) => (p.1 + t • p.2, p.2)
theorem MeasureTheory.shearY_iterate (t : ℕ) :
shearY^[t] = fun (p : Torus2) => (p.1, p.2 + t • p.1)

What returns: the torsion circles #

★★ A point returns under t horizontal shears iff its read coordinate is t-torsion.

★★ A point returns under t vertical shears iff its read coordinate is t-torsion.

The return sets are infinite at every stroke #

The circle {(x, 0)} lies in every return set of the horizontal shear.

The circle {(0, y)} lies in every return set of the vertical shear.

★★ A shear has no return growth: its finite clause fails at every stroke.