Module arithmetic

Source
Expand description

Arithmetic related re-exported traits and utilities.

Structs§

Coordinates
The affine coordinates of a point on an elliptic curve.
Domain
2-adicity multiplicative domain
Fraction
Contains numerator and denominator for deferred evaluation.
Rotation
Rotation on a group.

Traits§

BatchInvert
Extension trait for iterators over mutable field elements which allows those field elements to be inverted in a batch.
Curve
Efficient representation of an elliptic curve point guaranteed.
CurveAffine
This trait is the affine counterpart to Curve and is used for serialization, storage in memory, and inspection of $x$ and $y$ coordinates.
CurveExt
This trait is a common interface for dealing with elements of an elliptic curve group in a “projective” form, where that arithmetic is usually more efficient.
Field
This trait represents an element of a field.
FieldExt
Trait for fields that can implement Poseidon hash
FieldOps
Operations that could be done with field elements.
FromUniformBytes
Trait for constructing a PrimeField element from a fixed-length uniform byte array.
Group
This trait represents an element of a cryptographic group.
GroupEncoding
MillerLoopResult
Represents results of a Miller loop, one of the most expensive portions of the pairing function.
MultiMillerLoop
pairing::MultiMillerLoop with std::fmt::Debug.
PrimeCurveAffine
Affine representation of an elliptic curve point guaranteed to be in the correct prime order subgroup.
PrimeField
This represents an element of a non-binary prime field.

Functions§

batch_invert
Batch invert PrimeField elements.
batch_invert_and_mul
Batch invert PrimeField elements and multiply all with given coefficient.
fe_from_big
Convert a BigUint into a PrimeField .
fe_from_limbs
Convert LIMBS limbs into a PrimeField, assuming each limb contains at most BITS.
fe_to_big
Convert a PrimeField into a BigUint.
fe_to_fe
Convert a PrimeField into another PrimeField.
fe_to_limbs
Convert a PrimeField into LIMBS limbs where each limb contains at most BITS.
inner_product
Compute inner product of 2 slice of Field.
modulus
Modulus of a PrimeField
powers
Returns iterator that yields scalar^0, scalar^1, scalar^2…
root_of_unity
Root of unity of 2^k-sized multiplicative subgroup of PrimeField by repeatedly squaring the root of unity of the largest multiplicative subgroup.

Derive Macros§

PrimeField
Derive the PrimeField trait.