Sumcheck
Overview
The sumcheck protocol is a cryptographic proof protocol designed to efficiently prove and verify whether the sum of a multivariate polynomial over a specified domain equals a claimed value, given :
A multivariate polynomial
A finite domain for any
A claimed sum
or in short . We denote the true correct sum by .
Throughout this article, we assume that which is the case where the evaluation domain is a boolean hypercube. denotes the degree of in variable . We denote the prover and the verifier by and .
The goal is for to convince that the claimed , without having evaluate on all elements (which would be computationally expensive).
Protocol
In the first round, sends the univariate polynomial and claims it equals the following:
Note that if is honest.
checks if . If not, rejects.
checks if . If not, rejects.
chooses a random and sends it to . Both and set .
Now in the th round, for , sends the univariate polynomial and claims it equals the following:
Note that if is honest.
checks if . If not, rejects.
checks if . If not, rejects.
chooses a random and sends it to . Both and set .
This process continues iteratively, reducing the dimension at each step until reaching a single variable.
In round , sends to claiming it equals:
checks if . If not, rejects.
chooses a random and evaluates with a single oracle query to . checks that . If not, rejects.
Completeness
Let be the polynomial that would have sent in round if it were honest :
If and that provided in the first round is equal to and , respectively, then is equal to . checks if this holds, then randomly samples and sends it to . The only remaining part is merely a recursive invocation of another sumcheck protocol on where the claimed value is . At the bottom of the recursion, which is the last round of the protocol, passes the verification as . Thus, the sumcheck protocol has perfect completeness.
Soundness
What is the soundness error, that is, what is the probability that passes the protocol even though the first value given in the first step is wrong, i.e. ?
If the following occurs at any round of the protocol, can pass the verification even if the first claimed value is wrong:
For the challenge sampled by , luckily for the that had sent in the previous round.
Once the scenario outlined above occurs, can proceed onto the remaining rounds with a valid transcript to deceive . The soundness error is bounded by , which can be calculated by the Schwartz-Zippel lemma. In other words, can be convinced that if for a random sampled .
Cost

We denote the cost of evaluation oracle query to by . In reality, is equal to the cost to evaluate at a single input in .
Communication cost.
At each round, generates an univariate polynomial whose degree is at most . To uniquely satisfy such polynomial, needs to send evaluations on .
Prover cost.
The cost of computing such prescribed messages at each round is equal to evaluating at points. Letting the oracle query cost be and assuming , the prover's runtime cost at round is .
Verifier cost.
Also assuming , the total verifier cost is dominated by ; the cost of evaluating only once.
Combining with Fiat-Shamir transform, we have successfully reduced a complicated interactive proof into a simple evaluation task for . Unfortunately, in many real world problems, does not have access to a constant cost oracle query to , or even a single evaluation is prohibitively expensive.
The key part of sumcheck-based protocols is about how we will grant oracle access. There should be either a way can efficiently evaluate , or we should run another protocol for the value (refer to polynomial commitment scheme).
Example
#SAT
For a -variate boolean formula , whose size is , calculate
The fastest algorithm ever known to solve is exponential, which means it's not much better than brute-forcing it.
In addition to that, there is no polynomial time deterministic & non-interactive algorithm . This is because even if provides every valid input it knows as a witness, there is no way can check in polynomial time whether there are more valid inputs. .
However there exists an interactive proof for this, which enables to verify if the claimed value is correct within polynomial time. .
This implies that the interactive proof is more powerful than merely proving an NP statement. It is known that , where denotes the set of all problems that can be solved by Turing machines with polynomial space complexity.
Protocol
Transform into an arithmetic circuit . AND gate can be extended to , OR gate to , NOT gate to . Now extend circuit to a -variate polynomial , which means that .
Degree of is . Run the sumcheck protocol on .
References
Written by ryan Kim and Carson Lee from A41
Last updated