Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(doc): add a doc page about parameters #2081

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

nsarlin-zama
Copy link
Contributor

No description provided.

Copy link
Member

@IceTDrinker IceTDrinker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks that's a very good starting point, I think we'll add some information about supporting keywitching to newer versions for a few select parameters


The security and efficiency of the FHE algorithms is impacted by the choice of cryptographic parameters.

All parameter sets provide at least 128-bits of security according to the [Lattice-Estimator](https://github.com/malb/lattice-estimator). The recommended parameters for the CPU have an error probability for using programmable bootstrapping equal to $$2^{-128}$$. This error probability is due to the randomness added at each encryption (see [here](../getting\_started/security\_and\_cryptography.md) for more details about the encryption process).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

error probabilty <= 2^-128 not equal, the explanation about the pfail could maybe say "due to the noisy nature of FHE computations" and still link to the page you linked

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

- `TUNIFORM`: the tweaked uniform noise distribution is used
- `2M128`: the probability of failure for the bootstrap is $$2^{-128}$$

For convenience, aliases are provided for the most used sets of parameters. They are found in the module `tfhe::shortint::parameters::aliases`. But keep in mind that these parameters are not stable in time and will always be updated to the latest **TFHE-rs** version.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and indicate that aliases should not be used for production use cases and only used for prototyping

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@nsarlin-zama nsarlin-zama force-pushed the ns/doc/parameters branch 2 times, most recently from 3992626 to 8f2c64d Compare February 20, 2025 15:09
@nsarlin-zama nsarlin-zama changed the base branch from main to doc-regroup February 20, 2025 15:10
@IceTDrinker IceTDrinker force-pushed the doc-regroup branch 4 times, most recently from 50d3e1d to 37df548 Compare February 20, 2025 15:43
Base automatically changed from doc-regroup to main February 20, 2025 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants