The affine-plane expander #
Over a finite field K, join (a, b) to (c, a * c - b) for each label c. The reverse
label is a, so the rotation is an ordinary arithmetic expression. No graph search or choice
is used. This is the affine-plane construction of Reingold, Vadhan and Wigderson,
Section 5.1, with a different involutive edge labelling.
Its two-step walk is the uniform average plus 1 / |K| times the difference between a
function and its row average. Self-adjointness then bounds the spectral expansion by
sqrt (1 / |K|), without an eigenvalue calculation.
Main definitions #
Cslib.RotationMap.affinePlaneRot: the arithmetic rotation program.Cslib.RotationMap.affinePlane: a|K|-regular graph onK × K.
Main results #
Cslib.RotationMap.walk_affinePlane_twice: the exact two-step averaging law.Cslib.RotationMap.spectralExpansion_affinePlane_le: spectral expansion at mostsqrt (1 / |K|).
References #
The affine-plane graph: (a, b) is adjacent to (c, d) when a * c = b + d.
The edge to first coordinate c has label c, and its reverse has label a.
Instances For
Two affine-plane steps give the uniform mean plus the row-centered value divided by |K|.
The affine-plane graph has spectral expansion at most sqrt (1 / |K|).