Crate sunscreen_math

Source
Expand description

This crate contains a set of math structures and operations for working with FHE and ZKPs.

Modules§

combination
Functions related to combinatorics
field
Traits for working with fields
geometry
Functions and data structures related to geometry
poly
Traits and types for performing arithmetic with polynomials.
ring
Traits and types for performing arithmetic over rings.
security
Functions related to calculating security and correctness parameters.
stats
Statistics functions

Enums§

Error
Errors that can occur in this crate.

Traits§

ModSwitch
Methods for switching elements between finite rings.
One
For an algebraic structure, this defines the multiplicative identity.
ToBytes
Zero
For an algebraic structure, this defines the additive identity.

Attribute Macros§

refify_binary_op
This trait auto impls all combinations of borrowed and owned for binary std::ops traits. To use this, you must impl std::ops::Op<&T> for &T and this macro will auto create the other traits to call your impl by borrowing the rhs or self as appropriate.

Derive Macros§

BarrettConfig
Derive the config for a ring over Z_q using Barrett reductions for multiplication modulo q.