pub fn assign<F: ScalarField>(
    gate: &impl GateInstructions<F>,
    ctx: &mut Context<F>,
    a: OverflowInteger<F>,
    b: OverflowInteger<F>,
    c_f: F,
    c_log2_ceil: usize
) -> OverflowInteger<F>
Expand description

compute a * c + b = b + a * c

Assumptions

  • a, b have same number of limbs
  • Number of limbs is nonzero
  • c_log2_ceil = log2_ceil(c) where c is the BigUint value of c_f