fn invert_batch_internal<T: Invert<Output = CtOption<T>> + Mul<T, Output = T> + Default + ConditionallySelectable>(
field_elements: &[T],
field_elements_multiples: &mut [T],
field_elements_multiples_inverses: &mut [T],
field_elements_inverses: &mut [T],
) -> ChoiceExpand description
Implements “Montgomery’s trick”, a trick for computing many modular inverses at once.
“Montgomery’s trick” works by reducing the problem of computing n inverses
to computing a single inversion, plus some storage and O(n) extra multiplications.
See: https://iacr.org/archive/pkc2004/29470042/29470042.pdf section 2.2.