arnaucube
arnaucube/poulpyPublic Self-hosted repository
Getters for blocks
Rasoul Akhavan Mahdavi rasoul.akhavan.mahdavi@uwaterloo.ca
Mon, 27 Oct 2025 19:40:30 -0400
commit

4afdbf4b899bcf42fa135e768bfa453e6b8b3c86

parent

9d8ba8a2392dda5d5392e6d92b49e49b70b36745

M poulpy-core/src/layouts/glwe_secret_tensor.rs → poulpy-core/src/layouts/glwe_secret_tensor.rs

@@ -178,8 +178,6 @@ {

let res: &mut GLWESecret<&mut [u8]> = &mut res.to_mut(); let a: &GLWESecret<&[u8]> = &a.to_ref(); - println!("res.rank: {} a.rank: {}", res.rank(), a.rank()); - assert_eq!(res.rank(), GLWESecretTensor::pairs(a.rank().into()) as u32); assert_eq!(res.n(), self.n() as u32); assert_eq!(a.n(), self.n() as u32);
M poulpy-schemes/src/tfhe/bdd_arithmetic/ciphertexts/block.rs → poulpy-schemes/src/tfhe/bdd_arithmetic/ciphertexts/block.rs

@@ -19,6 +19,12 @@ pub(crate) _base: u8,

pub(crate) _phantom: PhantomData<T>, } +impl<D: DataRef, T: UnsignedInteger> FheUintBlocks<D, T> { + pub fn blocks(&self) -> &Vec<GLWE<D>> { + &self.blocks + } +} + impl<D: DataRef, T: UnsignedInteger> LWEInfos for FheUintBlocks<D, T> { fn base2k(&self) -> poulpy_core::layouts::Base2K { self.blocks[0].base2k()
M poulpy-schemes/src/tfhe/bdd_arithmetic/ciphertexts/block_prepared.rs → poulpy-schemes/src/tfhe/bdd_arithmetic/ciphertexts/block_prepared.rs

@@ -24,6 +24,12 @@ pub(crate) _base: u8,

pub(crate) _phantom: PhantomData<T>, } +impl<D: Data, T: UnsignedInteger, B: Backend> FheUintBlocksPrepared<D, T, B> { + pub fn blocks(&self) -> &Vec<GGSWPrepared<D, B>> { + &self.blocks + } +} + impl<T: UnsignedInteger, BE: Backend> FheUintBlocksPreparedFactory<T, BE> for Module<BE> where Self: Sized + GGSWPreparedFactory<BE> {