From 5a8bec76bc80c911904b5c50fbd2bdb17b81f931 Mon Sep 17 00:00:00 2001 From: Brian Lawrence Date: Tue, 9 Jul 2024 12:36:07 -0700 Subject: [PATCH] Preexplain role of Flatten --- easy/src/fhe3.typ | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easy/src/fhe3.typ b/easy/src/fhe3.typ index f4ee2fd..d5ed9e3 100644 --- a/easy/src/fhe3.typ +++ b/easy/src/fhe3.typ @@ -78,9 +78,9 @@ multiply two bits, you just multiply (matrix multiplication) the ciphertexts: $ C_1 C_2 upright(bold(v)) approx C_1 (mu_2 upright(bold(v))) = mu_2 C_1 upright(bold(v)) approx mu_2 mu_1 upright(bold(v)) = mu_1 mu_2 upright(bold(v)) . $ -(At this point you might be concerned about this symbol $approx$ and +At this point you might be concerned about this symbol $approx$ and what happens to the size of the error. That’s an important issue, and -we’ll come back to it.) +we'll resolve it with the help of a special operation called "Flatten." Anyway, once you have AND and NOT, you can build arbitrary logic gates – and this is what we mean when we say you can perform arbitrary