pub use super::parameters_wopbs::WopbsParameters;
use crate::shortint::parameters::{
CarryModulus, CiphertextModulus, DecompositionBaseLog, DecompositionLevelCount,
DynamicDistribution, EncryptionKeyChoice, GlweDimension, LweDimension, MessageModulus,
PolynomialSize, StandardDev,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_5_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(32),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_6_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(64),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_7_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(8),
pbs_level: DecompositionLevelCount(5),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(5),
pfks_base_log: DecompositionBaseLog(8),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(128),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_4_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(16),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_8_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(7),
pbs_level: DecompositionLevelCount(6),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(6),
pfks_base_log: DecompositionBaseLog(7),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(7),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(256),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(498),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00044851669823869648209,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(24),
pbs_level: DecompositionLevelCount(1),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(1),
pfks_base_log: DecompositionBaseLog(24),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(2),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(653),
glwe_dimension: GlweDimension(1),
polynomial_size: PolynomialSize(2048),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00003604499526942373,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(2),
ks_base_log: DecompositionBaseLog(5),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
cbs_level: DecompositionLevelCount(3),
cbs_base_log: DecompositionBaseLog(5),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_1_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(487),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00054842163045222410337,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(2),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_4_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(16),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_5_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(32),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_6_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(64),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_7_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(8),
pbs_level: DecompositionLevelCount(5),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(5),
pfks_base_log: DecompositionBaseLog(8),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(128),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(16),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(16),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(500),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00043241360644590172285,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(23),
pbs_level: DecompositionLevelCount(1),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(1),
pfks_base_log: DecompositionBaseLog(23),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(2),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(769),
glwe_dimension: GlweDimension(1),
polynomial_size: PolynomialSize(2048),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.0000043131554647504185,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(2),
ks_base_log: DecompositionBaseLog(6),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
cbs_level: DecompositionLevelCount(3),
cbs_base_log: DecompositionBaseLog(5),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_2_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(487),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00054842163045222410337,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(4),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_4_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(16),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_5_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(32),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(873),
glwe_dimension: GlweDimension(1),
polynomial_size: PolynomialSize(2048),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.0000006428797112843789,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(1),
ks_base_log: DecompositionBaseLog(10),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
cbs_level: DecompositionLevelCount(3),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_6_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(64),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(486),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00055853990682276860028,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_3_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(487),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00054842163045222410337,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(2),
message_modulus: MessageModulus(8),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_4_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(953),
glwe_dimension: GlweDimension(1),
polynomial_size: PolynomialSize(2048),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.0000001486733969411098,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(1),
ks_base_log: DecompositionBaseLog(11),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000029403601535432533,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(16),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_5_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(4),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(4),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(32),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(486),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00055853990682276860028,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_4_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(486),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00055853990682276860028,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(16),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_5_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(32),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_5_CARRY_4_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(6),
message_modulus: MessageModulus(32),
carry_modulus: CarryModulus(16),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_5_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(16),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(16),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(32),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_5_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(32),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_5_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(486),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00055853990682276860028,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(4),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(32),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_6_CARRY_3_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(12),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(12),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(64),
carry_modulus: CarryModulus(8),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_6_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(64),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_6_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(64),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_6_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(486),
glwe_dimension: GlweDimension(3),
polynomial_size: PolynomialSize(512),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00055853990682276860028,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
pbs_base_log: DecompositionBaseLog(9),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(9),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.000000000002573000821792597679153983627,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(64),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_7_CARRY_2_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(481),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00061200133780220371345,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(9),
ks_base_log: DecompositionBaseLog(1),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(128),
carry_modulus: CarryModulus(4),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_7_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(16),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(16),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(4),
message_modulus: MessageModulus(128),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_7_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(15),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(15),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(5),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(128),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_8_CARRY_1_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(493),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00049144710341316649172,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(11),
pbs_level: DecompositionLevelCount(3),
ks_level: DecompositionLevelCount(5),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(3),
pfks_base_log: DecompositionBaseLog(11),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(256),
carry_modulus: CarryModulus(2),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};
pub const LEGACY_WOPBS_PARAM_MESSAGE_8_CARRY_0_KS_PBS: WopbsParameters = WopbsParameters {
lwe_dimension: LweDimension(497),
glwe_dimension: GlweDimension(2),
polynomial_size: PolynomialSize(1024),
lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00045679174732062467505,
)),
glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
pbs_base_log: DecompositionBaseLog(16),
pbs_level: DecompositionLevelCount(2),
ks_level: DecompositionLevelCount(4),
ks_base_log: DecompositionBaseLog(2),
pfks_level: DecompositionLevelCount(2),
pfks_base_log: DecompositionBaseLog(16),
pfks_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev(
0.00000000000000022148688116005568513645324585951,
)),
cbs_level: DecompositionLevelCount(6),
cbs_base_log: DecompositionBaseLog(3),
message_modulus: MessageModulus(256),
carry_modulus: CarryModulus(1),
ciphertext_modulus: CiphertextModulus::new_native(),
encryption_key_choice: EncryptionKeyChoice::Big,
};