pub fn ext_base_op<PE, F, Func>(
lhs: &mut [PE],
rhs: &[PE::PackedSubfield],
op: Func,
) -> Result<(), Error>where
PE: PackedExtension<F>,
PE::Scalar: ExtensionField<F>,
F: Field,
Func: Fn(usize, PE, PE::PackedSubfield) -> PE,
Expand description
Refer to the functions above for examples of closures to pass Func takes in the following parameters
Note that this function overwrites the lhs buffer, copy that data before invoking this function if you need to use it elsewhere
lhs: PE::WIDTH extension field scalars
broadcasted_rhs: a broadcasted version of PE::WIDTH subfield scalars with each one occurring PE::PackedSubfield::WIDTH/PE::WIDTH times in a row such that the bits of the broadcasted scalars align with the lhs scalars