Struct ark_ed_on_bw6_761::FqParameters [−]
pub struct FqParameters;
Trait Implementations
impl FftParameters for FqParameters
impl FftParameters for FqParameters
type BigInt = BigInteger384
pub const TWO_ADICITY: u32
pub const TWO_ADICITY: u32
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
pub const TWO_ADIC_ROOT_OF_UNITY: BigInteger384
pub const TWO_ADIC_ROOT_OF_UNITY: BigInteger384
2^s root of unity computed by GENERATOR^t
const SMALL_SUBGROUP_BASE: Option<u32>
const SMALL_SUBGROUP_BASE: Option<u32>
An integer b
such that there exists a multiplicative subgroup
of size b^k
for some integer k
. Read more
const SMALL_SUBGROUP_BASE_ADICITY: Option<u32>
const SMALL_SUBGROUP_BASE_ADICITY: Option<u32>
The integer k
such that there exists a multiplicative subgroup
of size Self::SMALL_SUBGROUP_BASE^k
. Read more
const LARGE_SUBGROUP_ROOT_OF_UNITY: Option<Self::BigInt>
const LARGE_SUBGROUP_ROOT_OF_UNITY: Option<Self::BigInt>
GENERATOR^((MODULUS-1) / (2^s * SMALL_SUBGROUP_BASE^SMALL_SUBGROUP_BASE_ADICITY)) Used for mixed-radix FFT. Read more
impl FpParameters for FqParameters
impl FpParameters for FqParameters
pub const MODULUS: BigInteger384
pub const MODULUS: BigInteger384
MODULUS = 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177
pub const R: BigInteger384
pub const R: BigInteger384
R = 85013442423176922659824578519796707547925331718418265885885478904210582549405549618995257669764901891699128663912
pub const GENERATOR: BigInteger384
pub const GENERATOR: BigInteger384
GENERATOR = -5 Encoded in Montgomery form, so the value here is (-5 * R) % q = 92261639910053574722182574790803529333160366917737991650341130812388023949653897454961487930322210790384999596794
pub const MODULUS_BITS: u32
pub const MODULUS_BITS: u32
The number of bits needed to represent the Self::MODULUS
.
pub const CAPACITY: u32
pub const CAPACITY: u32
The number of bits that can be reliably stored.
(Should equal SELF::MODULUS_BITS - 1
) Read more
pub const REPR_SHAVE_BITS: u32
pub const REPR_SHAVE_BITS: u32
The number of bits that must be shaved from the beginning of the representation when randomly sampling. Read more
pub const R2: BigInteger384
pub const R2: BigInteger384
R2 = R^2 % Self::MODULUS
pub const INV: u64
pub const INV: u64
INV = -MODULUS^{-1} mod 2^64
pub const MODULUS_MINUS_ONE_DIV_TWO: BigInteger384
pub const MODULUS_MINUS_ONE_DIV_TWO: BigInteger384
(Self::MODULUS - 1) / 2
pub const T: BigInteger384
pub const T: BigInteger384
t for 2^s * t = MODULUS - 1, and t coprime to 2.
pub const T_MINUS_ONE_DIV_TWO: BigInteger384
pub const T_MINUS_ONE_DIV_TWO: BigInteger384
(t - 1) / 2
impl Fp384Parameters for FqParameters