Sumcheck
Last updated
Last updated
The sumcheck protocol is a cryptographic proof protocol designed to efficiently verify whether the sum of a polynomial over a specified domain equals a claimed value.
Given:
A multivariate polynomial
A finite domain , often a Boolean hypercube
A claimed sum
The goal is for the prover to convince the verifier that the claimed is correct, without the verifier evaluating on all elements (which would be computationally expensive).
Protocol Steps
The prover claims the equation below and sends this to the verifier.
The prover sends the univariate polynomial below, which reduces the problem from variables to .
The verifier checks the equation below and if this doesn't hold the verifier rejects.
The prover now claims:
The verifier checks:
This process continues iteratively, reducing the dimension at each step until reaching a single variable.
The prover now claims:
The verifier checks:
The verifier chooses a random and sends it to the prover.
The verifier chooses a random and sends it to the prover.
The verifier access to the oracle at random and checks:
Written by from