Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::TranslatorRecursiveFlavor::VerificationKey Class Reference

The verification key is responsible for storing the commitments to the precomputed (non-witnessk) polynomials used by the verifier. More...

#include <translator_recursive_flavor.hpp>

Inheritance diagram for bb::TranslatorRecursiveFlavor::VerificationKey:
bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA > bb::TranslatorFlavor::PrecomputedEntities< DataType_ >

Public Member Functions

 VerificationKey (CircuitBuilder *builder, const std::shared_ptr< NativeVerificationKey > &native_key)
 
FF hash_with_origin_tagging (const OriginTag &tag) const override
 Unused function because vk is hardcoded in recursive verifier, so no transcript hashing is needed.
 
void fix_witness ()
 
- Public Member Functions inherited from bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA >
bool operator== (const StdlibVerificationKey_ &) const=default
 
virtual ~StdlibVerificationKey_ ()=default
 
 StdlibVerificationKey_ ()=default
 
 StdlibVerificationKey_ (Builder *builder, const std::shared_ptr< T > &native_key)
 Construct a new Verification Key with stdlib types from a provided native verification key.
 
 StdlibVerificationKey_ (std::span< FF > elements)
 Deserialize a verification key from a vector of field elements.
 
void fix_witness ()
 Fixes witnesses of VK to be constants.
 
get_value () const
 Get the native verification key corresponding to this stdlib verification key.
 
FF hash_with_origin_tagging (const Transcript &transcript) const
 An overload that accepts a transcript and extracts the tag internally.
 
- Public Member Functions inherited from bb::TranslatorFlavor::PrecomputedEntities< DataType_ >
bool operator== (const PrecomputedEntities &other) const =default
 
 DEFINE_FLAVOR_MEMBERS (DataType, ordered_extra_range_constraints_numerator, lagrange_first, lagrange_last, lagrange_odd_in_minicircuit, lagrange_even_in_minicircuit, lagrange_result_row, lagrange_last_in_minicircuit, lagrange_masking, lagrange_mini_masking, lagrange_real_last)
 

Additional Inherited Members

- Public Types inherited from bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA >
using Builder = CircuitBuilder
 
using FF = stdlib::field_t< Builder >
 
using Commitment = typename PrecomputedCommitments::DataType
 
using Transcript = StdlibTranscript< Builder >
 
using NativeVerificationKey = NativeVerificationKey
 
- Public Types inherited from bb::TranslatorFlavor::PrecomputedEntities< DataType_ >
using DataType = DataType_
 
- Static Public Member Functions inherited from bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA >
static StdlibVerificationKey_ from_witness_indices (Builder &builder, const std::span< const uint32_t > &witness_indices)
 Construct a VerificationKey from a set of corresponding witness indices.
 
- Public Attributes inherited from bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA >
FF log_circuit_size
 
FF num_public_inputs
 
FF pub_inputs_offset
 

Detailed Description

The verification key is responsible for storing the commitments to the precomputed (non-witnessk) polynomials used by the verifier.

Note
Note the discrepancy with what sort of data is stored here vs in the proving key. We may want to resolve that, and split out separate PrecomputedPolynomials/Commitments data for clarity but also for portability of our circuits.

Definition at line 104 of file translator_recursive_flavor.hpp.

Constructor & Destructor Documentation

◆ VerificationKey()

bb::TranslatorRecursiveFlavor::VerificationKey::VerificationKey ( CircuitBuilder builder,
const std::shared_ptr< NativeVerificationKey > &  native_key 
)
inline

Definition at line 109 of file translator_recursive_flavor.hpp.

Member Function Documentation

◆ fix_witness()

void bb::TranslatorRecursiveFlavor::VerificationKey::fix_witness ( )
inline

Definition at line 134 of file translator_recursive_flavor.hpp.

◆ hash_with_origin_tagging()

FF bb::TranslatorRecursiveFlavor::VerificationKey::hash_with_origin_tagging ( const OriginTag tag) const
inlineoverridevirtual

Unused function because vk is hardcoded in recursive verifier, so no transcript hashing is needed.

Parameters
domain_separator
tag

Reimplemented from bb::StdlibVerificationKey_< CircuitBuilder, TranslatorFlavor::PrecomputedEntities< Commitment >, NativeVerificationKey, VKSerializationMode::NO_METADATA >.

Definition at line 129 of file translator_recursive_flavor.hpp.


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