pub fn prove<F, FDomain, FEncode, P, M, DomainFactory, MTScheme, MTProver, Transcript, Advice, Backend>(
fri_params: &FRIParams<F, FEncode>,
merkle_prover: &MTProver,
domain_factory: DomainFactory,
commit_meta: &CommitMeta,
committed: MTProver::Committed,
codeword: &[P],
committed_multilins: &[M],
transparent_multilins: &[M],
claims: &[PIOPSumcheckClaim<F>],
proof: &mut Proof<Transcript, Advice>,
backend: &Backend,
) -> Result<(), Error>where
F: TowerField + ExtensionField<FDomain> + ExtensionField<FEncode>,
FDomain: Field,
FEncode: BinaryField,
P: PackedFieldIndexable<Scalar = F> + PackedExtension<FDomain> + PackedExtension<FEncode>,
M: MultilinearPoly<P> + Send + Sync,
DomainFactory: EvaluationDomainFactory<FDomain>,
MTScheme: MerkleTreeScheme<F, Digest: SerializeBytes>,
MTProver: MerkleTreeProver<F, Scheme = MTScheme>,
Transcript: CanSample<F> + CanWrite + CanSampleBits<usize>,
Advice: CanWrite,
Backend: ComputationBackend,
Expand description
Proves a batch of sumcheck claims that are products of committed polynomials from a committed batch and transparent polynomials.
The arguments corresponding to the committed multilinears must be the output of commit
.