Rectangles and rectangle-free sets #
An input is a function x : ι → U from a type of coordinates to an alphabet. A set of
coordinates X cuts an input into two parts: its restriction to X and its restriction
to the complement X^c. The rectangle with sides A and B is the set of inputs whose
part on X lies in A and whose part on X^c lies in B.
A set of inputs S is K-rectangle-free when every rectangle inside S, for every way of
cutting the coordinates, has a side with fewer than K elements. This is the only property of
the hard function that the lower bound uses.
The support lemma RectangleFree.pow_ncard_compl_lt is the only other fact we need about
such sets: a large rectangle-free set depends on all but fewer than log_|U| K coordinates.
Indeed, if S ignored a set D of log_|U| K coordinates, then S would contain the
rectangle whose side on D is everything, so its other side, and hence S, would be small.
Main definitions #
Frontier.rectangle X A B: the rectangle with sidesAonXandBonX^c.Frontier.RectangleFree S K: every rectangle insideShas a side with fewer thanKelements.
Main results #
Frontier.RectangleFree.ncard_le_of_dependsOn: a rectangle-free set that ignores the coordinates inD, withK ≤ |U| ^ |D|, has at most|U| ^ |D| * (K - 1)elements.Frontier.RectangleFree.pow_ncard_compl_lt: the support lemma.
The rectangle with sides A and B for the cut X: the inputs whose part on X lies
in A and whose part on the complement X^c lies in B.
Equations
- Complexity.Frontier.rectangle X A B = {x : ι → U | X.domRestrict x ∈ A ∧ Xᶜ.domRestrict x ∈ B}
Instances For
A set of inputs S is K-rectangle-free when every rectangle contained in S, for
every cut of the coordinates, has a side with fewer than K elements.
Equations
Instances For
An input is determined by its two parts.
Splitting an input into its two parts is injective.
A rectangle-free set that does not depend on the coordinates in D is small: if D alone
carries at least K assignments, then S has at most |U| ^ |D| * (K - 1) elements.
The rectangle whose side on D is every assignment and whose side on D^c is the set of
D^c-parts of S lies inside S. Its first side is large, so its second side is small.
The support lemma. A rectangle-free set with at least |U| * K ^ 2 elements depends on
all but fewer than log_|U| K coordinates: if S depends only on the coordinates in R,
then |U| ^ |R^c| < K.