binius_core::protocols::gkr_gpa

Function batch_prove

source
pub fn batch_prove<'a, F, P, FDomain, Challenger, Backend>(
    witnesses: impl IntoIterator<Item = GrandProductWitness<'a, P>>,
    claims: &[GrandProductClaim<F>],
    evaluation_domain_factory: impl EvaluationDomainFactory<FDomain>,
    challenger: Challenger,
    backend: Backend,
) -> Result<GrandProductBatchProveOutput<F>, Error>
where F: TowerField, P: PackedFieldIndexable<Scalar = F> + PackedExtension<FDomain>, FDomain: Field, P::Scalar: Field + ExtensionField<FDomain>, Challenger: CanSample<F> + CanObserve<F>, Backend: ComputationBackend,
Expand description

Proves batch reduction turning each GrandProductClaim into an EvalcheckMultilinearClaim

REQUIRES:

  • witnesses and claims are of the same length
  • The ith witness corresponds to the ith claim