arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/poulpy-schemes/src/tfhe/blind_rotation/mod.rs
poulpy-schemes/src/tfhe/blind_rotation/mod.rsRaw
 1mod cggi_algo;
 2mod cggi_key;
 3mod key;
 4mod key_compressed;
 5mod key_prepared;
 6mod lut;
 7mod utils;
 8
 9pub use cggi_algo::*;
10pub use key::*;
11pub use key_compressed::*;
12pub use key_prepared::*;
13pub use lut::*;
14
15pub mod tests;
16
17use poulpy_core::layouts::{GLWE, LWE};
18use poulpy_hal::layouts::{Backend, DataMut, DataRef, Module, Scratch};
19
20pub trait BlindRotationAlgo {}
21
22#[derive(Clone)]
23pub struct CGGI {}
24impl BlindRotationAlgo for CGGI {}
25
26pub trait BlincRotationExecute<B: Backend> {
27    fn execute<DR: DataMut, DI: DataRef>(
28        &self,
29        module: &Module<B>,
30        res: &mut GLWE<DR>,
31        lwe: &LWE<DI>,
32        lut: &LookUpTable,
33        scratch: &mut Scratch<B>,
34    );
35}