Skip to main content

eval_to_coeff_rs_message

Function eval_to_coeff_rs_message 

Source
pub fn eval_to_coeff_rs_message<F: TwoAdicField>(
    l_skip: usize,
    evals: &[F],
) -> Vec<F>
Expand description

Convert evaluations of a prismalinear polynomial on D × {0,1}^n into the RS coefficient vector for eval-to-coeff encoding.

  • |D| = 2^l_skip, and evals must be ordered so the lower l_skip bits of the index select the point in D, and higher bits select the boolean assignment.
  • The output ordering matches the same convention: idx = z_mask + (1 << l_skip) * x_mask.

This avoids computing full prismalinear monomial coefficients in the boolean variables (which would later be re-zeta-transformed), by:

  1. Performing an iDFT in Z for each boolean assignment.
  2. Applying the subset-zeta transform only over the Z-mask bits.