A tuple of permutations that expands #
The counting argument. Of the (n!)^30 tuples of thirty permutations of
Fin n, not all can fail to expand: a tuple fails at a vertex set S of at
most half the vertices exactly when every one of its thirty permutations keeps
all but a tenth of S inside S. PermCount bounds how many permutations do
that for a fixed S; PermArith.key_estimate turns the thirtieth power of that
bound into (n!)^30 / 2^{|S|}, with room to spare for the C(n,s) sets of each
size; and summing 2^{-s} over s ≥ 1 stays below one.
Everything is done with natural numbers — the geometric series appears as an
induction that carries the slack + K explicitly, so no division is needed.
Main definitions #
Complexity.escLE— the permutations keeping all buttpoints ofSinSComplexity.tOf— the escape a set of a given size is allowed
Main results #
Complexity.exists_good_perms— a tuple of thirty permutations for which every set of at most half the vertices is moved out of itself, by at least a tenth of it, by one of them
noncomputable def
Complexity.escLE
{n : ℕ}
(S : Finset (Fin n))
(t : ℕ)
:
Finset (Equiv.Perm (Fin n))
The permutations moving at most t points of S out of S.
Equations
- Complexity.escLE S t = {σ : Equiv.Perm (Fin n) | Complexity.escape σ S ≤ t}