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§

source

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.

Implementors§