B-3.3 Decryption

1.
Given the ciphertext (A,B) where B = A ⋅S + Δ ⋅M + E ∈R⟨n,q⟩, compute B −A ⋅S = Δ ⋅M + E.
2.
Round each coefficient of the polynomial Δ ⋅M + E ∈R⟨n,q⟩ to the nearest multiple of Δ (i.e., round it as a base Δ number), which is denoted as ⌈Δ ⋅M + E⌋Δ. This rounding operation successfully eliminates E and gives Δ ⋅M. One caveat is that the noise E’s each coefficient ei should be small enough to be |ei|< Δ 2 in order to be eliminated during the rounding. Otherwise, some of ei’s higher bits will overlap and corrupt the plaintext mi coefficient’s lower bits and won’t be blown away.
3.
Compute Δ ⋅M Δ , which is equivalent to scaling down each polynomial coefficient in Δ ⋅M by Δ (or right-shifting each coefficient by log2Δ bits if Δ is a power of 2).

In summary, the RLWE decryption formula is summarized as follows:

⟨Summary B-3.3⟩ RLWE Decryption

Decryption Input: 𝖼𝗍 = (A,B)  ∈R⟨n,q⟩2

1.
𝖱𝖫𝖶𝖤S,σ−1(𝖼𝗍) = B −A ⋅S = ΔM + E  ∈R⟨n,q⟩
2.
Scale down ⌈ΔM + E Δ ⌋ mod t = M  ∈R⟨n,t⟩

For correct decryption, every noise coefficient ei of polynomial E should be: |ei|< Δ 2. And in case t does not divide q, q should be sufficiently larger than t.