Nicolas Sarlin
cedcbb99e7
chore(core): add len checks for polynomial lists
2025-08-22 09:42:50 +02:00
Arthur Meyre
58e02e56d1
chore: fix some warnings appearing during compilation with 1.89
...
- linked to new lints/warnings for elided lifetimes our old nightly
toolchain does not know about
2025-08-21 18:13:05 +02:00
tmontaigu
d389ea67a1
refactor!: Use NonZero<T> in DataKind
...
Change the type used to store a block count in
DataKind to NonZero. This makes it impossible to store
'empty' kinds such as DataKind::Unsigned(0), DataKind::Signed(0).
Also, when deserializing, if the count is zero and error will be
returned, adding an additional layer of sanitization.
2025-08-21 16:18:28 +02:00
Nicolas Sarlin
8083990c30
chore(zk): prepare tfhe-zk-pok 0.7.1
2025-08-20 16:47:59 +02:00
Petar Ivanov
a77c66244c
fix(core): improve FFT and NTT plan cache locking
...
Instead of always write-locking the plan maps first, read-lock them and
check if the entry for the given size is present. If not, write-lock and
insert it.
That reduces contention on the map lock, allowing multiple threads to
get an already created plan concurrently, without waiting on the write
lock.
Furthermore, use a (polynomial size, modulus) key for the NTT plan map,
avoiding an issue where the user would get the incorrect plan if a
different modulus is used for the same polynomial size.
2025-08-18 16:50:02 +02:00
Nicolas Sarlin
5fa8cc8563
fix(core): use of deprecated rayon repeatn
2025-08-13 15:00:15 +02:00
Arthur Meyre
a7dd071bd4
test(shortint): pbs 128 + compression test with new noise measurement
2025-08-13 09:16:49 +02:00
Arthur Meyre
eb6760a7c8
feat(core): add a primitive to build an LweCiphertextList from an Iterator
2025-08-13 09:16:49 +02:00
Arthur Meyre
7f0838270c
chore(core): relax trait requirements for GLWE encryption/decryption
2025-08-13 09:16:49 +02:00
luory ✞
55eade03e6
chore: fix typo in comment section
2025-08-12 15:38:37 +02:00
Nicolas Sarlin
bc5c2f51ff
fix(bench): store correct pfail from params
2025-08-12 09:44:37 +02:00
Enzo Di Maria
e5e54be4a4
refactor(gpu): moving unchecked_ilog2_async to the backend
2025-08-12 09:05:29 +02:00
Nicolas Sarlin
0aaadf04d9
chore(versionable): bump version to 0.6.1
2025-08-11 16:49:27 +02:00
Mayeul@Zama
4d1b917045
feat(shortint): add multibit noise squashing
2025-08-11 16:30:59 +02:00
Mayeul@Zama
a85b30a7b2
refactor(shortint): change NoiseSquashingPrivateKeyView fields
2025-08-11 16:30:59 +02:00
Mayeul@Zama
81fa0e43ee
feat(core): add conformance for Fourier128LweMultiBitBootstrapKey
2025-08-11 16:30:59 +02:00
Mayeul@Zama
15bc0c6792
style(core): destructure conformance parameters
2025-08-11 16:30:59 +02:00
Mayeul@Zama
8b5de6d57d
feat(core): add support for InputScalar!=OutputScalar for multi_bit_bootstrap
2025-08-11 16:30:59 +02:00
Arthur Meyre
e31333b2c7
feat: add missing into/from_raw_parts functions for compressed KSK material
2025-08-11 13:02:21 +02:00
Arthur Meyre
37ed32cf4f
chore: fix typo in into_raw_parts function
2025-08-11 13:02:21 +02:00
Arthur Meyre
dbc3924989
chore(ci): enable extended types in the docs.rs build
2025-08-08 18:06:29 +02:00
Arthur Meyre
9d4a9fe71e
chore: check packing is possible before packing in integer noise squashing
2025-08-08 10:35:16 +02:00
Enzo Di Maria
d1c417bf71
refactor(gpu): cleaning compression
2025-08-07 09:31:55 +02:00
Enzo Di Maria
852a06b330
refactor(gpu): orpf with grouped processing and for multi-gpu
2025-08-05 09:58:25 +02:00
Mayeul@Zama
5ee5569d0d
chore: remove redundant gpu feature gate
2025-07-31 14:11:33 +01:00
Agnes Leroy
b6e6abb066
chore(gpu): add corner case test for mul
2025-07-31 13:11:29 +01:00
swarnabhasinha
099345df02
fix(api): Add min/max on owned types
2025-07-30 21:33:58 +02:00
Arthur Meyre
fc8063a59b
test: add noise simulation framework for basic operators
...
- test secret key encryption + start of compute atomic pattern in shortint
- only supports classic PBS with drift mitigation currently
2025-07-29 15:29:24 +02:00
Arthur Meyre
65b034ef70
chore(core): update noise formulas
2025-07-29 15:29:24 +02:00
cryptoraph
2aa83c99ea
fix(core_crypto): correct typo in GLWE keyswitch assertion message
2025-07-28 17:09:56 +02:00
bigbear
209a8f1ad9
fix: correct typo in InvalidRangeError message
2025-07-25 17:18:57 +02:00
Mayeul@Zama
09aaa4e045
chore: enable unused_imports lint in doctests
2025-07-23 11:09:23 +02:00
Mayeul@Zama
63203c58aa
refactor(shortint): cleanup decompression key
2025-07-23 10:08:01 +02:00
Maximilian Hubert
981da1d3fc
fix: fix typo
2025-07-18 18:16:52 +02:00
Nicolas Sarlin
0386090048
chore: missing from/into_raw_parts for noise squash comp priv key
2025-07-18 13:34:23 +02:00
tmontaigu
a4cfc12941
chore: add missing into/from_raw_parts for SQCompression
2025-07-17 11:20:30 +02:00
Alex Pikme
82b6f45785
fix: correct tuple element in izip! macro for 7 parameters
2025-07-17 10:54:45 +02:00
tmontaigu
82cc9d3884
docs: add UpgradeKeyChain
2025-07-16 17:57:10 +02:00
Enzo Di Maria
a5c876fdac
refactor(gpu): creating CudaScalarDivisorFFI for storing decomposed scalars and their metadata
2025-07-16 07:59:20 +01:00
Nicolas Sarlin
2d8ea2de16
feat(shortint): add pbs_order method to AtomicPatternKind
2025-07-15 17:35:47 +02:00
Andrei Stoian
494e0e0601
chore(gpu): add short op sequence test for GPU on PRs
2025-07-15 16:03:45 +02:00
tmontaigu
c13587b713
fix(integer): fix non-parallel prop with noisy block
2025-07-15 12:43:41 +02:00
tmontaigu
8dea5cf145
feat(integer): truncate carry prop on trivial zeros
...
This changes the full_propagate_parallelized to not propagate
most significant blocks which are trivial zeros.
This is a small performance improvement, especially interesting
when having a bunch of FheUintX data, casted to FheUintY (Y > X)
and summing them (e.g. n FheUint2, casted to FheUint32 and doing the
sum to get the result on 32 bit)
2025-07-15 12:43:41 +02:00
Enzo Di Maria
e376df2fa4
refactor(gpu): moving unsigned_scalar_div_rem and signed_scalar_div_rem to the backend
2025-07-10 09:24:13 +02:00
Arthur Meyre
bd739c2d48
chore(docs): uniformize paths in docs to use "-" instead of "_"
...
- this is to avoid conflicts with gitbook
2025-07-09 14:36:04 +02:00
Pedro Alves
9960f5e8b6
fix(gpu): Fix expand bench on multi-gpus
2025-07-09 09:17:55 +01:00
Nicolas Sarlin
c7ec835e5f
chore: adds params_to_file for noise squashing compression
2025-07-07 17:31:28 +02:00
Agnes Leroy
075b2259d3
chore(gpu): reduce ci time by reducing testing of unused parameters
2025-07-07 16:30:35 +01:00
Andrei Stoian
97ce0f6ecf
feat(gpu): update GPU documentation
2025-07-07 09:44:43 +02:00
Nicolas Sarlin
b6c21ef1fe
docs: describe noise squashed compression
2025-07-07 09:32:51 +02:00