Files
concrete/concrete-optimizer/src/computing_cost/complexity_model.rs
Mayeul@Zama d310561136 feat(complexity): add Gpu complexity
refactor: computing_cost module
style: regroup search space parameters
style: use config struct to regroup parameters
2022-08-30 12:48:56 +02:00

15 lines
520 B
Rust

use super::complexity::Complexity;
use crate::parameters::{KeyswitchParameters, LweDimension, PbsParameters};
pub trait ComplexityModel: Send + Sync {
fn pbs_complexity(&self, params: PbsParameters, ciphertext_modulus_log: u64) -> Complexity;
fn ks_complexity(&self, params: KeyswitchParameters, ciphertext_modulus_log: u64)
-> Complexity;
fn levelled_complexity(
&self,
sum_size: u64,
lwe_dimension: LweDimension,
ciphertext_modulus_log: u64,
) -> Complexity;
}