pub fn estimate_keyswitch_noise_lwe_to_glwe_with_non_constant_terms<D>(
    lwe_mask_size: LweDimension,
    dispersion_ksk: D,
    base_log: DecompositionBaseLog,
    level: DecompositionLevelCount,
    log2_modulus: u32
) -> Variancewhere
    D: DispersionParameter,
Expand description

Computes the dispersion of the non-constant GLWE terms after an LWE to GLWE keyswitch.

Example

use concrete_core::prelude::{
    BinaryKeyKind, DecompositionBaseLog, DecompositionLevelCount, LweDimension, Variance,
};
use concrete_npe::estimate_keyswitch_noise_lwe_to_glwe_with_non_constant_terms;
let lwe_mask_size = LweDimension(630);
let l_ks = DecompositionLevelCount(4);
let base_log = DecompositionBaseLog(7);
let dispersion_ks = Variance(2_f64.powi(-40));
// Compute the noise
let var_ks = estimate_keyswitch_noise_lwe_to_glwe_with_non_constant_terms::<_>(
    lwe_mask_size,
    dispersion_ks,
    base_log,
    l_ks,
    64,
);