Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
pairing.hpp File Reference
#include <random>
#include "./fq12.hpp"
#include "./fq2.hpp"
#include "./fq6.hpp"
#include "./g1.hpp"
#include "./g2.hpp"
#include "./pairing_impl.hpp"

Go to the source code of this file.

Classes

struct  bb::pairing::miller_lines
 

Namespaces

namespace  bb
 Entry point for Barretenberg command-line interface.
 
namespace  bb::pairing
 

Functions

constexpr void bb::pairing::doubling_step_for_flipped_miller_loop (g2::element &current, fq12::ell_coeffs &ell)
 
constexpr void bb::pairing::mixed_addition_step_for_flipped_miller_loop (const g2::element &base, g2::element &Q, fq12::ell_coeffs &line)
 
constexpr void bb::pairing::precompute_miller_lines (const g2::element &Q, miller_lines &lines)
 
constexpr fq12 bb::pairing::miller_loop (const g1::element &P, const miller_lines &lines)
 
constexpr fq12 bb::pairing::miller_loop_batch (const g1::element *points, const miller_lines *lines, size_t num_pairs)
 
constexpr void bb::pairing::final_exponentiation_easy_part (const fq12 &elt, fq12 &r)
 
constexpr void bb::pairing::final_exponentiation_exp_by_neg_z (const fq12 &elt, fq12 &r)
 
constexpr void bb::pairing::final_exponentiation_tricky_part (const fq12 &elt, fq12 &r)
 
constexpr fq12 bb::pairing::reduced_ate_pairing (const g1::affine_element &P_affine, const g2::affine_element &Q_affine)
 
fq12 bb::pairing::reduced_ate_pairing_batch (const g1::affine_element *P_affines, const g2::affine_element *Q_affines, size_t num_points)
 
fq12 bb::pairing::reduced_ate_pairing_batch_precomputed (const g1::affine_element *P_affines, const miller_lines *lines, size_t num_points)
 

Variables

constexpr size_t bb::pairing::loop_length = 64
 
constexpr size_t bb::pairing::neg_z_loop_length = 62
 
constexpr size_t bb::pairing::precomputed_coefficients_length = 87
 
constexpr std::array< uint8_t, loop_lengthbb::pairing::loop_bits
 
constexpr std::array< bool, neg_z_loop_lengthbb::pairing::neg_z_loop_bits