Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::VerifierCommitmentKey< Curve_ > Class Template Reference

Representation of the Grumpkin Verifier Commitment Key inside a bn254 circuit. More...

#include <verifier_commitment_key.hpp>

Public Types

using Curve = Curve_
 
using Builder = Curve::Builder
 
using Commitment = Curve::AffineElement
 
using NativeEmbeddedCurve = typename Builder::EmbeddedCurve
 

Public Member Functions

 VerifierCommitmentKey (Builder *builder, size_t num_points, const VerifierCommitmentKey< NativeEmbeddedCurve > &native_pcs_verification_key)
 Construct a new Verifier Commitment Key object from its native counterpart. instantiated on Grumpkin. This will be part of the ECCVMRecursiveFlavor once implemented. The Grumpkin SRS points are represented after applying the pippenger point table so the values at odd indices contain the point {srs[i-1].x * beta, srs[i-1].y}, where beta is the endomorphism. We retrieve only the original SRS for IPA verification.
 
 VerifierCommitmentKey ()=default
 
Commitment get_g1_identity () const
 
std::vector< Commitmentget_monomial_points () const
 

Private Attributes

Commitment g1_identity
 
std::vector< Commitmentmonomial_points
 

Detailed Description

template<typename Curve_>
class bb::VerifierCommitmentKey< Curve_ >

Representation of the Grumpkin Verifier Commitment Key inside a bn254 circuit.

Template Parameters
Builder

Definition at line 16 of file verifier_commitment_key.hpp.

Member Typedef Documentation

◆ Builder

template<typename Curve_ >
using bb::VerifierCommitmentKey< Curve_ >::Builder = Curve::Builder

Definition at line 19 of file verifier_commitment_key.hpp.

◆ Commitment

template<typename Curve_ >
using bb::VerifierCommitmentKey< Curve_ >::Commitment = Curve::AffineElement

Definition at line 20 of file verifier_commitment_key.hpp.

◆ Curve

template<typename Curve_ >
using bb::VerifierCommitmentKey< Curve_ >::Curve = Curve_

Definition at line 18 of file verifier_commitment_key.hpp.

◆ NativeEmbeddedCurve

template<typename Curve_ >
using bb::VerifierCommitmentKey< Curve_ >::NativeEmbeddedCurve = typename Builder::EmbeddedCurve

Definition at line 21 of file verifier_commitment_key.hpp.

Constructor & Destructor Documentation

◆ VerifierCommitmentKey() [1/2]

template<typename Curve_ >
bb::VerifierCommitmentKey< Curve_ >::VerifierCommitmentKey ( Builder builder,
size_t  num_points,
const VerifierCommitmentKey< NativeEmbeddedCurve > &  native_pcs_verification_key 
)
inline

Construct a new Verifier Commitment Key object from its native counterpart. instantiated on Grumpkin. This will be part of the ECCVMRecursiveFlavor once implemented. The Grumpkin SRS points are represented after applying the pippenger point table so the values at odd indices contain the point {srs[i-1].x * beta, srs[i-1].y}, where beta is the endomorphism. We retrieve only the original SRS for IPA verification.

The Grumpkin SRS points will be initialized as constants in the circuit but might be subsequently turned into constant witnesses to make operations in the circuit more efficient.

Definition at line 32 of file verifier_commitment_key.hpp.

◆ VerifierCommitmentKey() [2/2]

template<typename Curve_ >
bb::VerifierCommitmentKey< Curve_ >::VerifierCommitmentKey ( )
default

Member Function Documentation

◆ get_g1_identity()

template<typename Curve_ >
Commitment bb::VerifierCommitmentKey< Curve_ >::get_g1_identity ( ) const
inline

Definition at line 47 of file verifier_commitment_key.hpp.

◆ get_monomial_points()

template<typename Curve_ >
std::vector< Commitment > bb::VerifierCommitmentKey< Curve_ >::get_monomial_points ( ) const
inline

Definition at line 48 of file verifier_commitment_key.hpp.

Member Data Documentation

◆ g1_identity

template<typename Curve_ >
Commitment bb::VerifierCommitmentKey< Curve_ >::g1_identity
private

Definition at line 51 of file verifier_commitment_key.hpp.

◆ monomial_points

template<typename Curve_ >
std::vector<Commitment> bb::VerifierCommitmentKey< Curve_ >::monomial_points
private

Definition at line 52 of file verifier_commitment_key.hpp.


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