various API uniformization

This commit is contained in:
Jean-Philippe Bossuat
2025-01-28 15:00:43 +01:00
parent 1ac719ce7e
commit 6fcd5c743d
19 changed files with 438 additions and 84 deletions

18
rlwe/src/elem.rs Normal file
View File

@@ -0,0 +1,18 @@
use crate::parameters::Parameters;
use base2k::VecZnx;
pub struct Elem {
pub value: Vec<VecZnx>,
pub log_scale: usize,
}
impl Parameters {
pub fn new_elem(&self, degree: usize, log_q: usize) -> Elem {
let mut value: Vec<VecZnx> = Vec::new();
(0..degree + 1).for_each(|_| value.push(VecZnx::new(self.n(), self.log_base2k(), log_q)));
Elem {
value: value,
log_scale: self.log_scale(),
}
}
}