Function kimchi_msm::serialization::interpreter::combine_limbs_m_to_n
source · pub fn combine_limbs_m_to_n<const M: usize, const N: usize, const BITSIZE_M: usize, const BITSIZE_N: usize, F: PrimeField, V: Add<V, Output = V> + Sub<V, Output = V> + Mul<V, Output = V> + Neg<Output = V> + From<u64> + Clone, Func: Fn(F) -> V>(
from_field: Func,
x: [V; M]
) -> [V; N]
Expand description
Helper function for limb recombination.
Combines an array of M
elements (think N_LIMBS_SMALL
) into an
array of N
elements (think N_LIMBS_LARGE
) elements by taking
chunks a_i
of size K = BITSIZE_N / BITSIZE_M
from the first, and recombining them as
a_i * 2^{i * 2^LIMB_BITSIZE_SMALL}
.