Extracting exactly linear combined codewords #
Blueprint lem:lidt-ldc-extraction, the paper's Step 4 of the proof of lem:ld-soundness for
general ldc (ldt.tex, Claims 4 and 5 and the measurements H, G). The simultaneous test with
r codewords is reduced to the single-codeword test in K + m variables by combining: a point
(x, y) ∈ F^K × F^m is answered by ∑_{j < r} x_j b_j, where b ∈ F^r is the original point
answer at y. The single-codeword theorem then returns a measurement R of polynomials g in the
K + m variables, consistent with the combined point answers. This file turns R back into a
measurement of r-tuples of polynomials in the m original variables.
The extraction #
A polynomial g(x, y) is exactly x-linear (IsXLin) if it is ∑_i x_i g_i(y): every
monomial has exactly one x-variable, to the first power. extract reads off (g_1, …, g_r) from
such a g and returns 0 otherwise; it is a deterministic relabelling of outcomes, so applied to a
projective measurement it gives a projective measurement.
The estimate #
inconsistency_extract_right_le (and _left_le, the extracted measurement on the other
party): the extracted tuple, evaluated at a uniform y, disagrees with
the original point answer at most (K + m) d / q more often than g(x, y) disagrees with the
combined answer at a uniform (x, y). Fix y, the original answer b and the outcome g, and
average over x alone --- the Born probabilities do not see x, since the original point
measurement is asked y only and R is asked nothing:
- if
gis exactlyx-linear and its extracted tuple isbaty, there is nothing to prove; - if
gis exactlyx-linear and the tuple differs fromb, thenx ↦ g(x, y)and the combined answer are two different linear forms, so they agree at a uniformxwith probability at mostK d / q(pevY_eq_linPoly, then Schwartz--Zippel inKvariables,card_agree_le); - if
gis not exactlyx-linear, a monomial with a forbiddenx-part has a nonzero coefficientQ_g, a polynomial inyalone. WhereQ_g(y) ≠ 0the same Schwartz--Zippel step applies; andQ_g(y) = 0has probability at mostm d / qovery, which is paid once per outcomeg, weighted byg's total Born weight, because summing the Born probabilities overbremovesy(sum_agreeX_le,sum_uniform_badInd_le).
The paper splits the last case the same way (its Claims 4 and 5). The linear-forms case costs
K d / q here rather than the paper's 1 / q: the same Schwartz--Zippel lemma serves all three
cases, and the difference is absorbed by the final constants.
The partial evaluation #
pevY g y is the coefficient vector, in the K combining variables, of x ↦ g(x, y)
(eval_pevY). It is what lets Schwartz--Zippel in K variables be applied with y fixed.
Polynomials in the combining and original variables #
The partial evaluation at y: the coefficient vector, in the K combining variables, of
x ↦ g(x, y).
Equations
- MIPRE.LIDT.Simul.pevY g y ex = ∑ ey : Fin m → Fin (d + 1), g (Fin.append ex ey) * ∏ j : Fin m, y j ^ ↑(ey j)
Instances For
The linear form x ↦ ∑_i c_i x_i, as a coefficient vector.
Equations
- MIPRE.LIDT.Simul.linPoly hd c ex = ∑ i : Fin K, if ex = MIPRE.LIDT.Simul.unitExp hd i then c i else 0
Instances For
Exactly x-linear: every monomial with a nonzero coefficient has an x-part equal to a
single variable to the first power.
Equations
- MIPRE.LIDT.Simul.IsXLin hd g = ∀ (ex : Fin K → Fin (d + 1)) (ey : Fin m → Fin (d + 1)), (∀ (i : Fin K), ex ≠ MIPRE.LIDT.Simul.unitExp hd i) → g (Fin.append ex ey) = 0
Instances For
The coefficient of x_i, a polynomial in y.
Equations
- MIPRE.LIDT.Simul.xCoef hd g i ey = g (Fin.append (MIPRE.LIDT.Simul.unitExp hd i) ey)
Instances For
A forbidden coefficient. A polynomial that is not exactly x-linear has a monomial with a
forbidden x-part and a nonzero coefficient; that coefficient, as a polynomial in y, is
nonzero, and where it does not vanish the partial evaluation is no linear form.
The extraction: the first r coefficients of an exactly x-linear polynomial, and the
zero tuple otherwise.
Equations
- MIPRE.LIDT.Simul.extract hd hr g = if MIPRE.LIDT.Simul.IsXLin hd g then fun (j : Fin r) => MIPRE.LIDT.Simul.xCoef hd g (Fin.castLE hr j) else 0
Instances For
The extracted tuple, evaluated at y.
Equations
- MIPRE.LIDT.Simul.extEval hd hr g y j = (MIPRE.LIDT.Simul.extract hd hr g j).eval y
Instances For
The forbidden coefficient of a polynomial that is not exactly x-linear (0 for one that
is).
Equations
- MIPRE.LIDT.Simul.badQ hd g = if h : MIPRE.LIDT.Simul.IsXLin hd g then 0 else fun (ey : Fin m → Fin (d + 1)) => g (Fin.append ⋯.choose ey)
Instances For
Schwartz--Zippel at a fixed y #
Two different coefficient vectors in K variables agree at a uniform point with probability at
most K d / q.
The agreement, at a uniform x, of the combined answer with the outcome g evaluated at
(x, y), as a fraction.
Equations
- MIPRE.LIDT.Simul.agreeX hd g y b = ↑{x : MIPRE.LIDT.Point F K | (MIPRE.LIDT.Simul.linPoly hd (MIPRE.LIDT.Simul.padB b)).eval x = g.eval (Fin.append x y)}.card / ↑(Fintype.card F) ^ K
Instances For
The indicator that g is not exactly x-linear and its forbidden coefficient vanishes at
y.
Equations
- MIPRE.LIDT.Simul.badInd hd g y = if MIPRE.LIDT.Simul.IsXLin hd g then 0 else if (MIPRE.LIDT.Simul.badQ hd g).eval y = 0 then 1 else 0
Instances For
The pointwise bound. At a fixed y, answer b and outcome g, the combined answer and
g(·, y) agree at a uniform x with probability at most: one if the extracted tuple is b; one
if g is not exactly x-linear and its forbidden coefficient vanishes at y; and K d / q
otherwise.
The forbidden coefficient vanishes at a uniform y with probability at most m d / q.
The weighted bound. For nonnegative weights β y b g whose sum over the answer b does
not depend on y and totals one over the outcomes, the average agreement of the combined answer
exceeds the average agreement of the extracted tuple by at most (K + m) d / q.
The operator form #
inconsistency is one minus the average agreement, for POVMs on a unit vector and a
probability distribution on the questions.
Relabelling the second family: ∑_c ⟨P_c ⊗ (N.map f)_c⟩ = ∑_a ⟨P_{f a} ⊗ N_a⟩.
Relabelling the first family.
The combining coordinates of a padded point.
Equations
- MIPRE.LIDT.Simul.xOf u i = u (Fin.castAdd m i)
Instances For
The original coordinates of a padded point.
Equations
- MIPRE.LIDT.Simul.yOf u j = u (Fin.natAdd K j)
Instances For
The average of an indicator over a uniform x, as agreeX.
The extraction bound, the extracted measurement on the second party.
The extraction bound, the extracted measurement on the first party.
The extracted measurements, and the three conclusions #
Data processing for inconsistency: relabelling both families' outcomes the same way can
only decrease the disagreement.
A projective measurement's matrices form a projective family.
The extracted measurement: R coarse-grained by extract, still projective.
Equations
- MIPRE.LIDT.Simul.extractPM hd hr R = MIPRE.ProjectiveMeasurement.ofIsPVM (fun (x : Unit) => MIPRE.POVM.map (MIPRE.LIDT.Simul.extract hd hr) (R.toPOVM ())) ⋯
Instances For
A measurement of r-tuples of polynomials, evaluated at y.
Equations
- MIPRE.LIDT.Simul.evalTuplePOVM G y = MIPRE.POVM.map (fun (g : Fin r → MIPRE.LIDT.LowIndDegPoly) (j : Fin r) => (g j).eval y) (G.toPOVM ())
Instances For
The combined point measurement: at the padded point (x, y), measure the original point
measurement at y and answer ∑_{j < r} x_j b_j.
Equations
- MIPRE.LIDT.Simul.combPOVM hd A u = MIPRE.POVM.map (fun (b : Fin r → F) => (MIPRE.LIDT.Simul.linPoly hd (MIPRE.LIDT.Simul.padB b)).eval (MIPRE.LIDT.Simul.xOf u)) (A (MIPRE.LIDT.Simul.yOf u))
Instances For
From the single-codeword conclusions to the simultaneous ones (the paper's Step 4). If the
two players' measurements RA, RB of polynomials in the K + m variables satisfy the three
conclusions of the single-codeword theorem against the combined point measurements, with error
δ, then their extractions satisfy the three conclusions of the simultaneous theorem against the
original point measurements, with error δ + (K + m) d / q for the two point conclusions and δ
for the full-tuple one.