The Univariate Skip
We now describe our univariate skip variant. We focus here on the overall protocol steps, and on the verifier's perspective. We defer the details of the prover's implementation to the page after this one.
By the definition of AND constraint satisfaction, the prover's AND constraints hold if and only if
holds for each . Here, , and are the constraint arrays associated with the prover's AND constraints.
Whatever these arrays are, we can oblong-multilinearize them. In this way, we get oblong-multilinears , and whose respective tables of values on are the constraint arrays , and .
Having done this, we can say that prover's AND constraints hold if and only if
holds for each and each . Our goal here will be to reduce the satisfaction of this condition to a further one, involving evaluation claims on the oblong-multilinearizations , and . It will be the job of the shift reduction to assess those latter claims (and in particular, to connect them to the witness).
Protocol Description
For notation's sake, we write
Our goal is now to show that vanishes identically on ; more precisely, our goal is to reduce the question of this vanishing to evaluation claims on , and . Note that is multivariate in variables; it is not oblong-multilinear.
We now describe the protocol explicitly. Later, we explain soundness and implementation considerations.
- the verifier samples a partial challenge , as usual in the deterministic zerocheck variant. the verifier sends to the prover.
- the parties both define where the elements , , and of are the fixed deterministic challenges we've already explained.
- the univariate polynomial is univariate, of degree at most , and vanishes on if the prover is honest. The prover sends this polynomial, by sending its values on at least points outside of (we will be more precise about this later).
- the verifier checks that vanishes identically on .
- the verifier samples a single challenge and sends it to the prover.
- both parties write , and run an -round sumcheck on the claim
- at the end, the verifier needs to evaluate where and are values that arise during the sumcheck. The verifier can evaluate himself; he outputs the final evaluation claim on .
Completeness and Soundness
If the prover is honest—i.e., if for each and each , and if the prover carries out the above protocol as prescribed—then he will pass. First off, 's vanishing on implies 's vanishing on . Moreover, if the prover computes as prescribed, then
will hold, by definition of ; this is exactly the claim that the parties will sumcheck.
If the prover is dishonest, then there exists an for which the set of bits is not identically zero.
By the soundness analysis of the partially-deterministic zerocheck, the chance, over the verifier's choice of , that
holds is at most . Assuming that this doesn't happen, we conclude that
here, we write
for the univariate polynomial that the prover should send in the first round.
In light of the verifier's check that is identically zero, the inequality above implies that the prover can pass that check only by sending a round polynomial unequal to (as polynomials).
By standard univariate Schwartz–Zippel, the probability, over the verifier's , that is thus at most . If that equality doesn't happen, then the parties' sumcheck claim
will be false, which proves soundness.
The End
At the very end of the -round sumcheck, the verifier will need to evaluate
here, and are further quantities that will arise during the sumcheck. In the second equality, we unroll the definition of , using our definition of above.
The verifier can locally evaluate . At this point, the prover can nondeterministically send the verifier scalars , and which it claims satisfy:
Then the verifier can explicitly check whether
If this equality passes, then the verifier will have closed out the univariate skip, pending the correctness of the prover's three evaluation claims. These are exactly the kind of claims that the shift reduction is designed to evaluate.