Struct snarkvm_curves::bls12_377::FrParameters [−][src]
pub struct FrParameters;
Trait Implementations
TODO (howardwu): CRITICAL - Fix this after a migration plan has been determined.
- 0x3c3d3ca739381fb2,
- 0x9a14cda3ec99772b,
- 0xd7aacc7c59724826,
- 0xd1ba211c5cc349c,
- 12646347781564978760u64,
- 6783048705277173164u64,
- 268534165941069093u64,
- 1121515446318641358u64,
type BigInteger = BigInteger
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
.
2^s * t = MODULUS - 1 with t odd. This is the two-adicity of the prime. Read more
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
GENERATOR = 22 Encoded in Montgomery form, so the value is (22 * R) % q = 5642976643016801619665363617888466827793962762719196659561577942948671127251
MODULUS = 8444461749428370424248824938781546531375899335154063827935233455917409239041
(r - 1)/2 = 4222230874714185212124412469390773265687949667577031913967616727958704619520
t = (r - 1) / 2^s = 60001509534603559531609739528203892656505753216962260608619555
(t - 1) / 2 = 30000754767301779765804869764101946328252876608481130304309777
The number of bits that can be reliably stored.
(Should equal SELF::MODULUS_BITS - 1
) Read more
The number of bits needed to represent the Self::MODULUS
.
R = 2^256 % Self::MODULUS
R2 = R^2 % Self::MODULUS
The number of bits that must be shaved from the beginning of the representation when randomly sampling. Read more