Pro7ech
940742ce6c
Added more serialization tests + generalize methods to any n
2025-08-13 15:28:52 +02:00
Jean-Philippe Bossuat
068470783e
Fix compressed encryptions & add GGSW compressed encryption ( #67 )
...
* Added decompress test
* updated encryption sampling & fixed bug in glwe -> lwe test
* Added GGSW compressed encryption
2025-08-13 09:45:44 +02:00
Jean-Philippe Bossuat
9aa4b1f1e2
Dev serialization ( #64 )
...
* Added compressed serialization for GLWECiphertext + Ciphertext decompression
* Added compressed serialization for GGLWECiphertext & GLWESwitchingkey
* generalized automorphism test
* Removed ops on scalar_znx, replaced by as_vec_znx/as_vec_znx_mut and then call op on vec_znx
* Added tests for automorphism key encryption
* Added tensorkey compressed
* added ggsw compressed
2025-08-12 17:43:28 +02:00
Jean-Philippe Bossuat
0e0745065e
Add Hardware Abstraction Layer ( #56 )
2025-08-08 19:22:42 +02:00
Jean-Philippe Bossuat
07a1d7227e
More fixes
2025-07-15 20:18:45 +02:00
Jean-Philippe Bossuat
a8e8743b50
Various fixes
2025-07-15 20:09:37 +02:00
Jean-Philippe Bossuat
ff84e7e859
Revert "Fix glwe/test_fft64/encrypt_sk for case k_pt < basek"
...
This reverts commit 30b5edc536 .
2025-07-15 19:51:21 +02:00
Jean-Philippe Bossuat
90bb0ba60f
Merge remote-tracking branch 'origin/main' into jay/fhe-vm-fixes
2025-07-15 17:46:56 +02:00
Jean-Philippe Bossuat
52a6a130a5
Fixes after meeting
2025-07-11 13:03:11 +02:00
Janmajaya Mall
790b2c2d91
Merge branch 'dev_blind_rotate' into jay/fhe-vm-fixes
2025-07-09 16:54:00 +05:30
Janmajaya Mall
64edc869d0
Two changes:
...
- Fix setting `k` in `GlweOps`
- Improve GLWEPacker API avoid accumulating beyond limit (#50 )
2025-07-09 16:23:56 +05:30
Jean-Philippe Bossuat
38df06f7ab
Fixed lut generation
2025-07-08 18:50:04 +02:00
Jean-Philippe Bossuat
0e65df9795
export blind rotation
2025-07-08 17:00:50 +02:00
Jean-Philippe Bossuat
2e0e7e11b4
Enforce extension factor to be a power of two
2025-07-08 13:54:20 +02:00
Jean-Philippe Bossuat
af5bbbb55d
fixed modulus switching rounding
2025-07-08 13:48:51 +02:00
Jean-Philippe Bossuat
f7c94cd84a
fixed standard binary cggi blind rotation & fixed GLWECiphertext::external_product_scratch_space returning too small values
2025-07-08 13:37:35 +02:00
Jean-Philippe Bossuat
992cb3fa37
Added missing tests for CGGI & added standard blind rotation
2025-07-08 13:23:38 +02:00
Jean-Philippe Bossuat
5234c3fc63
Added LWE-GLWE conversion & LWE Keyswitch, improved LUT generation
2025-07-08 12:49:24 +02:00
Janmajaya Mall
b99f43aa0f
Make GLWECiphertextToRef/{ToMut} implement Infos
2025-07-08 13:53:43 +05:30
Janmajaya Mall
463731948d
Bug fixes
...
- fixed `encoding.rs/decode_coeff_i64` for the case `k < basek2`
- `glwe/external_product.rs/external_product_scratch_space` did not allocate enough space for [`a_dft`](829b8be610/core/src/glwe/external_product.rs (L83) ) when `k_out < k_ggsw`. Fixed by replacing `in_size` with `ggsw_size`.
- `glwe/ops.rs/add` sets `basek` and `k`of `self` GLWECiphertext whic is invalid because the `size` which depends on `inner` data remains unchanged.
- (not a fix) expose `backend` from `core`.
2025-07-06 12:40:08 +05:30
Janmajaya Mall
30b5edc536
Fix glwe/test_fft64/encrypt_sk for case k_pt < basek
2025-07-04 17:32:19 +05:30
Jean-Philippe Bossuat
e8454cd5f1
small fix on scratch space size
2025-07-03 11:39:46 +02:00
Jean-Philippe Bossuat
81fb710165
wip on extended br + bug fixing
2025-07-03 11:38:43 +02:00
Jean-Philippe Bossuat
c98bf75b61
Fixed lut & added test for lut
2025-07-02 12:25:22 +02:00
Jean-Philippe Bossuat
52154d6f8a
wip CGGI BR for extended LUT
2025-06-20 11:00:04 +02:00
Jean-Philippe Bossuat
4c1a84d702
Added support for arbitrary extended LUT
2025-06-19 16:33:47 +02:00
Jean-Philippe Bossuat
6a006b442a
working block binary BR
2025-06-18 22:23:32 +02:00
Jean-Philippe Bossuat
829b8be610
wip on BR + added enc/dec for LWE
2025-06-18 17:34:07 +02:00
Jean-Philippe Bossuat
e8cfb5e2ab
Reorganized other crates
2025-06-17 12:39:36 +02:00
Jean-Philippe Bossuat
4d4b43a4e5
Re-organized code for glwe testing
2025-06-17 12:12:12 +02:00
Jean-Philippe Bossuat
989ea077a9
Code organisation for glwe
2025-06-17 12:12:12 +02:00
Jean-Philippe Bossuat
ec4253bb1c
Added LWESecret
2025-06-17 12:10:56 +02:00
Jean-Philippe Bossuat
d5dc9e6902
Fixed block binary secret generation & added CGGI blind rotation key generation
2025-06-17 12:10:56 +02:00
Jean-Philippe Bossuat
d826fcd5c8
Added binary key distributions
2025-06-17 12:10:56 +02:00
Jean-Philippe Bossuat
c77a819653
Added mat_znx_dft_mul_x_pow_minus_one
2025-06-17 12:10:56 +02:00
Jean-Philippe Bossuat
4455afdabd
factored out blackbox in benchmarks
2025-06-17 09:52:15 +02:00
Jean-Philippe Bossuat
b93e011347
fixed automorphism on gglwe for k_out < k_in
2025-06-17 09:46:22 +02:00
Jean-Philippe Bossuat
ca19def72f
typo
2025-06-17 09:33:35 +02:00
Jean-Philippe Bossuat
4753b73cc7
removed div_ceil
2025-06-17 09:33:04 +02:00
Jean-Philippe Bossuat
e6ec588d6d
typo
2025-06-17 09:20:36 +02:00
Jean-Philippe Bossuat
655b22ef21
Small optimization + more fixes
2025-06-11 14:31:32 +02:00
Jean-Philippe Bossuat
a673b84047
various bug fixes
2025-06-11 14:21:48 +02:00
Jean-Philippe Bossuat
113231da55
fixed all tests
2025-06-08 17:57:04 +02:00
Jean-Philippe Bossuat
159cd8025f
Added API in poulpy for updated vmp_add (+tests)
2025-06-05 19:18:48 +02:00
Jean-Philippe Bossuat
de4a5e9bfc
refactored secret key
2025-05-30 20:19:04 +02:00
Jean-Philippe Bossuat
82810a87c8
Added license
2025-05-30 11:48:04 +02:00
Jean-Philippe Bossuat
f9440c5407
Updated arguments to get scratch space size for ops
2025-05-30 09:05:07 +02:00
Jean-Philippe Bossuat
8209fb4e40
Replaced manual core structs scratch allocation by new API on Scratch
2025-05-28 15:59:49 +02:00
Jean-Philippe Bossuat
f2b671329d
Added support for packing GLWE
2025-05-28 15:20:06 +02:00
Jean-Philippe Bossuat
f58d06ddf5
Added bytes_of to structs that can be created through the trait extension of Scratch
2025-05-28 15:19:52 +02:00