bb3288f211
tfhe: get rid of constant generics
2025-08-13 19:31:43 +00:00
2a9cbc71de
gfhe: get rid of constant generics
2025-08-12 17:10:20 +00:00
9e90f094a9
group ring params under a single struct
2025-08-12 12:09:51 +00:00
78324a3a8d
bfv: get rid of constant generics (reason in previous commit)
2025-08-11 19:35:48 +00:00
d484f29b17
arith: get rid of constant generics. Reason:
...
using constant generics was great for allocating the arrays in the
stack, which is faster, but when started to use bigger parameter values,
in some cases it was overflowing the stack. This commit removes all the
constant generics in all of the `arith` crate, which in some cases slows
a bit the performance, but allows for bigger parameter values (on the
ones that affect lengths, like N and K).
2025-08-11 18:18:58 +00:00
13abadf6e1
tfhe: add bootstrapping impl
...
add initial version of bootstrapping implementation
2025-08-03 21:24:17 +00:00
8e2e522f8a
arith/torus: add left_rotate & mod_switch
2025-08-02 21:42:36 +00:00
4f89caef1e
fit T64 into the 'Ring' trait, this is to use it in tfhe instead of using Tn<1> which is more tedious
2025-07-27 19:22:41 +00:00
81306edf05
fusion TFHE to use GFHE underthehood
2025-07-24 14:32:44 +00:00
87da85a035
adapt gfhe to work with Ring trait, so that it can work with Rq & Tn (for TFHE)
2025-07-24 16:40:57 +02:00
4790fdbb3b
tfhe: ciphertext-plaintext multiplication
2025-07-22 15:42:24 +00:00
0ca73ac505
(TFHE): add TLWE encryption & decryption
2025-07-22 14:59:56 +00:00
d60eb1dff1
add discretized torus & 𝕋_<N,q>[X]; organize a bit arith crate
2025-07-22 06:22:06 +00:00
188bc7fa7f
implement GLWE key switching
2025-07-16 21:02:07 +02:00
4a082b9187
add modulus switching to GLWE ciphertexts (and Zq,Rq)
2025-07-16 18:15:51 +02:00
92b6f50ccc
add GLWE ciphertext-ciphertext addition, and ciphertext-plaintext addition
2025-07-09 17:52:59 +02:00
2998f1761c
generalized-fhe: add GLWE encryption & decryption
2025-07-09 17:17:19 +02:00
17b1e9ed43
add Ring trait, adapt R & Rq to it; add TR (tuple_ring)
2025-07-09 16:44:39 +02:00
267422a3b5
add arith::{complex, matrix} primitives
2025-07-04 19:44:48 +02:00
b968310ce1
polish, tensor & mul with relinearization works for some parameters choice
2025-06-22 23:04:28 +02:00
19457c98dd
mv arithmetic arith
2025-06-22 19:15:14 +02:00