arnaucube
arnaucube/poulpyPublic Self-hosted repository
Add scratch space for ggsw blind rotation
Pro7ech jeanphilippe.bossuat@gmail.com
Sat, 25 Oct 2025 15:56:26 +0200
commit

6d6d00e9e45613b099516251b1880c37bfedfeee

parent

e6e685c00ee226f938ffb00a2dc7cf96b6756504

1 files changed, 11 insertions(+), 3 deletions(-)

jump to
M poulpy-schemes/src/tfhe/bdd_arithmetic/bdd_rotation.rs → poulpy-schemes/src/tfhe/bdd_arithmetic/bdd_rotation.rs

@@ -11,6 +11,14 @@ where

Self: GLWEBlindRotation<T, BE>, Scratch<BE>: ScratchTakeCore<BE>, { + fn ggsw_blind_rotation_tmp_bytes<R, K>(&self, res_infos: &R, k_infos: &K) -> usize + where + R: GLWEInfos, + K: GGSWInfos, + { + self.glwe_blind_rotation_tmp_bytes(res_infos, k_infos) + } + fn ggsw_blind_rotation<R, K>( &self, res: &mut R,

@@ -46,12 +54,12 @@ where

Self: GLWECopy + GLWERotate<BE> + Cmux<BE>, Scratch<BE>: ScratchTakeCore<BE>, { - fn glwe_blind_rotation_tmp_bytes<R, A, B>(&self, res_infos: &R, b_infos: &B) -> usize + fn glwe_blind_rotation_tmp_bytes<R, K>(&self, res_infos: &R, k_infos: &K) -> usize where R: GLWEInfos, - B: GGSWInfos, + K: GGSWInfos, { - self.cmux_tmp_bytes(res_infos, res_infos, b_infos) + GLWE::bytes_of_from_infos(res_infos) + self.cmux_tmp_bytes(res_infos, res_infos, k_infos) + GLWE::bytes_of_from_infos(res_infos) } /// Homomorphic multiplication of res by X^{k[bit_start..bit_start + bit_size] * bit_step}.