J-B Orfila
b69222df1c
doc: updated examples
2023-10-03 19:51:59 +02:00
J-B Orfila
934a78496a
doc: updating doc for v0.4
2023-10-03 15:26:12 +02:00
tmontaigu
6d49993629
WIP add FheInt{8,16,32,64,128,256}
2023-09-28 10:48:34 +02:00
tmontaigu
66a193eaca
WIP lol
2023-09-28 10:44:16 +02:00
tmontaigu
a5fa497096
WIP
2023-09-28 09:56:24 +02:00
tmontaigu
7e3bf8e08a
WIP
2023-09-27 19:14:24 +02:00
tmontaigu
9cb98cca2e
feat(integer): add default signed_div_rem
2023-09-27 19:09:52 +02:00
tmontaigu
23d25a8281
feat(integer): add encryption of compressed signed radix
2023-09-27 19:09:25 +02:00
tmontaigu
ef26dc0e9e
feat(integer): make compact ciphertext compatible with signed
2023-09-27 19:08:39 +02:00
tmontaigu
2e2f1200dc
feat(integer): add sign extend fn for SignedRadixCiphertext
2023-09-27 09:00:19 +02:00
tmontaigu
0a27ed44f7
chore(integer): impl RecomposableSignedInteger for StaticSignedBigInt
2023-09-26 18:52:14 +02:00
tmontaigu
37a47e63a4
fix(integer): StaticSignedBigInt right shift
2023-09-26 18:52:14 +02:00
tmontaigu
417feb6a20
chore(hlapi): remove unused keychain_member from macro
2023-09-26 18:52:13 +02:00
tmontaigu
37be751188
fix(integer): is_neg/sub/add possible
...
The way we did the is_neg/add/sub possible at the integer level was
incorrect in two ways.
1) We simply called the is_neg/add/sub_possible from
the shortint impl on each block as if the were independant.
However that is not the case, and to the check did not reflect
actual computation.
2) We checked that we did not go beyond max degree on each block,
However, a more correct approach would be to check that adding
the potential carry from preceding block would not exceeding the
current block max capacity.
2023-09-26 16:02:15 +02:00
sarah el kazdadi
2580a834af
feat(core): optimize monic polynomial operations in pbs
2023-09-26 15:02:33 +02:00
David Testé
a029bd878e
chore(ci): fix file exclusion for coverage reports
2023-09-26 08:58:36 +02:00
David Testé
400e7930b6
chore(ci): fix options typos for new tarpaulin version
2023-09-26 08:58:36 +02:00
David Testé
40d07c6bc3
chore(ci): speed-up boolean coverage
...
This is done by reducing the number of parameters set run in tests.
Using the keycache for the key switching key and public key tests also
help to reduce total run duration.
2023-09-26 08:58:36 +02:00
Mayeul@Zama
9dd2d39f1c
style(global): fix typos
2023-09-25 17:27:29 +02:00
dependabot[bot]
4045a3bc2f
chore(deps): bump tj-actions/changed-files from 39.0.2 to 39.2.0
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 39.0.2 to 39.2.0.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](6ee9cdc581...8238a41032 )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-25 10:30:28 +02:00
dependabot[bot]
b4ffeccd46
chore(deps): bump actions/checkout from 4.0.0 to 4.1.0
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](3df4ab11eb...8ade135a41 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-25 10:30:22 +02:00
tmontaigu
7fe3ad3b6e
feat(integer): improve scalar_mul
...
This changes the algorithm for scalar_mul.
The new algorithm allows to remove a lot of work.
For small precisions (16, 32, 64) the gains are in range 5%-10%
for higher precisions the gains are 25%-50%.
This also changes the mul to use the functions that sums many
clean ciphertexts in parallel. For mul, there is only a 5%-10%
improvements for 128bits and 256bits mul.
2023-09-22 15:45:07 +02:00
tmontaigu
7fdd4f9532
chore(integer): add default signed bitand/or/xor tests
2023-09-22 14:50:27 +02:00
Arthur Meyre
81eef39ddb
feat(core): add parallel variant of extract_lwe_sample_from_glwe
...
- allows to quickly extract all coefficients packed in a GLWE cipehrtext
2023-09-22 10:55:02 +02:00
tmontaigu
b6459e3cda
fix(integer): fix signed div_rem test for 0/0
2023-09-21 21:38:16 +02:00
Arthur Meyre
f2ef78c348
refactor(core): simplify closest_representable and pbs_modulus_switch
...
- both code were selecting the bit below the last representable bit,
extracted it and then added it to the bit above, the same effect can be
achieved by adding a 1 at the bit below the last representable bit
- update closest_representable to use an approach more like
pbs_modulus_switch yielding assembly with 42% less instructions (12 -> 7)
2023-09-21 15:54:53 +02:00
Mayeul@Zama
aef8f31621
chore(deps): update cargo dependencies
2023-09-21 15:11:13 +02:00
sarah el kazdadi
df78d178da
fix(integer): replace unnecessary unsafe code in integer shift/add
2023-09-21 11:02:41 +02:00
Arthur Meyre
9297a886a4
chore(docs): fix docstring about encryption key choice
2023-09-20 16:02:55 +02:00
tmontaigu
28b4f91a32
fix(integer): only propagate if necessary after trimming
...
By unconditionally propagating carries after trimming
we would sometimes do work for nothing, and as propagating
carries is not cheap at all it would degrade performances.
So only propagate when necessary
2023-09-20 15:57:33 +02:00
David Testé
04fb46e41b
chore(ci): print security level in parameters check
...
The devo profile is used to speed up the compilation phase.
2023-09-20 15:33:39 +02:00
David Testé
53da809f37
chore(ci): reduce max dimension threshold in lattice estimator
2023-09-20 09:39:50 +02:00
David Testé
723910c669
chore(ci): fix end-of-file newlines
2023-09-20 09:39:50 +02:00
David Testé
8ecf8879fb
chore(ci): add end-of-file newline checks recipe
2023-09-20 09:39:50 +02:00
tmontaigu
2427f744f8
feat(integer): add unchecked implementation of signed ciphertext
2023-09-20 08:50:15 +02:00
Arthur Meyre
422e1f23d5
feat(core): add GLWE linear algebra primitives
...
- add appropriate tests and doctest
2023-09-19 11:41:16 +02:00
sarah el kazdadi
30a5ade17f
fix(csprng): enable target_feature attributes for functions using simd intrinsics
2023-09-19 09:19:47 +02:00
tmontaigu
6cdd41c22f
fix(integer): fix is_neg_possible
...
shortint's is_neg_possible did not check the degree on the correct value.
It check the degree on the value that should be added to the next block
not on the value that actually becomes the degree.
integer's is neg possible had the same problem so we also fix it
and also check the next block can 'receive' the value that should be added to it.
Our tests did not catch that as they were not testing non empty carry case
2023-09-18 17:19:48 +02:00
Mayeul@Zama
f369bec394
feat(core): add par_convert_standard_lwe_multi_bit_bootstrap_key_to_fourier
2023-09-18 14:35:06 +02:00
Mayeul@Zama
df4e9c69c7
feat(core): add par_convert_bootstrap_key_fourier
2023-09-18 14:35:06 +02:00
Mayeul@Zama
0e3d129906
feat(core): add par_fill_with_forward_fourier
2023-09-18 14:35:06 +02:00
Mayeul@Zama
682e455c94
feat(core): add par_convert_polynomials_list_to_fourier
2023-09-18 14:35:06 +02:00
Mayeul@Zama
b553a68fa9
chore(docs): simplify improved formula in dark market
2023-09-18 09:58:13 +02:00
Mayeul@Zama
be95eadf79
chore(docs): remove fallible directory change
2023-09-18 09:58:13 +02:00
Mayeul@Zama
0213a11a0c
chore(docs): refactor dark market
2023-09-18 09:58:13 +02:00
Mayeul@Zama
413fde3b3b
chore(docs): doc fixes and improvements
2023-09-18 09:58:13 +02:00
sarah el kazdadi
40f8ac9adf
feat(core): replace unsafe simd intrinsics
2023-09-18 09:30:17 +02:00
dependabot[bot]
2ab25c1084
chore(deps): bump rtCamp/action-slack-notify from 2.2.0 to 2.2.1
...
Bumps [rtCamp/action-slack-notify](https://github.com/rtcamp/action-slack-notify ) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/rtcamp/action-slack-notify/releases )
- [Commits](https://github.com/rtcamp/action-slack-notify/compare/v2.2.0...b24d75fe0e728a4bf9fc42ee217caa686d141ee8 )
---
updated-dependencies:
- dependency-name: rtCamp/action-slack-notify
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-18 09:25:56 +02:00
dependabot[bot]
86c62b70e5
chore(deps): bump JS-DevTools/npm-publish from 2.2.1 to 2.2.2
...
Bumps [JS-DevTools/npm-publish](https://github.com/js-devtools/npm-publish ) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/js-devtools/npm-publish/releases )
- [Changelog](https://github.com/JS-DevTools/npm-publish/blob/main/CHANGELOG.md )
- [Commits](5a85faf05d...fe72237be0 )
---
updated-dependencies:
- dependency-name: JS-DevTools/npm-publish
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-18 09:25:49 +02:00
dependabot[bot]
18d790fc26
chore(deps): bump actions-ecosystem/action-add-labels
...
Bumps [actions-ecosystem/action-add-labels](https://github.com/actions-ecosystem/action-add-labels ) from 1.1.0 to 1.1.3.
- [Release notes](https://github.com/actions-ecosystem/action-add-labels/releases )
- [Commits](bd52874380...18f1af5e35 )
---
updated-dependencies:
- dependency-name: actions-ecosystem/action-add-labels
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-18 09:25:38 +02:00