Superquadratic sensitivity separation: recursive sets #
This file packages the sensitive coordinates of individual children as finite sets of raw
coordinates, so that the sensitivity of a next-level predicate can be bounded by the size of a union
of such sets. It also proves the joint version of the flip analysis: a flip that changes the clause
of row i at two indices changes its target condition, or changes both gate conditions on the same
labeled edge.
Main definitions #
childLift: the embedding of a setAof coordinates into the componentjofJ × I.childChanges: the raw coordinates of the child(j, c)whose flip changesF qon that child.childJointChanges: the raw coordinates of the child(j, c)whose flip changes bothF qandF q'on that child.
Main results #
childChanges_card:childChanges F q x j chas as many elements as the sensitivity ofF qat the child(j, c).childJointChanges_card:childJointChanges F q q' x j chas as many elements as the joint sensitivity ofF qandF q'at the child(j, c).card_biUnion_le_mul: a union ofA.cardsets of size at mostnhas at mostA.card * nelements.rowClause_joint_flip_change: a flip changing a row clause at two indices changes its target condition or both gate conditions on one labeled edge.
References #
Lift coordinates that simultaneously change two predicates in one child.
Instances For
The cardinality of childChanges F q x j c is sensitivityAt (F q) (recursiveChild x j c).
The cardinality of childJointChanges F q q' x j c is
jointSensitivityAt (F q) (F q') (recursiveChild x j c).
If flipping ((j, c), a) changes the clause of row i both at index q and at index q',
then either j = i and the flip changes the target value of the child at (j, c), or T.Adj i j,
c = label i j and the flip changes both gate values F (gateIndex q) and F (gateIndex q') of
that child.