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

The DeciderVerificationKey encapsulates all the necessary information for a Mega Honk Verifier to verify a proof (sumcheck + Shplemini). In the context of folding, this is returned by the Protogalaxy verifier with non-zero target sum and gate challenges. More...

#include <decider_verification_key.hpp>

Public Types

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 CommitmentLabels = typename Flavor::CommitmentLabels
 
using SubrelationSeparators = typename Flavor::SubrelationSeparators
 
using Transcript = typename Flavor::Transcript
 

Public Member Functions

 DeciderVerificationKey_ ()=default
 
 DeciderVerificationKey_ (std::shared_ptr< VerificationKey > vk)
 
FF hash_through_transcript (const std::string &domain_separator, Transcript &transcript) const
 
 MSGPACK_FIELDS (vk, relation_parameters, alphas, is_complete, gate_challenges, target_sum, witness_commitments)
 

Public Attributes

std::shared_ptr< VerificationKeyvk
 
bool is_complete = false
 
std::vector< FFpublic_inputs
 
SubrelationSeparators alphas
 
RelationParameters< FFrelation_parameters
 
std::vector< FFgate_challenges
 
FF target_sum { 0 }
 
WitnessCommitments witness_commitments
 
CommitmentLabels commitment_labels
 

Detailed Description

template<IsUltraOrMegaHonk Flavor>
class bb::DeciderVerificationKey_< Flavor >

The DeciderVerificationKey encapsulates all the necessary information for a Mega Honk Verifier to verify a proof (sumcheck + Shplemini). In the context of folding, this is returned by the Protogalaxy verifier with non-zero target sum and gate challenges.

This is ϕ in the paper.

Definition at line 20 of file decider_verification_key.hpp.

Member Typedef Documentation

◆ Commitment

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::Commitment = typename Flavor::Commitment

Definition at line 23 of file decider_verification_key.hpp.

◆ CommitmentLabels

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::CommitmentLabels = typename Flavor::CommitmentLabels

Definition at line 27 of file decider_verification_key.hpp.

◆ FF

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::FF = typename Flavor::FF

Definition at line 22 of file decider_verification_key.hpp.

◆ SubrelationSeparators

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::SubrelationSeparators = typename Flavor::SubrelationSeparators

Definition at line 28 of file decider_verification_key.hpp.

◆ Transcript

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::Transcript = typename Flavor::Transcript

Definition at line 29 of file decider_verification_key.hpp.

◆ VerificationKey

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::VerificationKey = typename Flavor::VerificationKey

Definition at line 24 of file decider_verification_key.hpp.

◆ VerifierCommitmentKey

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey

Definition at line 25 of file decider_verification_key.hpp.

◆ WitnessCommitments

template<IsUltraOrMegaHonk Flavor>
using bb::DeciderVerificationKey_< Flavor >::WitnessCommitments = typename Flavor::WitnessCommitments

Definition at line 26 of file decider_verification_key.hpp.

Constructor & Destructor Documentation

◆ DeciderVerificationKey_() [1/2]

template<IsUltraOrMegaHonk Flavor>
bb::DeciderVerificationKey_< Flavor >::DeciderVerificationKey_ ( )
default

◆ DeciderVerificationKey_() [2/2]

template<IsUltraOrMegaHonk Flavor>
bb::DeciderVerificationKey_< Flavor >::DeciderVerificationKey_ ( std::shared_ptr< VerificationKey vk)
inline

Definition at line 46 of file decider_verification_key.hpp.

Member Function Documentation

◆ hash_through_transcript()

template<IsUltraOrMegaHonk Flavor>
FF bb::DeciderVerificationKey_< Flavor >::hash_through_transcript ( const std::string &  domain_separator,
Transcript transcript 
) const
inline

Definition at line 50 of file decider_verification_key.hpp.

◆ MSGPACK_FIELDS()

template<IsUltraOrMegaHonk Flavor>
bb::DeciderVerificationKey_< Flavor >::MSGPACK_FIELDS ( vk  ,
relation_parameters  ,
alphas  ,
is_complete  ,
gate_challenges  ,
target_sum  ,
witness_commitments   
)

Member Data Documentation

◆ alphas

template<IsUltraOrMegaHonk Flavor>
SubrelationSeparators bb::DeciderVerificationKey_< Flavor >::alphas

Definition at line 36 of file decider_verification_key.hpp.

◆ commitment_labels

template<IsUltraOrMegaHonk Flavor>
CommitmentLabels bb::DeciderVerificationKey_< Flavor >::commitment_labels

Definition at line 43 of file decider_verification_key.hpp.

◆ gate_challenges

template<IsUltraOrMegaHonk Flavor>
std::vector<FF> bb::DeciderVerificationKey_< Flavor >::gate_challenges

Definition at line 38 of file decider_verification_key.hpp.

◆ is_complete

template<IsUltraOrMegaHonk Flavor>
bool bb::DeciderVerificationKey_< Flavor >::is_complete = false

Definition at line 33 of file decider_verification_key.hpp.

◆ public_inputs

template<IsUltraOrMegaHonk Flavor>
std::vector<FF> bb::DeciderVerificationKey_< Flavor >::public_inputs

Definition at line 34 of file decider_verification_key.hpp.

◆ relation_parameters

template<IsUltraOrMegaHonk Flavor>
RelationParameters<FF> bb::DeciderVerificationKey_< Flavor >::relation_parameters

Definition at line 37 of file decider_verification_key.hpp.

◆ target_sum

template<IsUltraOrMegaHonk Flavor>
FF bb::DeciderVerificationKey_< Flavor >::target_sum { 0 }

Definition at line 40 of file decider_verification_key.hpp.

◆ vk

template<IsUltraOrMegaHonk Flavor>
std::shared_ptr<VerificationKey> bb::DeciderVerificationKey_< Flavor >::vk

Definition at line 31 of file decider_verification_key.hpp.

◆ witness_commitments

template<IsUltraOrMegaHonk Flavor>
WitnessCommitments bb::DeciderVerificationKey_< Flavor >::witness_commitments

Definition at line 42 of file decider_verification_key.hpp.


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