Skip to main content

binary_k_fold

Function binary_k_fold 

Source
pub fn binary_k_fold<F: TwoAdicField, EF: ExtensionField<F>>(
    values: Vec<EF>,
    alphas: &[EF],
    x: F,
) -> EF
Expand description

Evaluates the k-fold binary fold of f at x^{2^k} given its evaluations values on the coset H = {x, ωx, …, ω^{2^k-1}x} and fold points alphas.

Let g₀ = f. For i >= 1 define

gᵢ(Y) = fold(g_{i-1}; α_{i-1})(Y),

where

fold(h; α)(X²) = h(X) + (α - X) * (h(X) - h(-X)) / (2X).

If values = [f(x), f(ωx), …, f(ω^{2^k-1}x)], then binary_k_fold(values, alphas, x) returns g_k(x^{2^k}).