The padded game adapter #
Blueprint lem:lidt-ldc-adapter, the paper's Steps 1--2 and Claims 1--3 of the general-ldc
proof of lem:ld-soundness (ldt.tex). A strategy for the seeded test with r codewords in
m variables is played as a strategy for the seeded test with one codeword in K + m variables:
a combined point (x, y) is answered by ∑_{j<r} x_j b_j from the original point answer b at
y, and a combined line by the matching polynomial built from the original line answer.
The seed choice, and how it differs from the paper's #
Each combined question is sent to an original question. The only freedom is the original seed,
and the paper draws it independently for each player, diagonal seeds from a law proportional to
q^{j-1}; the independence then has to be paid for on the two same-type line subtests, by a
chain of three consistency links and a d / q term.
Here both players share one seed offset σ, and the original seed's block is determined by the
combined seed's block i as j = max(i - K, 0). Then every simulated question pair is the
image of a single original sample: sampleMap sends the combined sample (u, s, v) to the
original sample (y-part of u, seedOf j σ, y-part of v), with types collapsed to point where
the combined line does not move the original coordinates (qmap_question). Acceptance transfers
subtest by subtest --- the same-type line subtests to the original equality subtest --- and the
push-forward bound is a count of the fibres of sampleMap.
The decider on a sample #
accepts_sample_imp and accepts_sample_of characterize the seeded test's decider on the two
questions of one sample: formats, then equality for equal types, nothing for the two cross
pairs, and otherwise equality of the two answers' values at the sample's point (valAt). Both
games are instances, and the transfer is checked on values.
The decider on the two questions of a sample #
The value of an answer at a point: a point answer itself, a line answer evaluated at the parameter of the point on the question's line. This is what the decider compares in the line-versus-point subtests.
Equations
- MIPRE.LIDT.Simul.valAt hm x u (MIPRE.LIDT.CL.Answer.values a) = a
- MIPRE.LIDT.Simul.valAt hm x u (MIPRE.LIDT.CL.Answer.apolys f) = fun (j : Fin ldc) => (f j).eval (MIPRE.LIDT.CL.lineParam x.base (MIPRE.LIDT.CL.Question.dir hm x) u)
- MIPRE.LIDT.Simul.valAt hm x u (MIPRE.LIDT.CL.Answer.dpolys f) = fun (j : Fin ldc) => (f j).eval (MIPRE.LIDT.CL.lineParam x.base (MIPRE.LIDT.CL.Question.dir hm x) u)
Instances For
The two cross type pairs, on which the decider checks nothing but the formats.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
The relation the decider checks on the answers to a sample's two questions, once the formats are right.
Equations
- One or more equations did not get rendered due to their size.
Instances For
What an accepted pair of answers satisfies, on the two questions of a sample.
When a pair of answers is accepted, on the two questions of a sample.
Lines through a sample's point #
A point, its canonical base point and its parameter: u = rep w u + (lineParam …) • w,
whether or not w vanishes.
The shift from a point to the canonical base point of the line through it.
Equations
Instances For
The parameter of a point on a rebased line. If y = y₀ + t w then the parameter of y on
the line through y₀ with base point rep w y₀ is t plus the shift of y₀.
The combining and original blocks #
The question map and the sample map #
The original seed block of a combined seed.
Equations
- MIPRE.LIDT.Simul.jOf hM s = MIPRE.LIDT.Simul.jIdx (MIPRE.LIDT.CL.chi hM s)
Instances For
The type map: an axis-parallel line along a combining coordinate, and a diagonal line whose original part is constant, become point questions.
Equations
- MIPRE.LIDT.Simul.tyMap i wy MIPRE.LIDT.CL.Ty.point = MIPRE.LIDT.CL.Ty.point
- MIPRE.LIDT.Simul.tyMap i wy MIPRE.LIDT.CL.Ty.aline = if K ≤ ↑i then MIPRE.LIDT.CL.Ty.aline else MIPRE.LIDT.CL.Ty.point
- MIPRE.LIDT.Simul.tyMap i wy MIPRE.LIDT.CL.Ty.dline = if wy = 0 then MIPRE.LIDT.CL.Ty.point else MIPRE.LIDT.CL.Ty.dline
Instances For
The question map, with the shared seed offset σ.
Equations
- One or more equations did not get rendered due to their size.
- MIPRE.LIDT.Simul.qmap hm hM σ (MIPRE.LIDT.CL.Question.point u) = MIPRE.LIDT.CL.Question.point (MIPRE.LIDT.Simul.yOf u)
Instances For
The original part of a combined sample's diagonal direction.
Equations
- MIPRE.LIDT.Simul.wyOf hM sm = MIPRE.LIDT.Simul.yOf (MIPRE.LIDT.CL.zeroBelow (MIPRE.LIDT.CL.chi hM sm.s) sm.v)
Instances For
The sample map: one original sample for the whole combined sample.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Every simulated question is the mapped sample's question.
The answer map #
The first r combining coordinates.
Equations
- MIPRE.LIDT.Simul.xr hr x k = x (Fin.castLE hr k)
Instances For
The combined point answer ∑_{k<r} x_k b_k.
Equations
- MIPRE.LIDT.Simul.linEval hr b x = ∑ k : Fin r, MIPRE.LIDT.Simul.xr hr x k * b k
Instances For
The affine-in-t combination ∑_k (α_k + β_k t) P_k(t + c).
Equations
- MIPRE.LIDT.Simul.affPoly α β c P = ∑ k : Fin r, (Polynomial.C (α k) + Polynomial.C (β k) * Polynomial.X) * (P k).comp (Polynomial.X + Polynomial.C c)
Instances For
The coordinates of a point answer; 0 for the wrong format.
Equations
Instances For
The r polynomials an answer carries: constants for a point answer.
Equations
- MIPRE.LIDT.Simul.polysOf (MIPRE.LIDT.CL.Answer.values b) = fun (k : Fin r) => Polynomial.C (b k)
- MIPRE.LIDT.Simul.polysOf (MIPRE.LIDT.CL.Answer.apolys g) = fun (k : Fin r) => MIPRE.LIDT.Adapter.toPoly (g k)
- MIPRE.LIDT.Simul.polysOf (MIPRE.LIDT.CL.Answer.dpolys g) = fun (k : Fin r) => MIPRE.LIDT.Adapter.toPoly (g k)
Instances For
The combined line answer on the line through u₀ in direction w: at the parameter t,
the combined point answer at u₀ + t w.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The answer map.
Equations
- One or more equations did not get rendered due to their size.
- MIPRE.LIDT.Simul.rmap hM hr (MIPRE.LIDT.CL.Question.dline u₀ s w) x✝ = MIPRE.LIDT.CL.Answer.dpolys fun (x : Fin 1) => MIPRE.LIDT.Adapter.ofPoly (MIPRE.LIDT.Simul.lineAns hr u₀ w x✝)
Instances For
Values transfer #
A point on a line is the base point moved by its parameter.
The value transfer. On a point u of a combined question's line, the combined answer's
value is the combined point answer ∑_{k<r} x_k b_k, with b the original answer's value at the
original part of u.
Acceptance transfer #
The sample's point lies on each of its questions' lines.
Acceptance transfers from the mapped original sample to the combined sample.
The acceptance hypothesis of exists_one_sub_value_adapt_le, for the padded adapter.
The fibre count #
A seed block of the original test collects at most K + 1 blocks of the combined test.
The fibres of the sample map, over the seed offset and the combined sample, have at most
9 (K + 1) (q / (K + m)) q^{2K} elements: the types have three preimages each, the combining
coordinates of the point and the direction are free, the combined seed ranges over K + 1
blocks, and the offset is then determined.
The mass the seeded test puts on the fibre of a pair of question maps.
The push-forward bound of the padded adapter, averaged over the seed offset, with
C = 9 (K + 1).
The padded strategy #
The point measurements of player A in a strategy for the seeded test with r codewords, as
POVMs with outcomes in F^r; answers of the wrong format are read as 0.
Equations
Instances For
The point measurements of player B, as for tuplePOVMA.
Equations
Instances For
The padded strategy for the seeded test with one codeword in K + m variables.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The padded adapter loses a factor 9 (K + 1) (blueprint lem:lidt-ldc-adapter): some
seed offset makes the padded strategy fail at most 9 (K + 1) times as often as S.
The padded strategy's point measurements are the combined ones: at the padded point
(x, y), measure the original point measurement at y and answer ∑_{k<r} x_k b_k.
The same for player B.