pub fn estimate_several_additions_noise<T, D>(dispersion_cts: &[D]) -> Variance where
    T: UnsignedInteger,
    D: DispersionParameter
Expand description

Computes the dispersion of an addition of several uncorrelated ciphertexts.

Example:

use concrete_commons::dispersion::{DispersionParameter, Variance};
use concrete_npe::estimate_several_additions_noise;
let var1 = Variance(2_f64.powf(-25.));
let var2 = Variance(2_f64.powf(-25.));
let var3 = Variance(2_f64.powf(-24.));
let var_in = [var1, var2, var3];
let var_out = estimate_several_additions_noise::<u64, _>(&var_in);
println!("Expect Variance (2^24) =  {}", f64::powi(2., -23));
println!("Output Variance {}", var_out.get_variance());
assert!((f64::powi(2., -23) - var_out.get_variance()).abs() < 0.0001);