|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
An object storing two EC points that represent the inputs to a pairing check. More...
#include <pairing_points.hpp>
Public Types | |
| using | Curve = Curve_ |
| using | CK = CommitmentKey< Curve > |
| using | Point = typename Curve::AffineElement |
| using | Fr = typename Curve::ScalarField |
| using | Fq = typename Curve::BaseField |
| using | VerifierCK = VerifierCommitmentKey< curve::BN254 > |
Public Member Functions | |
| PairingPoints ()=default | |
| PairingPoints (const Point &P0, const Point &P1) | |
| PairingPoints (std::array< Point, 2 > const &points) | |
| Point & | operator[] (size_t idx) |
| const Point & | operator[] (size_t idx) const |
| void | aggregate (const PairingPoints< Curve > &other) |
| Aggregate the current pairing points with another set of pairing points using a random scalar. | |
| bool | check () const |
| Perform the pairing check. | |
| bool | operator== (const PairingPoints< Curve > &other) const =default |
Static Public Member Functions | |
| static PairingPoints< Curve > | reconstruct_from_public (const std::span< const Fr, PUBLIC_INPUTS_SIZE > &limbs_in) |
| Reconstruct the pairing points from limbs stored on the public inputs. | |
Public Attributes | |
| Point | P0 = Point::infinity() |
| Point | P1 = Point::infinity() |
Static Public Attributes | |
| static constexpr size_t | PUBLIC_INPUTS_SIZE = PAIRING_POINTS_SIZE |
An object storing two EC points that represent the inputs to a pairing check.
The points may represent the output of a single partial verification or the linear combination of multiple sets of pairing points, i.e. a pairing point "accumulator".
| Curve_ | The curve type (defaults to curve::BN254 for native, or use stdlib::bn254<Builder> for recursive) |
Definition at line 24 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::CK = CommitmentKey<Curve> |
Definition at line 27 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::Curve = Curve_ |
Definition at line 26 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::Fq = typename Curve::BaseField |
Definition at line 30 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::Fr = typename Curve::ScalarField |
Definition at line 29 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::Point = typename Curve::AffineElement |
Definition at line 28 of file pairing_points.hpp.
| using bb::PairingPoints< Curve_ >::VerifierCK = VerifierCommitmentKey<curve::BN254> |
Definition at line 31 of file pairing_points.hpp.
|
default |
|
inline |
Definition at line 39 of file pairing_points.hpp.
|
inline |
Definition at line 44 of file pairing_points.hpp.
|
inline |
Aggregate the current pairing points with another set of pairing points using a random scalar.
Definition at line 78 of file pairing_points.hpp.
|
inline |
Perform the pairing check.
Definition at line 93 of file pairing_points.hpp.
|
default |
|
inline |
Definition at line 48 of file pairing_points.hpp.
|
inline |
Definition at line 54 of file pairing_points.hpp.
|
inlinestatic |
Reconstruct the pairing points from limbs stored on the public inputs.
Definition at line 64 of file pairing_points.hpp.
| Point bb::PairingPoints< Curve_ >::P0 = Point::infinity() |
Definition at line 35 of file pairing_points.hpp.
| Point bb::PairingPoints< Curve_ >::P1 = Point::infinity() |
Definition at line 36 of file pairing_points.hpp.
|
staticconstexpr |
Definition at line 33 of file pairing_points.hpp.