Lemma 5.1 (Correctness), p. 34:35 — if Pr_{χ^⋆k}[|e| < ⌊p/2⌋/2] > 1 − δ for all k ≤ m, decryption is correct with probability ≥ 1 − δ
ProvedRegevLWE.Correctness.lemma_5_1Let and be integers, let be a probability distribution on , and let . For let be its distance from modulo , and let be the distribution of the sum of independent samples from ( the point mass at ). Assume that for every ,
Then the probability of decryption error of Regev's cryptosystem with parameters is at most : for each bit , if the private key is chosen uniformly in , the public key is formed with independent and uniform in and independent with law , is encrypted with a uniformly random subset , and the result is decrypted with , then
the probability being over all of , , and .
This is the correctness half of Regev's LWE-based public-key cryptosystem: it turns a tail bound on the noise distribution into a bound on the decryption error. For the paper's parameters, Claim 5.2 supplies the hypothesis with a negligible .
Formalization Note The hypothesis and conclusion are stated in , with probabilities taken as toReal of PMF masses (exact, since they are at most ). An form with ENNReal.ofReal (1 − δ) < was rejected: for it would demand a positive probability, a hypothesis the page does not make. is the paper's standing range for (p. 34:14); primality, which the paper's parameter choice includes, is not assumed, since the lemma does not use it. is a real number.
import Mathlib import Definitions.Def_RegevLWE_Correctness_Cryptosystem open Matrix
namespace RegevLWE.Correctness
/-- Lemma 5.1 (Correctness), Regev, J. ACM 2009, p. 34:35. Let `p ≥ 2`, `n, m ≥ 0`, `χ` a
probability distribution on `ℤ_p` and `δ > 0`. Assume that for every `k ∈ {0, 1, …, m}`,
`Pr_{e∼χ^⋆k}[|e| < ⌊p/2⌋/2] > 1 − δ`. Then for any bit `c ∈ {0, 1}`, if the private key, the
public key and the subset `S` are chosen as in the protocol, `c` is encrypted and the result
decrypted, the outcome is `c` with probability at least `1 − δ`. The probability is over all of
the protocol's randomness: `s`, `a₁, …, a_m`, `e₁, …, e_m` and `S`. -/
theorem lemma_5_1 {p : ℕ} [NeZero p] (hp : 2 ≤ p) (n m : ℕ) (χ : PMF (ZMod p)) (δ : ℝ)
(hδ : 0 < δ)
(hχ : ∀ k ≤ m, 1 - δ <
((convPow χ k).toOuterMeasure {e | (absZ e : ℝ) < ((p / 2 : ℕ) : ℝ) / 2}).toReal)
(c : Fin 2) :
1 - δ ≤ (outcome n m χ c c).toReal := by sorry
end RegevLWE.Correctness
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.