Skip to main content

apply_circulant_fft_precomputed

Function apply_circulant_fft_precomputed 

Source
pub fn apply_circulant_fft_precomputed<F: TwoAdicField, const N: usize, FFT: TwoAdicSubgroupDft<F>>(
    fft: &FFT,
    freq_column: &[F; N],
    input: &[F; N],
) -> [F; N]
Expand description

Use the convolution theorem to calculate the product of a circulant matrix and the given vector, where the matrix’s first column has already been transformed to the frequency domain.

Useful when the circulant matrix is fixed across many calls: the caller can compute freq_column once (e.g. fft.dft(column.map(F::from_u64).to_vec())) instead of re-transforming a compile-time-constant column on every call.