D-2.4 Ciphertext-to-Ciphertext Addition

BFV’s ciphertext-to-ciphertext addition uses RLWE’s ciphertext-to-ciphertext addition scheme with the sign of the A S term flipped in the encryption and decryption formula. Specifically, this is equivalent to the alternative GLWE version’s (§B-4.4) ciphertext-to-ciphertext addition scheme with k = 1.

Summary D-2.4 BFV Ciphertext-to-Ciphertext Addition

𝖱𝖫𝖶𝖤S,σ(ΔM1+ E1) + 𝖱𝖫𝖶𝖤S,σ(ΔM2+ E2)

= (A1, B1) + (A2, B2)

= (A1+ A2, B1+ B2)

= 𝖱𝖫𝖶𝖤S,σ(Δ(M1+ M2) + E1+ E2)

D-2.4.1 Noise Bound Analysis

In the last part of Summary D-2.3 (in §D-2.3), we explained the noise bound conditions for BFV’s correct decryption. In this subsection, we will explain how this condition holds in more detail by walking bacthrough BFV’s ciphertext-to-ciphertext addition.

Let’s denote the homomorphically added ciphertext as follows:

(A3, B3) = (A1+ A2, B1+ B2) mod q

Applying the first step of decryption to it yields the following intermediate result:

B3+ A3S mod q

B1+ B2+ A1S + A2S mod q

= (A1S + ΔM1+ E1) + (A2S + ΔM2+ E2) + A1S + A2S mod q

= ΔM1+ E1+ ΔM2+ E2mod q

The second step of decryption is to divide each coefficient of the above intermediate polynomial by Δ, round it, and reduce it modulo t as follows:

Δ(M1+ M2) + E1+ E2mod q Δ mod t

Correct decryption requires the above result to match the value M1+2 = M1+ M2mod t, where M1+2 is the modulo t-reduced final polynomial. Let’s define 𝜖 = q t q t = q t Δ. Given q t, 𝜖 is a decimal value between [0,1). Now, we can re-write the above decryption term as follows:

Δ(M1+ M2) + E1+ E2mod q Δ mod t

(q t 𝜖) (M1+ M2) + E1+ E2mod q Δ mod t applying Δ = q t = q t 𝜖

= (q t 𝜖) (M1+2+ t K) + E1+ E2mod q Δ mod t

where t K represents the t-multiple overflows generated by the modulo addition of M1+ M2

= q t M1+2𝜖 M1+2+ q t t K 𝜖 t K + E1+ E2mod q Δ mod t

= q t M1+2𝜖 M1+2𝜖 t K + E1+ E2mod q Δ mod t

since q t t = q, and q K mod q = 0

= q t M1+2+ 𝜖 M1+2𝜖 M1+2𝜖 t K + E1+ E2mod q Δ mod t

applying q t = q t + 𝜖

= q t M1+2𝜖 t K + E1+ E2mod q Δ mod t

= q t M1+2𝜖 t K + E1+ E2 Δ mod t

applying the special assumption 𝜖 t K + E1+ E2 < Δ 2 to all n coefficients (see §B-2.3.1)

= M1+2+ E1+ E2𝜖 t K Δ mod t since Δ = q t, and M1+2= M1+2

= M1+2mod t applying the special assumption 𝜖 t K + E1+ E2 < Δ 2 to all n coefficients

The above final expression implies that correct decryption (i.e., M1+2) is preserved if the special assumption 𝜖 t K + E1+ E2 < Δ 2 holds (for all n coefficients of the polynomial). At a high level, the greater the ciphertext modulus q becomes compared to the plaintext modulus t, the greater the scaling factor Δ becomes, which can sustain a greater noise budget (E1+ E2) and greater wrapping around t-multiple overflows of the plaintext (𝜖 t K).

This noise bound principle not only applies to homomorphic addition but also to homomorphic multiplication and rotation, which will be explained in later subsections. The term E1+ E2 can be generalized as the cumulative noise across all homomorphic operations (e.g., additions, multiplications, rotations), and the term 𝜖 t K can be generalized as the amount of t-multiple overflows of each coefficient of the plaintext polynomial computed across homomorphic operations.