From 70765026c5ec5b22c72a4346801182121dd13ed8 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Bossuat Date: Mon, 20 Jan 2025 12:23:50 +0100 Subject: [PATCH] added fill_normal --- math/src/ring/impl_u64/sampling.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/math/src/ring/impl_u64/sampling.rs b/math/src/ring/impl_u64/sampling.rs index 3af27bf..a6e44e5 100644 --- a/math/src/ring/impl_u64/sampling.rs +++ b/math/src/ring/impl_u64/sampling.rs @@ -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 { @@ -34,6 +34,10 @@ impl Ring { *a = (dist_u64 * sign) | (max - dist_u64) * (sign ^ 1) }); } + + pub fn fill_normal(&self, source: &mut Source, sigma: f64, bound: f64, a: &mut Poly){ + self.fill_dist_f64(source, Normal::new(0.0, sigma).unwrap(), bound, a); + } } impl RingRNS {