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

The VerifierInstance encapsulates all the necessary information for a Honk Verifier to verify a proof (sumcheck + Shplemini). In the context of folding, this is provided to the Hypernova verifier as an incoming instance. More...

#include <verifier_instance.hpp>

Public Types

using Flavor = Flavor_
 
using FF = typename Flavor::FF
 
using Commitment = typename Flavor::Commitment
 
using VerificationKey = typename Flavor::VerificationKey
 
using VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey
 
using WitnessCommitments = typename Flavor::WitnessCommitments
 
using SubrelationSeparator = typename Flavor::SubrelationSeparator
 
using Transcript = typename Flavor::Transcript
 
using VKAndHash = typename Flavor::VKAndHash
 

Public Member Functions

 VerifierInstance_ (std::shared_ptr< VKAndHash > vk_and_hash)
 
std::shared_ptr< VerificationKeyget_vk () const
 Get the verification key.
 

Public Attributes

std::shared_ptr< VKAndHashvk_and_hash
 
std::vector< FFpublic_inputs
 
SubrelationSeparator alpha
 
RelationParameters< FFrelation_parameters
 
std::vector< FFgate_challenges
 
WitnessCommitments witness_commitments
 
Commitment gemini_masking_commitment
 

Detailed Description

template<typename Flavor_>
class bb::VerifierInstance_< Flavor_ >

The VerifierInstance encapsulates all the necessary information for a Honk Verifier to verify a proof (sumcheck + Shplemini). In the context of folding, this is provided to the Hypernova verifier as an incoming instance.

Works with both native and recursive flavors.

Definition at line 20 of file verifier_instance.hpp.

Member Typedef Documentation

◆ Commitment

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::Commitment = typename Flavor::Commitment

Definition at line 24 of file verifier_instance.hpp.

◆ FF

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::FF = typename Flavor::FF

Definition at line 23 of file verifier_instance.hpp.

◆ Flavor

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::Flavor = Flavor_

Definition at line 22 of file verifier_instance.hpp.

◆ SubrelationSeparator

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::SubrelationSeparator = typename Flavor::SubrelationSeparator

Definition at line 28 of file verifier_instance.hpp.

◆ Transcript

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::Transcript = typename Flavor::Transcript

Definition at line 29 of file verifier_instance.hpp.

◆ VerificationKey

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::VerificationKey = typename Flavor::VerificationKey

Definition at line 25 of file verifier_instance.hpp.

◆ VerifierCommitmentKey

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey

Definition at line 26 of file verifier_instance.hpp.

◆ VKAndHash

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::VKAndHash = typename Flavor::VKAndHash

Definition at line 30 of file verifier_instance.hpp.

◆ WitnessCommitments

template<typename Flavor_ >
using bb::VerifierInstance_< Flavor_ >::WitnessCommitments = typename Flavor::WitnessCommitments

Definition at line 27 of file verifier_instance.hpp.

Constructor & Destructor Documentation

◆ VerifierInstance_()

template<typename Flavor_ >
bb::VerifierInstance_< Flavor_ >::VerifierInstance_ ( std::shared_ptr< VKAndHash vk_and_hash)
inlineexplicit

Definition at line 45 of file verifier_instance.hpp.

Member Function Documentation

◆ get_vk()

template<typename Flavor_ >
std::shared_ptr< VerificationKey > bb::VerifierInstance_< Flavor_ >::get_vk ( ) const
inline

Get the verification key.

Returns
Verification key shared pointer

Definition at line 53 of file verifier_instance.hpp.

Member Data Documentation

◆ alpha

template<typename Flavor_ >
SubrelationSeparator bb::VerifierInstance_< Flavor_ >::alpha

Definition at line 36 of file verifier_instance.hpp.

◆ gate_challenges

template<typename Flavor_ >
std::vector<FF> bb::VerifierInstance_< Flavor_ >::gate_challenges

Definition at line 38 of file verifier_instance.hpp.

◆ gemini_masking_commitment

template<typename Flavor_ >
Commitment bb::VerifierInstance_< Flavor_ >::gemini_masking_commitment

Definition at line 43 of file verifier_instance.hpp.

◆ public_inputs

template<typename Flavor_ >
std::vector<FF> bb::VerifierInstance_< Flavor_ >::public_inputs

Definition at line 34 of file verifier_instance.hpp.

◆ relation_parameters

template<typename Flavor_ >
RelationParameters<FF> bb::VerifierInstance_< Flavor_ >::relation_parameters

Definition at line 37 of file verifier_instance.hpp.

◆ vk_and_hash

template<typename Flavor_ >
std::shared_ptr<VKAndHash> bb::VerifierInstance_< Flavor_ >::vk_and_hash

Definition at line 32 of file verifier_instance.hpp.

◆ witness_commitments

template<typename Flavor_ >
WitnessCommitments bb::VerifierInstance_< Flavor_ >::witness_commitments

Definition at line 40 of file verifier_instance.hpp.


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