Trait ff::WithSmallOrderMulGroup
source · pub trait WithSmallOrderMulGroup<const N: u8>: PrimeField {
const ZETA: Self;
}
Expand description
The subset of prime-order fields such that (modulus - 1)
is divisible by N
.
If N
is prime, there will be N - 1
valid choices of Self::ZETA
. Similarly to
PrimeField::MULTIPLICATIVE_GENERATOR
, the specific choice does not matter, as long
as the choice is consistent across all uses of the field.
Required Associated Constants§
sourceconst ZETA: Self
const ZETA: Self
A field element of small multiplicative order $N$.
The presense of this element allows you to perform (certain types of) endomorphisms on some elliptic curves.
It can be calculated using SageMath as
GF(modulus).primitive_element() ^ ((modulus - 1) // N)
.
Choosing the element of order $N$ that is smallest, when considered
as an integer, may help to ensure consistency.
Object Safety§
This trait is not object safe.