|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <standard_affine_point.hpp>
Public Types | |
| using | BaseField = AffinePoint::Fq |
| using | ScalarField = AffinePoint::Fr |
Public Member Functions | |
| constexpr | StandardAffinePoint () noexcept=default |
| constexpr | StandardAffinePoint (AffinePoint val) noexcept |
| constexpr | StandardAffinePoint (BaseField x, BaseField y, bool is_infinity) noexcept |
| constexpr StandardAffinePoint | operator+ (const StandardAffinePoint &other) const noexcept |
| constexpr StandardAffinePoint | operator* (const ScalarField &exponent) const noexcept |
| constexpr bool | operator== (const StandardAffinePoint &other) const noexcept |
| constexpr StandardAffinePoint | operator- () const noexcept |
| constexpr bool | is_infinity () const noexcept |
| constexpr bool | on_curve () const noexcept |
| constexpr const BaseField & | x () const noexcept |
| constexpr const BaseField & | y () const noexcept |
Static Public Member Functions | |
| static const StandardAffinePoint & | infinity () |
| static const StandardAffinePoint & | one () |
Private Attributes | |
| AffinePoint | point |
| BaseField | x_coord = zero |
| BaseField | y_coord = zero |
Static Private Attributes | |
| static constexpr const auto | zero = BaseField::zero() |
AVM bytecode expects the representation of points to be triplets, the two coordinates and an is_infinity boolean. Furthermore, its representation of infinity is inherited from noir's and is expected to be 0,0,true. BB, however, uses only the two coordinates to represent points. Infinity in barretenberg is represented as (P+1)/2,0. This class is a wrapper of the BB representation, needed to operate with points, that allows to extract the standard representation that AVM bytecode expects.
Definition at line 15 of file standard_affine_point.hpp.
| using bb::avm2::StandardAffinePoint< AffinePoint >::BaseField = AffinePoint::Fq |
Definition at line 17 of file standard_affine_point.hpp.
| using bb::avm2::StandardAffinePoint< AffinePoint >::ScalarField = AffinePoint::Fr |
Definition at line 18 of file standard_affine_point.hpp.
|
constexprdefaultnoexcept |
|
inlineconstexprnoexcept |
Definition at line 22 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 28 of file standard_affine_point.hpp.
|
inlinestatic |
Definition at line 78 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 68 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 70 of file standard_affine_point.hpp.
|
inlinestatic |
Definition at line 84 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 44 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 34 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 59 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 54 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 74 of file standard_affine_point.hpp.
|
inlineconstexprnoexcept |
Definition at line 76 of file standard_affine_point.hpp.
|
private |
Definition at line 93 of file standard_affine_point.hpp.
|
private |
Definition at line 96 of file standard_affine_point.hpp.
|
private |
Definition at line 97 of file standard_affine_point.hpp.
|
staticconstexprprivate |
Definition at line 98 of file standard_affine_point.hpp.