poulpy/rlwe/src/elem.rs
rlwe/src/elem.rsRaw
1use crate::parameters::Parameters;
2use base2k::VecZnx;
3
4pub struct Elem {
5 pub value: Vec<VecZnx>,
6 pub log_scale: usize,
7}
8
9impl Parameters {
10 pub fn new_elem(&self, degree: usize, log_q: usize) -> Elem {
11 let mut value: Vec<VecZnx> = Vec::new();
12 (0..degree + 1).for_each(|_| value.push(VecZnx::new(self.n(), log_q)));
13 Elem {
14 value: value,
15 log_scale: self.log_scale(),
16 }
17 }
18}