Commit Graph

2992 Commits

Author SHA1 Message Date
Arthur Meyre
616c2db165 feat(core): add pbs 128 noise formulas 2025-06-12 08:44:17 +02:00
Arthur Meyre
8ff6d52597 test(shortint): add pfail measurement for full compression + AP 2025-06-12 08:44:16 +02:00
Arthur Meyre
b822cf8c57 test(shortint): slightly change decryption logic to also get the padding bit out 2025-06-12 08:44:16 +02:00
Arthur Meyre
b7e044feb0 test(shortint): add pfail check for first part of compression 2025-06-12 08:44:15 +02:00
Arthur Meyre
a345da5802 test(shortint): add first part of the compression AP 2025-06-12 08:44:14 +02:00
Arthur Meyre
0f6da32e58 chore: rename helper function to match test usage 2025-06-12 08:44:14 +02:00
Arthur Meyre
89ba2a8950 feat(core): add noise formula for packing keyswitch 2025-06-12 08:44:13 +02:00
Arthur Meyre
55602ce5cb test(shortint): add pfail test for PKE -> KS -> (DP -> KS Compute) -> MS 2025-06-12 08:44:13 +02:00
Arthur Meyre
d9b20d0037 refactor(test): also accept PKE -> KS to big -> DP -> KS -> MS 2025-06-12 08:44:12 +02:00
Arthur Meyre
9658be7eb7 test(shortint): add noise check for PKE -> KS to small key + MS 2025-06-12 08:44:11 +02:00
Arthur Meyre
8742aa38ab wip: hotfix for borrow mut error, this needs a design pass/reflection 2025-06-12 08:44:11 +02:00
Arthur Meyre
5cc0adc2ff feat: add noise formulas for TUniform 132 bits of security 2025-06-12 08:44:10 +02:00
Arthur Meyre
ce814a7ce1 test(hl): add noise check for CompactPublicKey encryption w/ TUniform param 2025-06-12 08:44:10 +02:00
Arthur Meyre
2218d0e5bb test(shortint): add pfail test for the classic AP 2025-06-12 08:44:09 +02:00
Arthur Meyre
62ebff98e3 refactor: prepare code factorization for noise and pfail 2025-06-12 08:44:09 +02:00
Arthur Meyre
3c833af77f test: add shortint atomic pattern noise measurement 2025-06-12 08:44:08 +02:00
Arthur Meyre
ba5e84e9e4 test(hl): test encryption noise of FheUint ciphertext in HL API 2025-06-12 08:44:07 +02:00
Nicolas Sarlin
0745524bc7 chore(zk)!: store inside the pke params the supported zk scheme
BREAKING_CHANGE:
- Zk for compact PKE now requires dedicated encryption parameters
2025-06-12 08:44:06 +02:00
Nicolas Sarlin
8024753be0 fix(zk): test failed with trivial ct equal to 0 2025-06-11 18:40:32 +02:00
Nicolas Sarlin
506fdfbdd1 chore(zk): use Shake256 XoF instead of rand to generate gamma values 2025-06-11 18:03:12 +02:00
David Testé
a0e08b80e6 chore(ci): use gh cli instead of api calls done with curl
This refactor simplifies reading of data_pr_close workflow.
2025-06-11 16:55:37 +02:00
Enzo Di Maria
d06c3e3926 refactor(gpu): moving sub_assign_async to backend 2025-06-11 16:34:46 +02:00
Arthur Meyre
2bf9d25402 feat: add multi bit pbs 128 with GGSW preparation in FFT domain 2025-06-11 14:47:05 +02:00
Arthur Meyre
fe73f101cc test: add test for an adapted parameter set for std multi bit pbs 128 2025-06-11 14:47:05 +02:00
Arthur Meyre
d12de58284 feat: add std pbs 128 2025-06-11 14:47:05 +02:00
Arthur Meyre
d4ea8cd85f feat: add parallel conversion fo Fourier 128 for LweMultiBitBootstrappigKey 2025-06-11 14:47:05 +02:00
Arthur Meyre
64f2befd6c feat: add Fourier 128 variant of LweMultiBitBootstrappingKey 2025-06-11 14:47:05 +02:00
Arthur Meyre
ce372dcea9 refactor(core): split the LWE multi bit bsk entity file
- to prepare for fft128 variant addition
2025-06-11 14:47:05 +02:00
Agnes Leroy
46b4958c9c feat(gpu): add memory tracking functions for booleans 2025-06-11 13:32:06 +02:00
Agnes Leroy
b25bcbc607 feat(gpu): add mem tracking for eq/ne 2025-06-11 13:32:06 +02:00
Agnes Leroy
5dfacc7975 feat(gpu): add memory tracking for compression and decompression 2025-06-11 11:49:09 +02:00
Guillermo Oyarzun
3d857f62cc refactor(gpu): return trivial indexes after ms noise reduction 2025-06-11 11:28:10 +02:00
Nicolas Sarlin
54c314cd71 chore(ci): always run zk tests 2025-06-11 10:29:53 +02:00
Nicolas Sarlin
38a9853140 chore(zk): check crs conformance in backward compat test 2025-06-11 10:29:53 +02:00
Nicolas Sarlin
360097d70e chore(zk): use random seed in tests 2025-06-11 10:29:53 +02:00
Nicolas Sarlin
c94a76a85a fix(zk): overflow in noise tests 2025-06-11 10:29:53 +02:00
Nicolas Sarlin
be1ade6dd2 chore(zk)!: use 8 bytes dsep and 128bits SID in hash functions
BREAKING_CHANGE:
- PublicParams::from_vec methods have been updated to take 8 bytes dsep and an
  SID. CRS generated before this PR are still supported.
2025-06-11 10:29:53 +02:00
Pedro Alves
53845b298a fix(gpu): fix the packing keyswitch buffer not being allocated on large parameter sets 2025-06-11 08:58:09 +02:00
David Testé
11c0340eca chore(bench): plug server-side proof in zk benchmarks 2025-06-10 18:00:39 +02:00
Baptiste Roux
5e966a3d78 chore(hpu): changes based on code review 2025-06-10 17:43:35 +02:00
Baptiste Roux
443e02215f feat(hpu): Add recent IOp in integer benchmarks 2025-06-10 17:43:35 +02:00
Baptiste Roux
3c632c06ba chore(hpu): Fix/Changes to be compliant with CI 2025-06-10 17:43:35 +02:00
Baptiste Roux
833b593845 feat(hpu): Add support for Lead/Trail/Count/ilog2 in high-level API 2025-06-10 17:43:35 +02:00
JJ-hw
a20c90b090 feat(hpu): Add ILOG2/COUNT0/COUNT1/LEAD0/LEAD1/TRAIL0/TRAIL1 IOp.
Those IOp are tested within new bitcnt category
2025-06-10 17:43:35 +02:00
Baptiste Roux
71e86f0522 feat(hpu): Add support for Shift/Rotate in high-level API
Scalar version not supported yet
2025-06-10 17:43:35 +02:00
Baptiste Roux
cb45f7f429 feat(hpu): Add Rot/Shift IOp
Proper implementation of Scalar version need update in the firmware.
And thus it wasn't done yet.
2025-06-10 17:43:35 +02:00
Baptiste Roux
05a51d47fa feat(hpu): Add check with Pbs gid definition
Currently it's a runtime check, but prevent attribution of same Gid for two != lut
2025-06-10 17:43:35 +02:00
Baptiste Roux
2eb1ccd128 feat(hpu): Add support for DivRem in high-level API 2025-06-10 17:43:35 +02:00
JJ-hw
b7a518b9ee chore(hpu): Cleanup code following clippy advices
Also applied cargo fmt
2025-06-10 17:43:35 +02:00
JJ-hw
39faca219f feat(hpu): Add modulo. Note: not optimized version. Use same algo as the division. 2025-06-10 17:43:35 +02:00