The first moment of Dinur's powering step #
Counting, for a fixed faulty dart of R and a fixed crossing position, the
killed-power constraints that the dart breaks — those whose walk crosses it and
whose two ends both hold the decoded opinion about the dart's endpoints.
WalkSplit.card_label_crossing already counts such labels as
(prefix count) * (suffix count) * (fibre weight), for arbitrary conditions
on the two pieces. Here the conditions are the ones the powered constraint
actually reads, and then each count is by definition a truthCount — the
quantity KilledPlurality.card_le_mul_sum_truthCount bounds from below.
That is the whole point of the killed walk law: the prefix and suffix conditions concern different vertices and independent lengths, so summing over both positions multiplies two plurality bounds instead of entangling them.
Main results #
RegCSP.opinionOf_eq_startIdx,RegCSP.opinionOf_eq_endIdx— the counted conditions are the constraint's own two termsRegCSP.card_good_crossing— the count, as a product of twotruthCounts and the fibre weightRegCSP.not_satisfies_of_good_crossing— every counted crossing breaks its constraintweight_factor— the crossing weight is the product of the two plurality weights, up to a fixed normalisersum_crossing_factor,sum_goodCount_factor— hence the double sum over positions is a product of two weighted sumsgeom_tail_le,RegCSP.truthCount_le— the discarded positions carry geometrically little weightRegCSP.card_le_mul_sum_truthCount_half— plurality survives the restriction to half the rangeRegCSP.card_good_crossing_sq— the count indexed by the two lengthsRegCSP.halfSum,pluralityLoss,RegCSP.per_dart_lower— the first moment for a single dart ofRRegCSP.sum_dart_lower— summed over all the failed dartsRegCSP.goodCrossings,RegCSP.mem_unsatDarts_of_goodCrossings_nonempty— the count the second-moment method uses, and its support conditionRegCSP.sum_sq_goodCrossings— its second moment, as a sum over pairsRegCSP.goodPos,RegCSP.card_pairs_goodPos— the same positions indexed by naturals, so summation order can be exchangedRegCSP.sum_card_pairs_eq— that exchange, carried outRegCSP.card_both_good_le— two good crossings imply two failed crossings of the underlying walkRegCSP.sum_pairs_bound— the second moment's pair term, boundedRegCSP.sum_sq_goodCrossings_le— the second moment of the crossing countRegCSP.sum_card_goodPos_eq— the first moment, with counting exchangedRegCSP.sum_over_len_le— summing over effective lengths stays within the constraints good at a positionRegCSP.mem_goodPos_of_crossing— a counted crossing of a failed dart is a good positionRegCSP.crossingSet,RegCSP.sum_crossingSet_le— the counted sets, and that different darts contribute disjointlyRegCSP.sum_len_pos_le,RegCSP.sum_Cd_le_sum_goodCrossings— the first moment is bounded by the total crossing countRegCSP.crossCount,RegCSP.sum_goodCrossings_ge— the first moment in closed formRegCSP.card_unsatDarts_ge— the second-moment bound on unsatisfied constraintsRegCSP.powering_soundness— soundness of the killed powering stepRegCSP.unsatFrac_killedPow_ge,RegCSP.le_unsatVal_killedPow— the same bound on the unsatisfied fraction, and on the value
The weights factorise. The fibre weight of a walk of length i + j + 1
is, up to the fixed normaliser deg ^ (T+1) * q ^ T, the product of the weights
of lengths i and j times q - 1.
This identity is why the first moment splits: summing a product
truthCount a i * truthCount b j against the crossing weight is the same as
multiplying two sums each weighted exactly as the plurality bound weights them.
Geometric weights are what make this work, and geometric weights are what the
killed walk law produces.
The double sum factorises. Over a square of positions small enough that
i + j + 1 never reaches the truncation T, the crossing sum is — up to the
normaliser — (q-1) times the product of the two weighted sums that the
plurality bound controls.
Restricting to a square rather than the full triangle i + j + 1 < T is what
makes this an identity: the triangle is not a product region. The tail thrown
away is geometrically small.
The geometric tail. The weights decay geometrically, so the positions
beyond k carry at most (q-1)^k * q^(T-k) — a ((q-1)/q)^k fraction of the
total. This is what makes both the truncation term and the restriction to a
square of positions harmless.
sum_crossing_factor in the form callers can use: the counts are supplied
as an abstract function C, since the concrete count at position (i, j) is a
Finset.card whose very statement needs i + j + 1 < T, a fact only available
pointwise inside the sum.
The prefix condition counted above is exactly the constraint's own
startIdx term: the opinion v holds about the walk's i-th vertex.
The suffix condition counted above is exactly the constraint's own endIdx
term: the opinion the walk's far end holds about the (i+1)-st vertex.
The crossing count with the constraint's own conditions. For a dart
(a, d) of R and a crossing position i inside an effective length ℓ, the
killed-power constraints crossing (a, d) at i with truthful opinions at both
ends number truthCount a i * truthCount (nbr a d) (ℓ - (i+1)) times the fibre
weight.
Every counted crossing breaks its constraint #
The counted darts really are unsatisfied. A killed walk crossing a dart
that the decoded assignment fails, with both ends holding the decoded opinion
about that dart's two vertices, breaks its own constraint. The two hypotheses
are exactly the conditions card_good_crossing counts, turned into the
constraint's startIdx / endIdx terms by the two identification lemmas.
A walk count never exceeds the number of walks.
Plurality on half the range. Restricting the weighted sum to positions
at most H costs only the geometric tail, so the plurality bound survives the
restriction to a square of positions that sum_crossing_factor needs.
The crossing count indexed by the two lengths rather than by length and
position — the form sum_goodCount_factor consumes.
The per-dart bound #
The weighted count of truthful walks out of v, over positions at most
H.
Equations
Instances For
What plurality pays for truncation: the walks that never stop, and those
that stop after position H. Both are geometrically small next to
deg ^ T * q ^ T.
Equations
Instances For
The per-dart first moment. For one dart of R, the killed-power
constraints crossing it with truthful opinions at both ends number at least
(q-1) · (X - |α|·loss)² / (|α|² · normaliser),
with X = deg^T · q^T. The two plurality bounds multiply because the crossing
sum factorises — the payoff of the killed walk law.
The first moment, summed over the failed darts. Every dart of R that
the decoded assignment fails contributes its own crossings, and for a given
killed walk and position the dart crossed there is determined, so the
contributions never overlap.
The crossing count of a single constraint #
The steps at which a killed walk crosses a dart the decoded assignment fails, with truthful opinions at both ends. Its cardinality is the count the second-moment method is applied to.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The support condition. A constraint with any good crossing is unsatisfied, so the second-moment method's support sits inside the unsatisfied darts.
The second moment, in terms of pairs of crossings. Squaring the count of good crossings and summing turns into the count itself plus twice the ordered pairs — and pairs of crossings are what the correlation bound estimates.
Positions as naturals #
The good crossing positions of a constraint, as naturals. The Fin version
carries the constraint's own length in its type, which blocks the exchange of
summation order the second moment needs; this one does not.
Equations
- R.goodPos q T hq A z = Finset.image Fin.val (R.goodCrossings q T hq A z)
Instances For
Counting ordered pairs of positions is the same in either indexing.
Exchanging the order of counting. The pairs of good crossings, summed over the constraints, are the same as the constraints with two good crossings, summed over the pairs of positions. The right-hand side is the form the correlation bound estimates.
Dropping to the underlying walk. Constraints with good crossings at two
positions are, after forgetting the truthfulness conditions and the stopping
signals, walks that cross a failed dart at both positions. Forgetting the
signals costs the factor q ^ T; both omissions only weaken an upper bound.
The second moment's pair term, bounded. Chaining the drop to underlying walks, the two-crossing identity and the correlation bound.
The second moment of the crossing count. Everything above, assembled: the sum of squares is the sum plus twice a pair term, and the pair term is controlled by the spectral gap.
The first moment, with the order of counting exchanged: summing the good crossings over the constraints is the same as counting, for each position, the constraints good there.
Constraints of different effective lengths are different constraints, so
summing over the suffix length j at a fixed crossing position stays within the
constraints good at that position.
From a counted crossing to a good position. A constraint counted by
card_good_crossing_sq, whose crossed dart the decoded assignment fails, is good
at that position. The two descriptions differ only in how the walk's length is
named — i + j + 1 on one side, kLen on the other — which walkAt_preWalk
and opinionOf_congr reconcile without any transport.
The constraints counted by card_good_crossing_sq, packaged.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The crossings of different darts do not overlap. At a fixed position the dart a walk crosses is determined, so summing over the failed darts stays within the constraints good at that position.
Summed over both lengths, the constraints good at a position never exceed the total crossing count.
The first moment, bounded by the crossing count. The counts summed by
sum_dart_lower never exceed the total number of good crossings.
Powering soundness #
The second-moment bound on unsatisfied constraints. Given a lower bound
on the first moment of the crossing count and an upper bound on its second
moment, at least Alb ^ 2 / Bub of the powered constraints are unsatisfied.
The crossing count as a total function of the two lengths, so that it can be summed without carrying the side conditions.
Equations
- R.crossCount q T hq A p i j = if h : i + j + 1 < T then (R.crossingSet q T hq A p.1 p.2 h ⋯ ⋯).card else 0
Instances For
The first moment, in closed form. Combining the per-dart bound with the fact that the counted crossings are good crossings.
Soundness of the killed powering step. Combining the first moment
(sum_goodCrossings_ge) with the second (sum_sq_goodCrossings_le) through
Paley–Zygmund: a constant fraction of the powered constraints fail, the constant
being the ratio of the squared first moment to the second.
The first moment is proportional to the number of darts the decoded assignment fails, so this is the amplification: the powered system's value is bounded below in terms of the original's.
A lower bound on the unsatisfied constraints becomes one on the unsatisfied
fraction, which is what unsatVal and the amplification bookkeeping use.