C-1 GLWE Ciphertext-to-Ciphertext Addition

- Reference: TFHE Deep Dive - Part II - Encodings and linear leveled operations [8]

Suppose we have two GLWE ciphertexts encrypting two different plaintexts M1,M2:

𝖦𝖫𝖶𝖤S,σ(ΔM1) = C1 = (A11,A21,... Ak11,B1) Rn,qk+1

𝖦𝖫𝖶𝖤S,σ(ΔM2) = C2 = (A12,A22,... Ak12,B2) Rn,qk+1

Let’s define the following TFHE ciphertext addition operation:

C1+ C2 = (A11+ A12, A21+ A22, ... Ak11+ Ak12, B1+ B2)

Then, the following is true:

Summary C-1 GLWE Homomorphic Addition

𝖦𝖫𝖶𝖤S,σ(ΔM1) + 𝖦𝖫𝖶𝖤S,σ(ΔM2)

= ({Ai1}i=0k1, B1) + ({Ai2}i=0k1, B2)

= ({Ai1+ Ai2}i=0k1, B1+ B2)

= 𝖦𝖫𝖶𝖤S,σ(Δ(M1+ M2))

This means that adding two TFHE ciphertexts and decrypting the resulting ciphertext gives the same effect as adding two original (Δ-scaled) plaintexts: ΔM1+ ΔM2 = Δ (M1+ M2).

Proof.

1.
Define the following notations:
A13 = A11+ A12
A23 = A21+ A22
...
Ak13 = Ak11+ Ak12
E3 = E1+ E2
B3 = B1+ B2
2.
Derive the following:
B3 = B1+ B2
= i=0k1(Ai1Si) + Δ M1+ E1+ i=0k1(Ai2Si) + Δ M2+ E2
= i=0k1((Ai1+ Ai2) Si) + Δ (M1+ M2) + (E1+ E2) # commutative and distributive rules
= i=0k1(Ai3Si) + Δ (M1+ M2) + E3
3.
Since B3 = i=0k1(Ai3Si) + Δ (M1+ M2) + E3,

this means that (A13,A23,... Ak13,B3) form the ciphertext: 𝖦𝖫𝖶𝖤S,σ(Δ (M1+ M2)).

4.
Thus,
= 𝖦𝖫𝖶𝖤S,σ(ΔM1) + 𝖦𝖫𝖶𝖤S,σ(ΔM2)
= (A11+ A12, A21+ A22, ... Ak11+ Ak12, B1+ B2)
= (A13,A23,... Ak13,B3)
= ({Ai3}i=0k1,B3)
= 𝖦𝖫𝖶𝖤S,σ(Δ(M1+ M2))

C-1.1 Discussion