Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::Bn254FrParams Class Reference

Parameters defining the scalar field of the BN254 curve. More...

#include <fr.hpp>

Static Public Attributes

static constexpr uint64_t modulus_0 = 0x43E1F593F0000001UL
 
static constexpr uint64_t modulus_1 = 0x2833E84879B97091UL
 
static constexpr uint64_t modulus_2 = 0xB85045B68181585DUL
 
static constexpr uint64_t modulus_3 = 0x30644E72E131A029UL
 
static constexpr uint64_t r_squared_0 = 0x1BB8E645AE216DA7UL
 
static constexpr uint64_t r_squared_1 = 0x53FE3AB1E35C59E3UL
 
static constexpr uint64_t r_squared_2 = 0x8C49833D53BB8085UL
 
static constexpr uint64_t r_squared_3 = 0x216D0B17F4E44A5UL
 
static constexpr uint64_t r_inv = 0xc2e1f593efffffffUL
 
static constexpr uint64_t r_inv_0 = 0x2d3e8053e396ee4dUL
 
static constexpr uint64_t r_inv_1 = 0xca478dbeab3c92cdUL
 
static constexpr uint64_t r_inv_2 = 0xb2d8f06f77f52a93UL
 
static constexpr uint64_t r_inv_3 = 0x24d6ba07f7aa8f04UL
 
static constexpr uint64_t cube_root_0 = 0x93e7cede4a0329b3UL
 
static constexpr uint64_t cube_root_1 = 0x7d4fdca77a96c167UL
 
static constexpr uint64_t cube_root_2 = 0x8be4ba08b19a750aUL
 
static constexpr uint64_t cube_root_3 = 0x1cbd5653a5661c25UL
 
static constexpr uint64_t primitive_root_0 = 0x636e735580d13d9cUL
 
static constexpr uint64_t primitive_root_1 = 0xa22bf3742445ffd6UL
 
static constexpr uint64_t primitive_root_2 = 0x56452ac01eb203d8UL
 
static constexpr uint64_t primitive_root_3 = 0x1860ef942963f9e7UL
 
static constexpr uint64_t coset_generator_0 = 0x5eef048d8fffffe7ULL
 
static constexpr uint64_t coset_generator_1 = 0x12ee50ec1ce401d0ULL
 
static constexpr uint64_t coset_generator_2 = 0x29312d5a5e5ee7ULL
 
static constexpr uint64_t coset_generator_3 = 0x463456c802275bedULL
 
static constexpr uint64_t modulus_wasm_0 = 0x10000001
 
static constexpr uint64_t modulus_wasm_1 = 0x1f0fac9f
 
static constexpr uint64_t modulus_wasm_2 = 0xe5c2450
 
static constexpr uint64_t modulus_wasm_3 = 0x7d090f3
 
static constexpr uint64_t modulus_wasm_4 = 0x1585d283
 
static constexpr uint64_t modulus_wasm_5 = 0x2db40c0
 
static constexpr uint64_t modulus_wasm_6 = 0xa6e141
 
static constexpr uint64_t modulus_wasm_7 = 0xe5c2634
 
static constexpr uint64_t modulus_wasm_8 = 0x30644e
 
static constexpr uint64_t r_squared_wasm_0 = 0x38c2e14b45b69bd4UL
 
static constexpr uint64_t r_squared_wasm_1 = 0x0ffedb1885883377UL
 
static constexpr uint64_t r_squared_wasm_2 = 0x7840f9f0abc6e54dUL
 
static constexpr uint64_t r_squared_wasm_3 = 0x0a054a3e848b0f05UL
 
static constexpr uint64_t r_inv_wasm_0 = 0x18f05361
 
static constexpr uint64_t r_inv_wasm_1 = 0x12bb1fe
 
static constexpr uint64_t r_inv_wasm_2 = 0xf5d8135
 
static constexpr uint64_t r_inv_wasm_3 = 0x1e6275f6
 
static constexpr uint64_t r_inv_wasm_4 = 0x7e7a880
 
static constexpr uint64_t r_inv_wasm_5 = 0x10c6bf1f
 
static constexpr uint64_t r_inv_wasm_6 = 0x11f74a6c
 
static constexpr uint64_t r_inv_wasm_7 = 0x6fdaecb
 
static constexpr uint64_t r_inv_wasm_8 = 0x183227
 
static constexpr uint64_t cube_root_wasm_0 = 0x7334a1ce7065364dUL
 
static constexpr uint64_t cube_root_wasm_1 = 0xae21578e4a14d22aUL
 
static constexpr uint64_t cube_root_wasm_2 = 0xcea2148a96b51265UL
 
static constexpr uint64_t cube_root_wasm_3 = 0x0038f7edf614a198UL
 
static constexpr uint64_t primitive_root_wasm_0 = 0x2faf11711a27b370UL
 
static constexpr uint64_t primitive_root_wasm_1 = 0xc23fe9fced28f1b8UL
 
static constexpr uint64_t primitive_root_wasm_2 = 0x43a0fc9bbe2af541UL
 
static constexpr uint64_t primitive_root_wasm_3 = 0x05d90b5719653a4fUL
 
static constexpr uint64_t coset_generator_wasm_0 = 0xab46711cdffffcb2ULL
 
static constexpr uint64_t coset_generator_wasm_1 = 0x2476607dbd2dfff1ULL
 
static constexpr uint64_t coset_generator_wasm_2 = 0xe6b99ee0068dfc25ULL
 
static constexpr uint64_t coset_generator_wasm_3 = 0x1484c05bce00b620ULL
 
static constexpr uint64_t endo_g1_lo = 0x7a7bd9d4391eb18dUL
 
static constexpr uint64_t endo_g1_mid = 0x4ccef014a773d2cfUL
 
static constexpr uint64_t endo_g1_hi = 0x0000000000000002UL
 
static constexpr uint64_t endo_g2_lo = 0xd91d232ec7e0b3d7UL
 
static constexpr uint64_t endo_g2_mid = 0x0000000000000002UL
 
static constexpr uint64_t endo_minus_b1_lo = 0x8211bbeb7d4f1128UL
 
static constexpr uint64_t endo_minus_b1_mid = 0x6f4d8248eeb859fcUL
 
static constexpr uint64_t endo_b2_lo = 0x89d3256894d213e3UL
 
static constexpr uint64_t endo_b2_mid = 0UL
 
static constexpr char schema_name [] = "fr"
 
static constexpr bool has_high_2adicity = true
 
static constexpr size_t NUM_BN254_SCALARS = 1
 
static constexpr size_t MAX_BITS_PER_ENDOMORPHISM_SCALAR = 128
 
static constexpr size_t PUBLIC_INPUTS_SIZE = FR_PUBLIC_INPUTS_SIZE
 

Detailed Description

Parameters defining the scalar field of the BN254 curve.

When split into 4 64-bit words, the parameters are represented in little-endian, i.e. the least significant bit comes first. For example, to recover the modulus from the 64-bit words we concatenate its limbs to obtain: 0x30644E72E131A029B85045B68181585D2833E84879B9709143E1F593F0000001

Note
These parameters can be extracted by running the script parameter_helper.py in ecc/fields

Definition at line 29 of file fr.hpp.

Member Data Documentation

◆ coset_generator_0

constexpr uint64_t bb::Bn254FrParams::coset_generator_0 = 0x5eef048d8fffffe7ULL
staticconstexpr

Definition at line 73 of file fr.hpp.

◆ coset_generator_1

constexpr uint64_t bb::Bn254FrParams::coset_generator_1 = 0x12ee50ec1ce401d0ULL
staticconstexpr

Definition at line 74 of file fr.hpp.

◆ coset_generator_2

constexpr uint64_t bb::Bn254FrParams::coset_generator_2 = 0x29312d5a5e5ee7ULL
staticconstexpr

Definition at line 75 of file fr.hpp.

◆ coset_generator_3

constexpr uint64_t bb::Bn254FrParams::coset_generator_3 = 0x463456c802275bedULL
staticconstexpr

Definition at line 76 of file fr.hpp.

◆ coset_generator_wasm_0

constexpr uint64_t bb::Bn254FrParams::coset_generator_wasm_0 = 0xab46711cdffffcb2ULL
staticconstexpr

Definition at line 126 of file fr.hpp.

◆ coset_generator_wasm_1

constexpr uint64_t bb::Bn254FrParams::coset_generator_wasm_1 = 0x2476607dbd2dfff1ULL
staticconstexpr

Definition at line 127 of file fr.hpp.

◆ coset_generator_wasm_2

constexpr uint64_t bb::Bn254FrParams::coset_generator_wasm_2 = 0xe6b99ee0068dfc25ULL
staticconstexpr

Definition at line 128 of file fr.hpp.

◆ coset_generator_wasm_3

constexpr uint64_t bb::Bn254FrParams::coset_generator_wasm_3 = 0x1484c05bce00b620ULL
staticconstexpr

Definition at line 129 of file fr.hpp.

◆ cube_root_0

constexpr uint64_t bb::Bn254FrParams::cube_root_0 = 0x93e7cede4a0329b3UL
staticconstexpr

Definition at line 60 of file fr.hpp.

◆ cube_root_1

constexpr uint64_t bb::Bn254FrParams::cube_root_1 = 0x7d4fdca77a96c167UL
staticconstexpr

Definition at line 61 of file fr.hpp.

◆ cube_root_2

constexpr uint64_t bb::Bn254FrParams::cube_root_2 = 0x8be4ba08b19a750aUL
staticconstexpr

Definition at line 62 of file fr.hpp.

◆ cube_root_3

constexpr uint64_t bb::Bn254FrParams::cube_root_3 = 0x1cbd5653a5661c25UL
staticconstexpr

Definition at line 63 of file fr.hpp.

◆ cube_root_wasm_0

constexpr uint64_t bb::Bn254FrParams::cube_root_wasm_0 = 0x7334a1ce7065364dUL
staticconstexpr

Definition at line 113 of file fr.hpp.

◆ cube_root_wasm_1

constexpr uint64_t bb::Bn254FrParams::cube_root_wasm_1 = 0xae21578e4a14d22aUL
staticconstexpr

Definition at line 114 of file fr.hpp.

◆ cube_root_wasm_2

constexpr uint64_t bb::Bn254FrParams::cube_root_wasm_2 = 0xcea2148a96b51265UL
staticconstexpr

Definition at line 115 of file fr.hpp.

◆ cube_root_wasm_3

constexpr uint64_t bb::Bn254FrParams::cube_root_wasm_3 = 0x0038f7edf614a198UL
staticconstexpr

Definition at line 116 of file fr.hpp.

◆ endo_b2_lo

constexpr uint64_t bb::Bn254FrParams::endo_b2_lo = 0x89d3256894d213e3UL
staticconstexpr

Definition at line 140 of file fr.hpp.

◆ endo_b2_mid

constexpr uint64_t bb::Bn254FrParams::endo_b2_mid = 0UL
staticconstexpr

Definition at line 141 of file fr.hpp.

◆ endo_g1_hi

constexpr uint64_t bb::Bn254FrParams::endo_g1_hi = 0x0000000000000002UL
staticconstexpr

Definition at line 135 of file fr.hpp.

◆ endo_g1_lo

constexpr uint64_t bb::Bn254FrParams::endo_g1_lo = 0x7a7bd9d4391eb18dUL
staticconstexpr

Definition at line 133 of file fr.hpp.

◆ endo_g1_mid

constexpr uint64_t bb::Bn254FrParams::endo_g1_mid = 0x4ccef014a773d2cfUL
staticconstexpr

Definition at line 134 of file fr.hpp.

◆ endo_g2_lo

constexpr uint64_t bb::Bn254FrParams::endo_g2_lo = 0xd91d232ec7e0b3d7UL
staticconstexpr

Definition at line 136 of file fr.hpp.

◆ endo_g2_mid

constexpr uint64_t bb::Bn254FrParams::endo_g2_mid = 0x0000000000000002UL
staticconstexpr

Definition at line 137 of file fr.hpp.

◆ endo_minus_b1_lo

constexpr uint64_t bb::Bn254FrParams::endo_minus_b1_lo = 0x8211bbeb7d4f1128UL
staticconstexpr

Definition at line 138 of file fr.hpp.

◆ endo_minus_b1_mid

constexpr uint64_t bb::Bn254FrParams::endo_minus_b1_mid = 0x6f4d8248eeb859fcUL
staticconstexpr

Definition at line 139 of file fr.hpp.

◆ has_high_2adicity

constexpr bool bb::Bn254FrParams::has_high_2adicity = true
staticconstexpr

Definition at line 145 of file fr.hpp.

◆ MAX_BITS_PER_ENDOMORPHISM_SCALAR

constexpr size_t bb::Bn254FrParams::MAX_BITS_PER_ENDOMORPHISM_SCALAR = 128
staticconstexpr

Definition at line 149 of file fr.hpp.

◆ modulus_0

constexpr uint64_t bb::Bn254FrParams::modulus_0 = 0x43E1F593F0000001UL
staticconstexpr

Definition at line 32 of file fr.hpp.

◆ modulus_1

constexpr uint64_t bb::Bn254FrParams::modulus_1 = 0x2833E84879B97091UL
staticconstexpr

Definition at line 33 of file fr.hpp.

◆ modulus_2

constexpr uint64_t bb::Bn254FrParams::modulus_2 = 0xB85045B68181585DUL
staticconstexpr

Definition at line 34 of file fr.hpp.

◆ modulus_3

constexpr uint64_t bb::Bn254FrParams::modulus_3 = 0x30644E72E131A029UL
staticconstexpr

Definition at line 35 of file fr.hpp.

◆ modulus_wasm_0

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_0 = 0x10000001
staticconstexpr

Definition at line 80 of file fr.hpp.

◆ modulus_wasm_1

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_1 = 0x1f0fac9f
staticconstexpr

Definition at line 81 of file fr.hpp.

◆ modulus_wasm_2

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_2 = 0xe5c2450
staticconstexpr

Definition at line 82 of file fr.hpp.

◆ modulus_wasm_3

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_3 = 0x7d090f3
staticconstexpr

Definition at line 83 of file fr.hpp.

◆ modulus_wasm_4

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_4 = 0x1585d283
staticconstexpr

Definition at line 84 of file fr.hpp.

◆ modulus_wasm_5

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_5 = 0x2db40c0
staticconstexpr

Definition at line 85 of file fr.hpp.

◆ modulus_wasm_6

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_6 = 0xa6e141
staticconstexpr

Definition at line 86 of file fr.hpp.

◆ modulus_wasm_7

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_7 = 0xe5c2634
staticconstexpr

Definition at line 87 of file fr.hpp.

◆ modulus_wasm_8

constexpr uint64_t bb::Bn254FrParams::modulus_wasm_8 = 0x30644e
staticconstexpr

Definition at line 88 of file fr.hpp.

◆ NUM_BN254_SCALARS

constexpr size_t bb::Bn254FrParams::NUM_BN254_SCALARS = 1
staticconstexpr

Definition at line 148 of file fr.hpp.

◆ primitive_root_0

constexpr uint64_t bb::Bn254FrParams::primitive_root_0 = 0x636e735580d13d9cUL
staticconstexpr

Definition at line 67 of file fr.hpp.

◆ primitive_root_1

constexpr uint64_t bb::Bn254FrParams::primitive_root_1 = 0xa22bf3742445ffd6UL
staticconstexpr

Definition at line 68 of file fr.hpp.

◆ primitive_root_2

constexpr uint64_t bb::Bn254FrParams::primitive_root_2 = 0x56452ac01eb203d8UL
staticconstexpr

Definition at line 69 of file fr.hpp.

◆ primitive_root_3

constexpr uint64_t bb::Bn254FrParams::primitive_root_3 = 0x1860ef942963f9e7UL
staticconstexpr

Definition at line 70 of file fr.hpp.

◆ primitive_root_wasm_0

constexpr uint64_t bb::Bn254FrParams::primitive_root_wasm_0 = 0x2faf11711a27b370UL
staticconstexpr

Definition at line 120 of file fr.hpp.

◆ primitive_root_wasm_1

constexpr uint64_t bb::Bn254FrParams::primitive_root_wasm_1 = 0xc23fe9fced28f1b8UL
staticconstexpr

Definition at line 121 of file fr.hpp.

◆ primitive_root_wasm_2

constexpr uint64_t bb::Bn254FrParams::primitive_root_wasm_2 = 0x43a0fc9bbe2af541UL
staticconstexpr

Definition at line 122 of file fr.hpp.

◆ primitive_root_wasm_3

constexpr uint64_t bb::Bn254FrParams::primitive_root_wasm_3 = 0x05d90b5719653a4fUL
staticconstexpr

Definition at line 123 of file fr.hpp.

◆ PUBLIC_INPUTS_SIZE

constexpr size_t bb::Bn254FrParams::PUBLIC_INPUTS_SIZE = FR_PUBLIC_INPUTS_SIZE
staticconstexpr

Definition at line 152 of file fr.hpp.

◆ r_inv

constexpr uint64_t bb::Bn254FrParams::r_inv = 0xc2e1f593efffffffUL
staticconstexpr

Definition at line 48 of file fr.hpp.

◆ r_inv_0

constexpr uint64_t bb::Bn254FrParams::r_inv_0 = 0x2d3e8053e396ee4dUL
staticconstexpr

Definition at line 54 of file fr.hpp.

◆ r_inv_1

constexpr uint64_t bb::Bn254FrParams::r_inv_1 = 0xca478dbeab3c92cdUL
staticconstexpr

Definition at line 55 of file fr.hpp.

◆ r_inv_2

constexpr uint64_t bb::Bn254FrParams::r_inv_2 = 0xb2d8f06f77f52a93UL
staticconstexpr

Definition at line 56 of file fr.hpp.

◆ r_inv_3

constexpr uint64_t bb::Bn254FrParams::r_inv_3 = 0x24d6ba07f7aa8f04UL
staticconstexpr

Definition at line 57 of file fr.hpp.

◆ r_inv_wasm_0

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_0 = 0x18f05361
staticconstexpr

Definition at line 101 of file fr.hpp.

◆ r_inv_wasm_1

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_1 = 0x12bb1fe
staticconstexpr

Definition at line 102 of file fr.hpp.

◆ r_inv_wasm_2

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_2 = 0xf5d8135
staticconstexpr

Definition at line 103 of file fr.hpp.

◆ r_inv_wasm_3

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_3 = 0x1e6275f6
staticconstexpr

Definition at line 104 of file fr.hpp.

◆ r_inv_wasm_4

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_4 = 0x7e7a880
staticconstexpr

Definition at line 105 of file fr.hpp.

◆ r_inv_wasm_5

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_5 = 0x10c6bf1f
staticconstexpr

Definition at line 106 of file fr.hpp.

◆ r_inv_wasm_6

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_6 = 0x11f74a6c
staticconstexpr

Definition at line 107 of file fr.hpp.

◆ r_inv_wasm_7

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_7 = 0x6fdaecb
staticconstexpr

Definition at line 108 of file fr.hpp.

◆ r_inv_wasm_8

constexpr uint64_t bb::Bn254FrParams::r_inv_wasm_8 = 0x183227
staticconstexpr

Definition at line 109 of file fr.hpp.

◆ r_squared_0

constexpr uint64_t bb::Bn254FrParams::r_squared_0 = 0x1BB8E645AE216DA7UL
staticconstexpr

Definition at line 38 of file fr.hpp.

◆ r_squared_1

constexpr uint64_t bb::Bn254FrParams::r_squared_1 = 0x53FE3AB1E35C59E3UL
staticconstexpr

Definition at line 39 of file fr.hpp.

◆ r_squared_2

constexpr uint64_t bb::Bn254FrParams::r_squared_2 = 0x8C49833D53BB8085UL
staticconstexpr

Definition at line 40 of file fr.hpp.

◆ r_squared_3

constexpr uint64_t bb::Bn254FrParams::r_squared_3 = 0x216D0B17F4E44A5UL
staticconstexpr

Definition at line 41 of file fr.hpp.

◆ r_squared_wasm_0

constexpr uint64_t bb::Bn254FrParams::r_squared_wasm_0 = 0x38c2e14b45b69bd4UL
staticconstexpr

Definition at line 92 of file fr.hpp.

◆ r_squared_wasm_1

constexpr uint64_t bb::Bn254FrParams::r_squared_wasm_1 = 0x0ffedb1885883377UL
staticconstexpr

Definition at line 93 of file fr.hpp.

◆ r_squared_wasm_2

constexpr uint64_t bb::Bn254FrParams::r_squared_wasm_2 = 0x7840f9f0abc6e54dUL
staticconstexpr

Definition at line 94 of file fr.hpp.

◆ r_squared_wasm_3

constexpr uint64_t bb::Bn254FrParams::r_squared_wasm_3 = 0x0a054a3e848b0f05UL
staticconstexpr

Definition at line 95 of file fr.hpp.

◆ schema_name

constexpr char bb::Bn254FrParams::schema_name[] = "fr"
staticconstexpr

Definition at line 144 of file fr.hpp.


The documentation for this class was generated from the following file: