11namespace barretenberg::pairing {
12constexpr size_t loop_length = 64;
13constexpr size_t neg_z_loop_length = 62;
14constexpr size_t precomputed_coefficients_length = 87;
16constexpr std::array<uint8_t, loop_length> loop_bits{ 1, 0, 1, 0, 0, 0, 3, 0, 3, 0, 0, 0, 3, 0, 1, 0, 3, 0, 0, 3, 0, 0,
17 0, 0, 0, 1, 0, 0, 3, 0, 1, 0, 0, 3, 0, 0, 0, 0, 3, 0, 1, 0, 0, 0,
18 3, 0, 3, 0, 0, 1, 0, 0, 0, 3, 0, 0, 3, 0, 1, 0, 1, 0, 0, 0 };
20constexpr std::array<bool, neg_z_loop_length> neg_z_loop_bits{
21 false,
false,
false,
true,
false,
false,
true,
true,
true,
false,
true,
false,
false,
true,
true,
false,
22 false,
true,
false,
false,
true,
false,
true,
false,
true,
true,
false,
true,
false,
false,
false,
true,
23 false,
false,
true,
false,
true,
false,
false,
true,
true,
false,
true,
false,
false,
true,
false,
false,
24 false,
false,
true,
false,
false,
true,
true,
true,
true,
true,
false,
false,
false,
true
28 std::array<fq12::ell_coeffs, precomputed_coefficients_length> lines;
33constexpr void mixed_addition_step_for_flipped_miller_loop(
const g2::element& base,
43constexpr void final_exponentiation_easy_part(
const fq12& elt,
fq12& r);
45constexpr void final_exponentiation_exp_by_neg_z(
const fq12& elt,
fq12& r);
47constexpr void final_exponentiation_tricky_part(
const fq12& elt,
fq12& r);
61#include "./pairing_impl.hpp"
Definition: field12.hpp:5
Definition: affine_element.hpp:11
element class. Implements ecc group arithmetic using Jacobian coordinates See https://hyperelliptic....
Definition: element.hpp:27
Definition: field12.hpp:44
Definition: pairing.hpp:27