added fill_normal

This commit is contained in:
Jean-Philippe Bossuat
2025-01-20 12:23:50 +01:00
parent 1cc38b3042
commit 70765026c5

View File

@@ -2,7 +2,7 @@ use crate::modulus::WordOps;
use crate::poly::{Poly, PolyRNS};
use crate::ring::{Ring, RingRNS};
use num::ToPrimitive;
use rand_distr::Distribution;
use rand_distr::{Distribution, Normal};
use sampling::source::Source;
impl Ring<u64> {
@@ -34,6 +34,10 @@ impl Ring<u64> {
*a = (dist_u64 * sign) | (max - dist_u64) * (sign ^ 1)
});
}
pub fn fill_normal(&self, source: &mut Source, sigma: f64, bound: f64, a: &mut Poly<u64>){
self.fill_dist_f64(source, Normal::new(0.0, sigma).unwrap(), bound, a);
}
}
impl RingRNS<u64> {