INNER CODE UNIT · Rust

batch_inversion_helper

0xMiden/crypto · miden-crypto/src/lib.rs:196

    fn batch_inversion_helper(values: &[Felt], result: &mut [Felt]) {
        debug_assert_eq!(values.len(), result.len());

        if values.is_empty() {
            return;
        }

        // Forward pass: compute cumulative products, skipping zeros
        let mut last = ONE;
        for (result, &value) in result.iter_mut().zip(values.iter()) {
            *result = last;
            if value != ZERO {
                last *= value;
            }
        }

        // Invert the final cumulative product
        last = last.inverse();

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…