The auxiliary answers, read off the padded layout #
In the padded layout of the tailored introspection verifier (MIPRE.Tailored.Intro.enc) an
auxiliary answer is a list of windows: the register y at 0; at Introspect and Sample the
input's readable answer bits at Q and its linear ones at Q + R; at Read the same readable
bits at Q, the dual y' at Q + R and the linear bits at 2Q + R; at Hide the dual y' at
Q and the tail x at 2Q. This file reads the parsed answer of the introspection verifier's
kernel off those windows (parsed), and writes the comparisons of its auxiliary checks between
two such answers as linear constraints:
srcEqCons,srcEqCons_iff: two input answers are equal: their splits and readable bits agree (a readable condition) and their linear bits agree (bit by bit);regEqCons_iff: two registers in windows are equal;sampleCons,readCons,hideReadCons,hideNextCons,sourceCons: the clauses of the directed checks (AuxiliaryQuotient.directed), each with its_iff;sameCons: consistency of two answers at one label;swapCon: a constraint on(b, a)as one on(a, b), for the other orientation;auxPair,auxPair_iff: all of it at an ordered pair of auxiliary labels, with a readable conditionGon each register: the constraints hold exactly whenGholds at both registers, the parsed answers agree when the labels do, and the directed checks accept both ways.
The input's split of its answer at a register, sR and sL, and the source game's constraints
are parameters, as are lists of generators of the kernels of the hiding stages' linear maps
(KerGens); the instance supplies them.
Windows #
The window of length m at offset o.
Equations
- MIPRE.Tailored.Intro.win a o m = List.take m (List.drop o a)
Instances For
A window inside a prefix is the window of the whole.
The register in the window of length Q at offset o.
Equations
- MIPRE.Tailored.Intro.reg Q a o = MIPRE.CL.ofBits Q (MIPRE.Tailored.Intro.win a o Q)
Instances For
Equality of two windows of the two answers #
Two registers in windows are equal exactly when the window constraints hold.
The constraints that two input answers are equal: the splits and the readable bits agree,
a readable condition, and the linear bits agree bit by bit. The readable bits are windows of the
readable parts aR, bR; the linear bits windows of the answers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The input-answer equality constraints, read: with the readable windows inside the readable parts, they hold exactly when the splits agree and the two input answers, the readable window followed by the linear window, are equal.
The parsed auxiliary answer #
The number of readable bits of an auxiliary label.
Equations
- MIPRE.Tailored.Intro.auxLenR Q R (MIPRE.Introspection.AuxType.hide k) = Q
- MIPRE.Tailored.Intro.auxLenR Q R x✝ = Q + R
Instances For
The number of bits of an auxiliary label.
Equations
- MIPRE.Tailored.Intro.auxLen Q R MIPRE.Introspection.AuxType.introspect = Q + 2 * R
- MIPRE.Tailored.Intro.auxLen Q R MIPRE.Introspection.AuxType.sample = Q + 2 * R
- MIPRE.Tailored.Intro.auxLen Q R MIPRE.Introspection.AuxType.read = 2 * Q + 2 * R
- MIPRE.Tailored.Intro.auxLen Q R (MIPRE.Introspection.AuxType.hide k) = 3 * Q
Instances For
The offset of the input's linear answer bits.
Equations
- MIPRE.Tailored.Intro.srcOffL Q R MIPRE.Introspection.AuxType.read = 2 * Q + R
- MIPRE.Tailored.Intro.srcOffL Q R x✝ = Q + R
Instances For
The input's answer carried by an auxiliary answer: the readable window at Q and the linear
window at srcOffL, of the lengths the input gives at the register y.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The kernel's parsed answer read off the windows of an auxiliary answer.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The readable condition on one auxiliary answer: the input's answer fits the original cutoff.
Equations
- MIPRE.Tailored.Intro.srcFits R sR sL t y = match t.1 with | MIPRE.Introspection.AuxType.hide k => True | x => sR t y + sL t y ≤ R
Instances For
The comparisons of the auxiliary checks #
The sampling comparison between Introspect w (a) and Sample w (b): y = L_w(z), a
readable condition, and equal input answers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The reading comparison between Introspect w (a) and Read w (b): equal registers, a
readable condition, and equal input answers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The comparison between the last Hide w (a) and Read w (b): equal prefixes of the
registers, a readable condition, and equal duals.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The comparison between Hide level k + 1 (a) and the next level (b), both w: equal
prefixes, a readable condition; the duals equal on the prefix register of b, the tails equal
off the next one; and the dual readout of b at its stage equal at b's dual and a's tail.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The sampling comparison as constraints. The input's split at a Sample answer is that
at the Introspect answer of the register it samples (hsplit).
The reading comparison as constraints. The input's split at a Read answer is that at
an Introspect answer of the same register (hsplit).
The comparison of the last Hide with Read as constraints.
The comparison of consecutive Hide levels as constraints.
Consistency at one label #
The comparison of two answers at the same auxiliary label: equal registers, a readable condition, and equal duals, tails and input answers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Consistency at one label as constraints: they hold exactly when the parsed answers are equal.
The source game #
The source game's constraints at the edge (Introspect false, Introspect true): the
input's constraints srcCons at the two registers and the two readable input answers,
re-indexed onto the windows of the two Introspect answers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The source game's constraints: when the source predicate D accepts exactly the input
answers of the input's lengths satisfying the input's constraints (hD), the re-indexed
constraints hold exactly when D accepts the two parsed Introspect answers.
The other orientation #
A constraint on (b, a), with b of length lb and a of length la, as one on
(a, b).
Equations
Instances For
A swapped constraint holds of (a, b) exactly when the constraint holds of (b, a).
One orientation of the directed checks between auxiliary answers #
The constraints of one orientation of the directed auxiliary checks, on an ordered pair of
auxiliary labels: those of AuxiliaryQuotient.directed's clause for the pair, none when it has
none.
Equations
- One or more equations did not get rendered due to their size.
- MIPRE.Tailored.Intro.dirAux Q R sR sL L kg srcCons x✝³ x✝² x✝¹ x✝ = []
Instances For
One orientation of the directed auxiliary checks as constraints.
A pair of auxiliary answers #
The constraints at an ordered pair of auxiliary labels: when a readable condition G holds
at both registers, consistency when the labels agree and the directed checks in both
orientations; otherwise the rejecting constraint alone (the checks' data need not be computable
off G).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The constraints at a pair of auxiliary labels: they hold exactly when the readable condition holds at both registers, the parsed answers agree when the labels do, and the directed checks accept in both orientations.