Struct ark_bn254::fr::FrParameters[][src]

pub struct FrParameters;

Trait Implementations

Let N be the size of the multiplicative group defined by the field. Then TWO_ADICITY is the two-adicity of N, i.e. the integer s such that N = 2^s * t for some odd integer t. Read more

2^s root of unity computed by GENERATOR^t

An integer b such that there exists a multiplicative subgroup of size b^k for some integer k. Read more

The integer k such that there exists a multiplicative subgroup of size Self::SMALL_SUBGROUP_BASE^k. Read more

GENERATOR^((MODULUS-1) / (2^s * SMALL_SUBGROUP_BASE^SMALL_SUBGROUP_BASE_ADICITY)) Used for mixed-radix FFT. Read more

MODULUS = 21888242871839275222246405745257275088548364400416034343698204186575808495617

R = pow(2, 320) % MODULUS = 6350874878119819312338956282401532410528162663560392320966563075034087161851

R2 = R * R % MODULUS = 944936681149208446651664254269745548490766851729442924617792859073125903783

INV = (-MODULUS) ^ {-1} % pow(2, 64) = 14042775128853446655

GENERATOR = 5

(MODULUS - 1)/2 = 10944121435919637611123202872628637544274182200208017171849102093287904247808

T = (MODULUS - 1) / 2^s = 81540058820840996586704275553141814055101440848469862132140264610111

(T - 1) / 2 = 40770029410420498293352137776570907027550720424234931066070132305055

The number of bits needed to represent the Self::MODULUS.

The number of bits that can be reliably stored. (Should equal SELF::MODULUS_BITS - 1) Read more

The number of bits that must be shaved from the beginning of the representation when randomly sampling. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.