mirror of
https://github.com/arnaucube/phantom-zone.git
synced 2026-01-09 15:41:30 +01:00
rough
This commit is contained in:
@@ -407,7 +407,7 @@ mod tests {
|
|||||||
Modop: ArithmeticOps<Element = R::Element>
|
Modop: ArithmeticOps<Element = R::Element>
|
||||||
+ GetModulus<M = CiphertextModulus<R::Element>, Element = R::Element>,
|
+ GetModulus<M = CiphertextModulus<R::Element>, Element = R::Element>,
|
||||||
>(
|
>(
|
||||||
lwe_ct: R,
|
lwe_ct: &R,
|
||||||
m_expected: R::Element,
|
m_expected: R::Element,
|
||||||
sk: &[S],
|
sk: &[S],
|
||||||
modop: &Modop,
|
modop: &Modop,
|
||||||
@@ -416,7 +416,7 @@ mod tests {
|
|||||||
R: TryConvertFrom1<[S], CiphertextModulus<R::Element>>,
|
R: TryConvertFrom1<[S], CiphertextModulus<R::Element>>,
|
||||||
R::Element: Zero + FromPrimitive + PrimInt,
|
R::Element: Zero + FromPrimitive + PrimInt,
|
||||||
{
|
{
|
||||||
let noisy_m = decrypt_lwe(&lwe_ct, &sk, modop);
|
let noisy_m = decrypt_lwe(lwe_ct, &sk, modop);
|
||||||
let noise = modop.sub(&m_expected, &noisy_m);
|
let noise = modop.sub(&m_expected, &noisy_m);
|
||||||
modop
|
modop
|
||||||
.modulus()
|
.modulus()
|
||||||
@@ -479,21 +479,13 @@ mod tests {
|
|||||||
let m_expected = (m0 ^ m1);
|
let m_expected = (m0 ^ m1);
|
||||||
|
|
||||||
{
|
{
|
||||||
let noisy_m = decrypt_lwe(&ct_out, &ideal_sk_rlwe, &rlwe_modop);
|
let noise = measure_noise_lwe(
|
||||||
let noise = rlwe_modop.sub(¶meters.rlwe_q().encode(m_expected), &noisy_m);
|
&ct_out,
|
||||||
println!(
|
parameters.rlwe_q().encode(m_expected),
|
||||||
"Noise: {}",
|
&ideal_sk_rlwe,
|
||||||
parameters
|
&rlwe_modop,
|
||||||
.rlwe_q()
|
|
||||||
.map_element_to_i64(&noise)
|
|
||||||
.abs()
|
|
||||||
.to_f64()
|
|
||||||
.unwrap()
|
|
||||||
.log2()
|
|
||||||
);
|
);
|
||||||
// let noise = measure_noise_lwe(ct_out,
|
println!("Noise: {noise}");
|
||||||
// parameters.rlwe_q().encode(m_expected), &ideal_sk_rlwe,
|
|
||||||
// &rlwe_modop); println!("Noise: {noise}");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
assert!(m_out == m_expected, "Expected {m_expected} but got {m_out}");
|
assert!(m_out == m_expected, "Expected {m_expected} but got {m_out}");
|
||||||
|
|||||||
Reference in New Issue
Block a user