Expand description
The multivariate sumcheck and zerocheck polynomial protocols.
Sumcheck supports an efficient prover algorithm when the virtual polynomial is a multilinear composite, so this module only handles that case, rather than the case of general multivariate polynomials.
Re-exports§
pub use prove::batch_prove;
pub use univariate_zerocheck::batch_verify_zerocheck_univariate_round;
pub use verify::batch_verify;
pub use verify::batch_verify_with_start;
pub use zerocheck::ZerocheckClaim;
Modules§
Structs§
- Batch
Sumcheck Output - Composite
SumClaim - A claim about the sum of the values of a multilinear composite polynomial over the boolean hypercube.
- Oracle
Claim Meta - Proof
- A sumcheck batch proof.
- Round
Coeffs - A univariate polynomial in monomial basis.
- Round
Proof - A sumcheck round proof is a univariate polynomial in monomial basis with the coefficient of the highest-degree term truncated off.
- Sumcheck
Claim - A group of claims about the sum of the values of multilinear composite polynomials over the boolean hypercube.
- Sumcheck
Claims With Meta
Enums§
Functions§
- batch_
weighted_ value - Multiply a sequence of field elements by the consecutive powers of
batch_coeff
- constraint_
set_ sumcheck_ claim - Create a sumcheck claim out of constraint set. Fails when the constraint set contains zerochecks. Returns claim and metadata used for evalcheck claim construction.
- constraint_
set_ sumcheck_ claims - Constructs sumcheck claims and metas from the vector of
ConstraintSet
- constraint_
set_ zerocheck_ claim - Create a zerocheck claim from the constraint set. Fails when the constraint set contains regular sumchecks. Returns claim and metadata used for evalcheck claim construction.
- determine_
switchovers - Determine switchover rounds for a slice of multilinears.
- equal_
n_ vars_ check - Check that all multilinears in a slice are of the same size.
- get_
nontrivial_ evaluation_ points - Validate the sumcheck evaluation domains to conform to the shape expected by the
SumcheckRoundCalculator
: - immediate_
switchover_ heuristic - Sumcheck switchover heuristic that begins folding immediately in the first round.
- make_
eval_ claims - Constructs evalcheck claims from metadata returned by constraint set claim constructors.
- small_
field_ embedding_ degree_ check - Check that evaluations of all multilinears can actually be embedded in the scalar
type of small field
PBase
. - standard_
switchover_ heuristic - Constructs a switchover function thaw returns the round number where folded multilinear is at least 2^k times smaller (in bytes) than the original, or 1 when not applicable.