Function fold_right

Source
pub fn fold_right<P, PE>(
    evals: &[P],
    log_evals_size: usize,
    query: &[PE],
    log_query_size: usize,
    out: &mut [PE],
) -> Result<(), Error>
where P: PackedField, PE: PackedField<Scalar: ExtensionField<P::Scalar>>,
Expand description

Execute the right fold operation.

Every consequent 1 << log_query_size scalar values are dot-producted with the corresponding query elements. The result is stored in the output slice of packed values.

Please note that this method is single threaded. Currently we always have some parallelism above this level, so it’s not a problem.