diff --git a/tfhe/docs/fundamentals/compress.md b/tfhe/docs/fundamentals/compress.md index badde0c0c..131ebfb28 100644 --- a/tfhe/docs/fundamentals/compress.md +++ b/tfhe/docs/fundamentals/compress.md @@ -214,7 +214,7 @@ use tfhe::{ fn main() { let config = ConfigBuilder::default() .use_custom_parameters( - tfhe::shortint::parameters::PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + tfhe::shortint::parameters::V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, ) .build(); let (client_key, _) = generate_keys(config); diff --git a/tfhe/docs/guides/public_key.md b/tfhe/docs/guides/public_key.md index b9505b2c0..b0773d1b4 100644 --- a/tfhe/docs/guides/public_key.md +++ b/tfhe/docs/guides/public_key.md @@ -45,7 +45,7 @@ use tfhe::{ fn main() { let config = ConfigBuilder::default() .use_custom_parameters( - tfhe::shortint::parameters::PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + tfhe::shortint::parameters::V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, ) .build(); let (client_key, _) = generate_keys(config); diff --git a/tfhe/examples/utilities/hlapi_compact_pk_ct_sizes.rs b/tfhe/examples/utilities/hlapi_compact_pk_ct_sizes.rs index b777af33e..7b3fd28ed 100644 --- a/tfhe/examples/utilities/hlapi_compact_pk_ct_sizes.rs +++ b/tfhe/examples/utilities/hlapi_compact_pk_ct_sizes.rs @@ -10,8 +10,8 @@ use tfhe::integer::U256; use tfhe::keycache::NamedParam; use tfhe::prelude::*; use tfhe::shortint::parameters::classic::compact_pk::{ - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, }; use tfhe::shortint::PBSParameters; use tfhe::{ @@ -40,7 +40,7 @@ pub fn cpk_and_cctl_sizes(results_file: &Path) { let operator = OperatorType::Atomic; { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) .build(); @@ -98,7 +98,7 @@ pub fn cpk_and_cctl_sizes(results_file: &Path) { } { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) .build(); @@ -157,7 +157,7 @@ pub fn cpk_and_cctl_sizes(results_file: &Path) { // 256 bits { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) .build(); @@ -205,7 +205,7 @@ pub fn cpk_and_cctl_sizes(results_file: &Path) { } { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) .build(); diff --git a/tfhe/examples/utilities/wasm_benchmarks_parser.rs b/tfhe/examples/utilities/wasm_benchmarks_parser.rs index fe07cbc16..10256f4fb 100644 --- a/tfhe/examples/utilities/wasm_benchmarks_parser.rs +++ b/tfhe/examples/utilities/wasm_benchmarks_parser.rs @@ -17,8 +17,8 @@ use tfhe::shortint::keycache::{ PARAM_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64_NAME, }; use tfhe::shortint::parameters::classic::compact_pk::{ - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, }; use tfhe::shortint::parameters::classic::tuniform::p_fail_2_minus_64::ks_pbs::PARAM_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64; use tfhe::shortint::parameters::{ @@ -37,10 +37,10 @@ struct Args { fn params_from_name(name: &str) -> ClassicPBSParameters { match name.to_uppercase().as_str() { PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64_NAME => { - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64 + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64 } PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64_NAME => { - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 } PARAM_MESSAGE_1_CARRY_1_KS_PBS_GAUSSIAN_2M64_NAME => { PARAM_MESSAGE_1_CARRY_1_KS_PBS_GAUSSIAN_2M64 diff --git a/tfhe/src/c_api/shortint/parameters.rs b/tfhe/src/c_api/shortint/parameters.rs index f71bf9155..09252bdb4 100644 --- a/tfhe/src/c_api/shortint/parameters.rs +++ b/tfhe/src/c_api/shortint/parameters.rs @@ -326,39 +326,39 @@ expose_as_shortint_pbs_parameters!( PARAM_MESSAGE_3_CARRY_3_PBS_KS_GAUSSIAN_2M64, PARAM_MESSAGE_4_CARRY_4_PBS_KS_GAUSSIAN_2M64, // CPK - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, // CPK SMALL - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, // TUniform PARAM_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64, ); diff --git a/tfhe/src/high_level_api/integers/signed/tests.rs b/tfhe/src/high_level_api/integers/signed/tests.rs index b58c1ec38..1509c5813 100644 --- a/tfhe/src/high_level_api/integers/signed/tests.rs +++ b/tfhe/src/high_level_api/integers/signed/tests.rs @@ -549,7 +549,7 @@ fn test_trivial_fhe_int256_small() { fn test_compact_public_key_big() { let config = ConfigBuilder::default() .use_custom_parameters( - crate::shortint::parameters::classic::compact_pk::PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + crate::shortint::parameters::classic::compact_pk::V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, ) .build(); let (client_key, _) = generate_keys(config); @@ -569,7 +569,7 @@ fn test_compact_public_key_big() { fn test_compact_public_key_small() { let config = ConfigBuilder::default() .use_custom_parameters( - crate::shortint::parameters::classic::compact_pk::PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + crate::shortint::parameters::classic::compact_pk::V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, ) .build(); let (client_key, _) = generate_keys(config); diff --git a/tfhe/src/high_level_api/integers/unsigned/tests/cpu.rs b/tfhe/src/high_level_api/integers/unsigned/tests/cpu.rs index 9d0a7853b..0408c167c 100644 --- a/tfhe/src/high_level_api/integers/unsigned/tests/cpu.rs +++ b/tfhe/src/high_level_api/integers/unsigned/tests/cpu.rs @@ -206,7 +206,7 @@ fn test_decompressed_public_key_encrypt() { #[test] fn test_compact_public_key_big() { let config = ConfigBuilder::default() - .use_custom_parameters(PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64) + .use_custom_parameters(V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64) .build(); let (client_key, _) = generate_keys(config); @@ -224,7 +224,7 @@ fn test_compact_public_key_big() { #[test] fn test_compact_public_key_small() { let config = ConfigBuilder::default() - .use_custom_parameters(PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64) + .use_custom_parameters(V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64) .build(); let (client_key, _) = generate_keys(config); diff --git a/tfhe/src/high_level_api/keys/public.rs b/tfhe/src/high_level_api/keys/public.rs index 9233c2b18..45e9563db 100644 --- a/tfhe/src/high_level_api/keys/public.rs +++ b/tfhe/src/high_level_api/keys/public.rs @@ -276,7 +276,7 @@ mod test { use crate::conformance::ParameterSetConformant; use crate::shortint::parameters::{ CompactPublicKeyEncryptionParameters, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, }; use crate::{ generate_keys, ClientKey, CompactPublicKey, CompressedCompactPublicKey, ConfigBuilder, @@ -284,7 +284,7 @@ mod test { #[test] fn conformance_compact_public_key() { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) @@ -320,7 +320,7 @@ mod test { #[test] fn conformance_compressed_compact_public_key() { - let params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + let params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; let config = ConfigBuilder::default() .use_custom_parameters(params) diff --git a/tfhe/src/integer/ciphertext/compact_list.rs b/tfhe/src/integer/ciphertext/compact_list.rs index 762d1bd96..b73085b35 100644 --- a/tfhe/src/integer/ciphertext/compact_list.rs +++ b/tfhe/src/integer/ciphertext/compact_list.rs @@ -605,9 +605,9 @@ impl CompactCiphertextList { /// RadixCiphertext, SignedRadixCiphertext, /// }; /// use tfhe::integer::{ClientKey, CompactPublicKey}; - /// use tfhe::shortint::parameters::classic::compact_pk::PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + /// use tfhe::shortint::parameters::classic::compact_pk::V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; /// - /// let fhe_params = PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; + /// let fhe_params = V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64; /// /// let num_blocks = 4usize; /// diff --git a/tfhe/src/integer/public_key/tests.rs b/tfhe/src/integer/public_key/tests.rs index 977b88911..77a3da228 100644 --- a/tfhe/src/integer/public_key/tests.rs +++ b/tfhe/src/integer/public_key/tests.rs @@ -42,7 +42,7 @@ create_parameterized_test!( COVERAGE_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, }, no_coverage => { - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, } } ); @@ -53,7 +53,7 @@ create_parameterized_test!( COVERAGE_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, }, no_coverage => { - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, } } ); diff --git a/tfhe/src/js_on_wasm_api/shortint.rs b/tfhe/src/js_on_wasm_api/shortint.rs index 1ca95448f..9deab18af 100644 --- a/tfhe/src/js_on_wasm_api/shortint.rs +++ b/tfhe/src/js_on_wasm_api/shortint.rs @@ -349,38 +349,38 @@ expose_predefined_parameters! { PARAM_MESSAGE_3_CARRY_3_PBS_KS_GAUSSIAN_2M64, PARAM_MESSAGE_4_CARRY_4_PBS_KS_GAUSSIAN_2M64, // CPK - PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, // CPK SMALL - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, // TUniform PARAM_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64, } diff --git a/tfhe/src/shortint/keycache.rs b/tfhe/src/shortint/keycache.rs index 4724b96e6..f88633dd0 100644 --- a/tfhe/src/shortint/keycache.rs +++ b/tfhe/src/shortint/keycache.rs @@ -127,47 +127,47 @@ named_params_impl!( ShortintParameterSet => // Tuniform PARAM_GPU_MULTI_BIT_GROUP_3_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64, // CPK - PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, // CPK SMALL - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, // TUniform PARAM_MESSAGE_2_CARRY_2_KS_PBS_TUNIFORM_2M64, // Wopbs diff --git a/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs b/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs index 4a6cb58d5..25d98367b 100644 --- a/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs +++ b/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs @@ -2,7 +2,7 @@ use crate::core_crypto::prelude::*; use crate::shortint::ciphertext::MaxNoiseLevel; use crate::shortint::parameters::{CarryModulus, ClassicPBSParameters, MessageModulus}; // p-fail = 2^-64.093, algorithmic cost ~ 43, 2-norm = 1 -pub const PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(684), glwe_dimension: GlweDimension(2), @@ -25,7 +25,7 @@ pub const PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.01, algorithmic cost ~ 60, 2-norm = 3 -pub const PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(781), glwe_dimension: GlweDimension(4), @@ -48,7 +48,7 @@ pub const PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.415, algorithmic cost ~ 76, 2-norm = 7 -pub const PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(858), glwe_dimension: GlweDimension(2), @@ -71,7 +71,7 @@ pub const PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.088, algorithmic cost ~ 109, 2-norm = 15 -pub const PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(859), glwe_dimension: GlweDimension(1), @@ -94,7 +94,7 @@ pub const PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.069, algorithmic cost ~ 362, 2-norm = 31 -pub const PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(902), glwe_dimension: GlweDimension(1), @@ -117,7 +117,7 @@ pub const PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.068, algorithmic cost ~ 836, 2-norm = 63 -pub const PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(981), glwe_dimension: GlweDimension(1), @@ -140,7 +140,7 @@ pub const PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.054, algorithmic cost ~ 2522, 2-norm = 127 -pub const PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1054), glwe_dimension: GlweDimension(1), @@ -163,7 +163,7 @@ pub const PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.02, algorithmic cost ~ 8616, 2-norm = 255 -pub const PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1114), glwe_dimension: GlweDimension(1), @@ -186,7 +186,7 @@ pub const PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.017, algorithmic cost ~ 60, 2-norm = 1 -pub const PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(781), glwe_dimension: GlweDimension(4), @@ -209,7 +209,7 @@ pub const PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.176, algorithmic cost ~ 76, 2-norm = 2 -pub const PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(857), glwe_dimension: GlweDimension(2), @@ -232,7 +232,7 @@ pub const PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.074, algorithmic cost ~ 106, 2-norm = 5 -pub const PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(834), glwe_dimension: GlweDimension(1), @@ -255,7 +255,7 @@ pub const PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.084, algorithmic cost ~ 362, 2-norm = 10 -pub const PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(902), glwe_dimension: GlweDimension(1), @@ -278,7 +278,7 @@ pub const PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.078, algorithmic cost ~ 833, 2-norm = 21 -pub const PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(977), glwe_dimension: GlweDimension(1), @@ -300,8 +300,8 @@ pub const PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; -// p-fail = 2^-64.058, algorithmic cost ~ 2517, 2-norm = 42 -pub const PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-64.151, algorithmic cost ~ 2517, 2-norm = 42 +pub const V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1052), glwe_dimension: GlweDimension(1), @@ -312,19 +312,19 @@ pub const PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.168404344971009e-19, )), - pbs_base_log: DecompositionBaseLog(12), + pbs_base_log: DecompositionBaseLog(11), pbs_level: DecompositionLevelCount(3), ks_base_log: DecompositionBaseLog(3), ks_level: DecompositionLevelCount(7), message_modulus: MessageModulus(4), carry_modulus: CarryModulus(32), max_noise_level: MaxNoiseLevel::new(42), - log2_p_fail: -64.058, + log2_p_fail: -64.151, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.001, algorithmic cost ~ 7229, 2-norm = 85 -pub const PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1114), glwe_dimension: GlweDimension(1), @@ -347,7 +347,7 @@ pub const PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.193, algorithmic cost ~ 76, 2-norm = 1 -pub const PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(857), glwe_dimension: GlweDimension(2), @@ -370,7 +370,7 @@ pub const PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.346, algorithmic cost ~ 106, 2-norm = 2 -pub const PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(833), glwe_dimension: GlweDimension(1), @@ -393,7 +393,7 @@ pub const PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.064, algorithmic cost ~ 260, 2-norm = 4 -pub const PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(935), glwe_dimension: GlweDimension(1), @@ -415,8 +415,8 @@ pub const PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; -// p-fail = 2^-64.122, algorithmic cost ~ 833, 2-norm = 9 -pub const PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-64.166, algorithmic cost ~ 833, 2-norm = 9 +pub const V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(977), glwe_dimension: GlweDimension(1), @@ -427,19 +427,19 @@ pub const PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.168404344971009e-19, )), - pbs_base_log: DecompositionBaseLog(16), + pbs_base_log: DecompositionBaseLog(15), pbs_level: DecompositionLevelCount(2), ks_base_log: DecompositionBaseLog(3), ks_level: DecompositionLevelCount(6), message_modulus: MessageModulus(8), carry_modulus: CarryModulus(8), max_noise_level: MaxNoiseLevel::new(9), - log2_p_fail: -64.122, + log2_p_fail: -64.166, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.037, algorithmic cost ~ 1947, 2-norm = 18 -pub const PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1061), glwe_dimension: GlweDimension(1), @@ -462,7 +462,7 @@ pub const PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.0, algorithmic cost ~ 6009, 2-norm = 36 -pub const PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1118), glwe_dimension: GlweDimension(1), @@ -485,7 +485,7 @@ pub const PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.454, algorithmic cost ~ 106, 2-norm = 1 -pub const PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(833), glwe_dimension: GlweDimension(1), @@ -507,8 +507,8 @@ pub const PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; -// p-fail = 2^-64.071, algorithmic cost ~ 250, 2-norm = 2 -pub const PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-64.077, algorithmic cost ~ 250, 2-norm = 2 +pub const V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(954), glwe_dimension: GlweDimension(1), @@ -519,19 +519,19 @@ pub const PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.168404344971009e-19, )), - pbs_base_log: DecompositionBaseLog(23), + pbs_base_log: DecompositionBaseLog(22), pbs_level: DecompositionLevelCount(1), ks_base_log: DecompositionBaseLog(4), ks_level: DecompositionLevelCount(4), message_modulus: MessageModulus(16), carry_modulus: CarryModulus(2), max_noise_level: MaxNoiseLevel::new(2), - log2_p_fail: -64.071, + log2_p_fail: -64.077, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.182, algorithmic cost ~ 833, 2-norm = 4 -pub const PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(977), glwe_dimension: GlweDimension(1), @@ -554,7 +554,7 @@ pub const PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.099, algorithmic cost ~ 1933, 2-norm = 8 -pub const PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1053), glwe_dimension: GlweDimension(1), @@ -577,7 +577,7 @@ pub const PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.033, algorithmic cost ~ 5904, 2-norm = 17 -pub const PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1112), glwe_dimension: GlweDimension(1), @@ -600,7 +600,7 @@ pub const PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.068, algorithmic cost ~ 248, 2-norm = 1 -pub const PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(946), glwe_dimension: GlweDimension(1), @@ -623,7 +623,7 @@ pub const PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.185, algorithmic cost ~ 833, 2-norm = 2 -pub const PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(977), glwe_dimension: GlweDimension(1), @@ -646,7 +646,7 @@ pub const PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.137, algorithmic cost ~ 1931, 2-norm = 4 -pub const PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1052), glwe_dimension: GlweDimension(1), @@ -669,7 +669,7 @@ pub const PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.004, algorithmic cost ~ 5888, 2-norm = 8 -pub const PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1109), glwe_dimension: GlweDimension(1), @@ -692,7 +692,7 @@ pub const PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.034, algorithmic cost ~ 609, 2-norm = 1 -pub const PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1005), glwe_dimension: GlweDimension(1), @@ -715,7 +715,7 @@ pub const PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.031, algorithmic cost ~ 1929, 2-norm = 2 -pub const PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1051), glwe_dimension: GlweDimension(1), @@ -738,7 +738,7 @@ pub const PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.007, algorithmic cost ~ 5390, 2-norm = 4 -pub const PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1111), glwe_dimension: GlweDimension(1), @@ -760,8 +760,8 @@ pub const PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; -// p-fail = 2^-64.032, algorithmic cost ~ 1929, 2-norm = 1 -pub const PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-64.042, algorithmic cost ~ 1929, 2-norm = 1 +pub const V0_11_PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1051), glwe_dimension: GlweDimension(1), @@ -772,19 +772,19 @@ pub const PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.168404344971009e-19, )), - pbs_base_log: DecompositionBaseLog(16), + pbs_base_log: DecompositionBaseLog(15), pbs_level: DecompositionLevelCount(2), ks_base_log: DecompositionBaseLog(3), ks_level: DecompositionLevelCount(7), message_modulus: MessageModulus(128), carry_modulus: CarryModulus(1), max_noise_level: MaxNoiseLevel::new(1), - log2_p_fail: -64.032, + log2_p_fail: -64.042, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.017, algorithmic cost ~ 4609, 2-norm = 2 -pub const PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1116), glwe_dimension: GlweDimension(1), @@ -807,7 +807,7 @@ pub const PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSPar encryption_key_choice: EncryptionKeyChoice::Big, }; // p-fail = 2^-64.011, algorithmic cost ~ 4584, 2-norm = 1 -pub const PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1110), glwe_dimension: GlweDimension(1), diff --git a/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs b/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs index ddc834146..544bb7708 100644 --- a/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs +++ b/tfhe/src/shortint/parameters/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs @@ -1,8 +1,9 @@ use crate::core_crypto::prelude::*; use crate::shortint::ciphertext::MaxNoiseLevel; use crate::shortint::parameters::{CarryModulus, ClassicPBSParameters, MessageModulus}; -// p-fail = 2^-66.538, algorithmic cost ~ 74, 2-norm = 3 -pub const PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = + +// p-fail = 2^-66.829, algorithmic cost ~ 74, 2-norm = 3 +pub const V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1024), glwe_dimension: GlweDimension(4), @@ -13,19 +14,19 @@ pub const PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.845267479601915e-15, )), - pbs_base_log: DecompositionBaseLog(26), + pbs_base_log: DecompositionBaseLog(23), pbs_level: DecompositionLevelCount(1), - ks_base_log: DecompositionBaseLog(8), + ks_base_log: DecompositionBaseLog(7), ks_level: DecompositionLevelCount(2), message_modulus: MessageModulus(2), carry_modulus: CarryModulus(2), max_noise_level: MaxNoiseLevel::new(3), - log2_p_fail: -66.538, + log2_p_fail: -66.829, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Small, }; // p-fail = 2^-68.803, algorithmic cost ~ 130, 2-norm = 5 -pub const PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = +pub const V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(1024), glwe_dimension: GlweDimension(1), @@ -47,8 +48,8 @@ pub const PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSPar ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Small, }; -// p-fail = 2^-87.969, algorithmic cost ~ 3355, 2-norm = 9 -pub const PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-140.945, algorithmic cost ~ 3355, 2-norm = 9 +pub const V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(2048), glwe_dimension: GlweDimension(1), @@ -59,19 +60,19 @@ pub const PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSPar glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( 2.168404344971009e-19, )), - pbs_base_log: DecompositionBaseLog(14), + pbs_base_log: DecompositionBaseLog(15), pbs_level: DecompositionLevelCount(2), - ks_base_log: DecompositionBaseLog(20), + ks_base_log: DecompositionBaseLog(24), ks_level: DecompositionLevelCount(1), message_modulus: MessageModulus(8), carry_modulus: CarryModulus(8), max_noise_level: MaxNoiseLevel::new(9), - log2_p_fail: -87.969, + log2_p_fail: -140.945, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Small, }; -// p-fail = 2^-134.119, algorithmic cost ~ 20401, 2-norm = 17 -pub const PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = +// p-fail = 2^-138.594, algorithmic cost ~ 20401, 2-norm = 17 +pub const V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = ClassicPBSParameters { lwe_dimension: LweDimension(2048), glwe_dimension: GlweDimension(1), @@ -84,12 +85,12 @@ pub const PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSPar )), pbs_base_log: DecompositionBaseLog(11), pbs_level: DecompositionLevelCount(3), - ks_base_log: DecompositionBaseLog(13), + ks_base_log: DecompositionBaseLog(16), ks_level: DecompositionLevelCount(2), message_modulus: MessageModulus(16), carry_modulus: CarryModulus(16), max_noise_level: MaxNoiseLevel::new(17), - log2_p_fail: -134.119, + log2_p_fail: -138.594, ciphertext_modulus: CiphertextModulus::new_native(), encryption_key_choice: EncryptionKeyChoice::Small, }; diff --git a/tfhe/src/shortint/parameters/classic/compact_pk/mod.rs b/tfhe/src/shortint/parameters/classic/compact_pk/mod.rs index a2a888752..6b712dd3a 100644 --- a/tfhe/src/shortint/parameters/classic/compact_pk/mod.rs +++ b/tfhe/src/shortint/parameters/classic/compact_pk/mod.rs @@ -5,44 +5,44 @@ use crate::shortint::ClassicPBSParameters; pub mod gaussian; pub const ALL_PARAMETER_VEC_COMPACT_PK: [ClassicPBSParameters; 40] = [ - PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, ]; diff --git a/tfhe/src/shortint/parameters/mod.rs b/tfhe/src/shortint/parameters/mod.rs index eef7eeff5..8525eec94 100644 --- a/tfhe/src/shortint/parameters/mod.rs +++ b/tfhe/src/shortint/parameters/mod.rs @@ -31,6 +31,7 @@ pub mod multi_bit; pub mod parameters_wopbs; pub mod parameters_wopbs_message_carry; pub mod parameters_wopbs_only; +pub mod v0_10; pub use super::ciphertext::{Degree, MaxNoiseLevel, NoiseLevel}; use super::server_key::PBSConformanceParameters; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/mod.rs b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/mod.rs new file mode 100644 index 000000000..55c2d9ab4 --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/mod.rs @@ -0,0 +1 @@ +pub mod p_fail_2_minus_64; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs new file mode 100644 index 000000000..004a2412e --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/ks_pbs.rs @@ -0,0 +1,831 @@ +use crate::core_crypto::prelude::*; +use crate::shortint::ciphertext::MaxNoiseLevel; +use crate::shortint::parameters::{CarryModulus, ClassicPBSParameters, MessageModulus}; +// p-fail = 2^-64.093, algorithmic cost ~ 43, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_1_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(684), + glwe_dimension: GlweDimension(2), + polynomial_size: PolynomialSize(512), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 4.7280002450549286e-05, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.339775301998614e-07, + )), + pbs_base_log: DecompositionBaseLog(7), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(4), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.093, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.01, algorithmic cost ~ 60, 2-norm = 3 +pub const V0_10_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(781), + glwe_dimension: GlweDimension(4), + polynomial_size: PolynomialSize(512), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.868480365938865e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(4), + ks_level: DecompositionLevelCount(3), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(3), + log2_p_fail: -64.01, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.415, algorithmic cost ~ 76, 2-norm = 7 +pub const V0_10_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(858), + glwe_dimension: GlweDimension(2), + polynomial_size: PolynomialSize(1024), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.348996819227123e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(5), + ks_level: DecompositionLevelCount(3), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(7), + log2_p_fail: -64.415, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.088, algorithmic cost ~ 109, 2-norm = 15 +pub const V0_10_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(859), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(2048), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.3088161607134664e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(5), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(15), + log2_p_fail: -64.088, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.069, algorithmic cost ~ 362, 2-norm = 31 +pub const V0_10_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(902), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(4096), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.0994794733558207e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(16), + max_noise_level: MaxNoiseLevel::new(31), + log2_p_fail: -64.069, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.068, algorithmic cost ~ 836, 2-norm = 63 +pub const V0_10_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(981), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.8134175707144757e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(32), + max_noise_level: MaxNoiseLevel::new(63), + log2_p_fail: -64.068, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.054, algorithmic cost ~ 2522, 2-norm = 127 +pub const V0_10_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1054), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 7.984352743330102e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(11), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(64), + max_noise_level: MaxNoiseLevel::new(127), + log2_p_fail: -64.054, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.02, algorithmic cost ~ 8616, 2-norm = 255 +pub const V0_10_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1114), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.8356668849263424e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(7), + pbs_level: DecompositionLevelCount(5), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(12), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(128), + max_noise_level: MaxNoiseLevel::new(255), + log2_p_fail: -64.02, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.017, algorithmic cost ~ 60, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_2_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(781), + glwe_dimension: GlweDimension(4), + polynomial_size: PolynomialSize(512), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.868480365938865e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(4), + ks_level: DecompositionLevelCount(3), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.017, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.176, algorithmic cost ~ 76, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(857), + glwe_dimension: GlweDimension(2), + polynomial_size: PolynomialSize(1024), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.389876747499049e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(5), + ks_level: DecompositionLevelCount(3), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.176, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.074, algorithmic cost ~ 106, 2-norm = 5 +pub const V0_10_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(834), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(2048), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.5539902359442825e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(5), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(5), + log2_p_fail: -64.074, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.084, algorithmic cost ~ 362, 2-norm = 10 +pub const V0_10_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(902), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(4096), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.0994794733558207e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(10), + log2_p_fail: -64.084, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.078, algorithmic cost ~ 833, 2-norm = 21 +pub const V0_10_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(977), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.0144389706858286e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(16), + max_noise_level: MaxNoiseLevel::new(21), + log2_p_fail: -64.078, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.058, algorithmic cost ~ 2517, 2-norm = 42 +pub const V0_10_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1052), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.264676629436917e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(12), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(32), + max_noise_level: MaxNoiseLevel::new(42), + log2_p_fail: -64.058, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.001, algorithmic cost ~ 7229, 2-norm = 85 +pub const V0_10_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1114), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.8356668849263424e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(9), + pbs_level: DecompositionLevelCount(4), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(11), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(64), + max_noise_level: MaxNoiseLevel::new(85), + log2_p_fail: -64.001, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.193, algorithmic cost ~ 76, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_3_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(857), + glwe_dimension: GlweDimension(2), + polynomial_size: PolynomialSize(1024), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.389876747499049e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(5), + ks_level: DecompositionLevelCount(3), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.193, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.346, algorithmic cost ~ 106, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(833), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(2048), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.6158408373309336e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(5), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.346, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.064, algorithmic cost ~ 260, 2-norm = 4 +pub const V0_10_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(935), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(4096), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 6.221794297398788e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(22), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(4), + log2_p_fail: -64.064, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.122, algorithmic cost ~ 833, 2-norm = 9 +pub const V0_10_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(977), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.0144389706858286e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(16), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(9), + log2_p_fail: -64.122, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.037, algorithmic cost ~ 1947, 2-norm = 18 +pub const V0_10_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1061), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 7.07600596055958e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(16), + max_noise_level: MaxNoiseLevel::new(18), + log2_p_fail: -64.037, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.0, algorithmic cost ~ 6009, 2-norm = 36 +pub const V0_10_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1118), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.6465671112690942e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(11), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(12), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(32), + max_noise_level: MaxNoiseLevel::new(36), + log2_p_fail: -64.0, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.454, algorithmic cost ~ 106, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_4_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(833), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(2048), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.6158408373309336e-06, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(5), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.454, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.071, algorithmic cost ~ 250, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(954), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(4096), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 4.482777900525027e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(4), + ks_level: DecompositionLevelCount(4), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.071, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.182, algorithmic cost ~ 833, 2-norm = 4 +pub const V0_10_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(977), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.0144389706858286e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(4), + log2_p_fail: -64.182, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.099, algorithmic cost ~ 1933, 2-norm = 8 +pub const V0_10_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1053), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.123305578333294e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(8), + log2_p_fail: -64.099, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.033, algorithmic cost ~ 5904, 2-norm = 17 +pub const V0_10_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1112), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.935224755982453e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(11), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(11), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(16), + max_noise_level: MaxNoiseLevel::new(17), + log2_p_fail: -64.033, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.068, algorithmic cost ~ 248, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_5_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(946), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(4096), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 5.146261171730886e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(22), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(4), + ks_level: DecompositionLevelCount(4), + message_modulus: MessageModulus(32), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.068, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.185, algorithmic cost ~ 833, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(977), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.0144389706858286e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(6), + message_modulus: MessageModulus(32), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.185, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.137, algorithmic cost ~ 1931, 2-norm = 4 +pub const V0_10_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1052), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.264676629436917e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(32), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(4), + log2_p_fail: -64.137, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.004, algorithmic cost ~ 5888, 2-norm = 8 +pub const V0_10_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1109), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.0911536076507566e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(11), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(11), + message_modulus: MessageModulus(32), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(8), + log2_p_fail: -64.004, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.034, algorithmic cost ~ 609, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_6_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1005), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(8192), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.859518030726978e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(22), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(64), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.034, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.031, algorithmic cost ~ 1929, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1051), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.40850798120231e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(64), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.031, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.007, algorithmic cost ~ 5390, 2-norm = 4 +pub const V0_10_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1111), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.986306893048107e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(1), + ks_level: DecompositionLevelCount(22), + message_modulus: MessageModulus(64), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(4), + log2_p_fail: -64.007, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.032, algorithmic cost ~ 1929, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_7_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1051), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 8.40850798120231e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(16), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(3), + ks_level: DecompositionLevelCount(7), + message_modulus: MessageModulus(128), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.032, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.017, algorithmic cost ~ 4609, 2-norm = 2 +pub const V0_10_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1116), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.7394858488703536e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(11), + message_modulus: MessageModulus(128), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(2), + log2_p_fail: -64.017, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; +// p-fail = 2^-64.011, algorithmic cost ~ 4584, 2-norm = 1 +pub const V0_10_PARAM_MESSAGE_8_CARRY_0_COMPACT_PK_KS_PBS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1110), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(32768), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 3.038278019865525e-08, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(15), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(2), + ks_level: DecompositionLevelCount(11), + message_modulus: MessageModulus(256), + carry_modulus: CarryModulus(1), + max_noise_level: MaxNoiseLevel::new(1), + log2_p_fail: -64.011, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Big, + }; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/mod.rs b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/mod.rs new file mode 100644 index 000000000..4e3b5c531 --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/mod.rs @@ -0,0 +1,2 @@ +pub mod ks_pbs; +pub mod pbs_ks; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs new file mode 100644 index 000000000..5b97ad925 --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/gaussian/p_fail_2_minus_64/pbs_ks.rs @@ -0,0 +1,95 @@ +use crate::core_crypto::prelude::*; +use crate::shortint::ciphertext::MaxNoiseLevel; +use crate::shortint::parameters::{CarryModulus, ClassicPBSParameters, MessageModulus}; +// p-fail = 2^-66.538, algorithmic cost ~ 74, 2-norm = 3 +pub const V0_10_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1024), + glwe_dimension: GlweDimension(4), + polynomial_size: PolynomialSize(512), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.339775301998614e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(26), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(8), + ks_level: DecompositionLevelCount(2), + message_modulus: MessageModulus(2), + carry_modulus: CarryModulus(2), + max_noise_level: MaxNoiseLevel::new(3), + log2_p_fail: -66.538, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Small, + }; +// p-fail = 2^-68.803, algorithmic cost ~ 130, 2-norm = 5 +pub const V0_10_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(1024), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(2048), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 1.339775301998614e-07, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + pbs_base_log: DecompositionBaseLog(23), + pbs_level: DecompositionLevelCount(1), + ks_base_log: DecompositionBaseLog(4), + ks_level: DecompositionLevelCount(5), + message_modulus: MessageModulus(4), + carry_modulus: CarryModulus(4), + max_noise_level: MaxNoiseLevel::new(5), + log2_p_fail: -68.803, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Small, + }; +// p-fail = 2^-87.969, algorithmic cost ~ 3355, 2-norm = 9 +pub const V0_10_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(2048), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(16384), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(14), + pbs_level: DecompositionLevelCount(2), + ks_base_log: DecompositionBaseLog(20), + ks_level: DecompositionLevelCount(1), + message_modulus: MessageModulus(8), + carry_modulus: CarryModulus(8), + max_noise_level: MaxNoiseLevel::new(9), + log2_p_fail: -87.969, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Small, + }; +// p-fail = 2^-134.119, algorithmic cost ~ 20401, 2-norm = 17 +pub const V0_10_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64: ClassicPBSParameters = + ClassicPBSParameters { + lwe_dimension: LweDimension(2048), + glwe_dimension: GlweDimension(1), + polynomial_size: PolynomialSize(65536), + lwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.845267479601915e-15, + )), + glwe_noise_distribution: DynamicDistribution::new_gaussian_from_std_dev(StandardDev( + 2.168404344971009e-19, + )), + pbs_base_log: DecompositionBaseLog(11), + pbs_level: DecompositionLevelCount(3), + ks_base_log: DecompositionBaseLog(13), + ks_level: DecompositionLevelCount(2), + message_modulus: MessageModulus(16), + carry_modulus: CarryModulus(16), + max_noise_level: MaxNoiseLevel::new(17), + log2_p_fail: -134.119, + ciphertext_modulus: CiphertextModulus::new_native(), + encryption_key_choice: EncryptionKeyChoice::Small, + }; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/mod.rs b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/mod.rs new file mode 100644 index 000000000..1e195d938 --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/compact_pk/mod.rs @@ -0,0 +1 @@ +pub mod gaussian; diff --git a/tfhe/src/shortint/parameters/v0_10/classic/mod.rs b/tfhe/src/shortint/parameters/v0_10/classic/mod.rs new file mode 100644 index 000000000..13f21c27b --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/classic/mod.rs @@ -0,0 +1 @@ +pub mod compact_pk; diff --git a/tfhe/src/shortint/parameters/v0_10/mod.rs b/tfhe/src/shortint/parameters/v0_10/mod.rs new file mode 100644 index 000000000..344729ee2 --- /dev/null +++ b/tfhe/src/shortint/parameters/v0_10/mod.rs @@ -0,0 +1 @@ +pub mod classic; diff --git a/tfhe/src/shortint/server_key/tests/shortint_compact_pk.rs b/tfhe/src/shortint/server_key/tests/shortint_compact_pk.rs index b5269a94b..f08c23ade 100644 --- a/tfhe/src/shortint/server_key/tests/shortint_compact_pk.rs +++ b/tfhe/src/shortint/server_key/tests/shortint_compact_pk.rs @@ -35,38 +35,38 @@ macro_rules! create_parameterized_test{ ($name:ident)=> { create_parameterized_test!($name { - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, - PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_7_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_6_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_5_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_5_CARRY_3_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_6_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_7_CARRY_1_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_1_CARRY_1_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_3_CARRY_3_COMPACT_PK_PBS_KS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_4_CARRY_4_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 }); }; } @@ -87,8 +87,8 @@ macro_rules! create_parameterized_test{ ($name:ident)=> { create_parameterized_test!($name { - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, - PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_KS_PBS_GAUSSIAN_2M64, + V0_11_PARAM_MESSAGE_2_CARRY_2_COMPACT_PK_PBS_KS_GAUSSIAN_2M64 }); }; }