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

#include <ultra_recursive_verifier.hpp>

Public Types

using FF = typename Flavor::FF
 
using Commitment = typename Flavor::Commitment
 
using GroupElement = typename Flavor::GroupElement
 
using RecursiveDeciderVK = RecursiveDeciderVerificationKey_< Flavor >
 
using VerificationKey = typename Flavor::VerificationKey
 
using VKAndHash = typename Flavor::VKAndHash
 
using VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey
 
using Builder = typename Flavor::CircuitBuilder
 
using PairingObject = PairingPoints< Builder >
 
using Transcript = bb::BaseTranscript< bb::stdlib::recursion::honk::StdlibTranscriptParams< Builder > >
 
using OinkVerifier = OinkRecursiveVerifier_< Flavor >
 
using Output = UltraRecursiveVerifierOutput< Builder >
 
using StdlibProof = stdlib::Proof< Builder >
 

Public Member Functions

 UltraRecursiveVerifier_ (Builder *builder, const std::shared_ptr< VKAndHash > &vk_and_hash, const std::shared_ptr< Transcript > &transcript=std::make_shared< Transcript >())
 
template<class IO >
Output verify_proof (const StdlibProof &proof)
 
template<class IO >
UltraRecursiveVerifier_< Flavor >::Output verify_proof (const stdlib::Proof< Builder > &proof)
 This function constructs a recursive verifier circuit for a native Ultra Honk proof of a given flavor.
 

Public Attributes

std::shared_ptr< RecursiveDeciderVKkey
 
VerifierCommitmentKey pcs_verification_key
 
Builderbuilder
 
std::shared_ptr< Transcripttranscript
 

Detailed Description

template<typename Flavor>
class bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >

Definition at line 53 of file ultra_recursive_verifier.hpp.

Member Typedef Documentation

◆ Builder

◆ Commitment

template<typename Flavor >
using bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::Commitment = typename Flavor::Commitment

Definition at line 56 of file ultra_recursive_verifier.hpp.

◆ FF

Definition at line 55 of file ultra_recursive_verifier.hpp.

◆ GroupElement

template<typename Flavor >
using bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::GroupElement = typename Flavor::GroupElement

Definition at line 57 of file ultra_recursive_verifier.hpp.

◆ OinkVerifier

Definition at line 65 of file ultra_recursive_verifier.hpp.

◆ Output

◆ PairingObject

Definition at line 63 of file ultra_recursive_verifier.hpp.

◆ RecursiveDeciderVK

Definition at line 58 of file ultra_recursive_verifier.hpp.

◆ StdlibProof

Definition at line 67 of file ultra_recursive_verifier.hpp.

◆ Transcript

◆ VerificationKey

◆ VerifierCommitmentKey

template<typename Flavor >
using bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey

Definition at line 61 of file ultra_recursive_verifier.hpp.

◆ VKAndHash

template<typename Flavor >
using bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::VKAndHash = typename Flavor::VKAndHash

Definition at line 60 of file ultra_recursive_verifier.hpp.

Constructor & Destructor Documentation

◆ UltraRecursiveVerifier_()

template<typename Flavor >
bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::UltraRecursiveVerifier_ ( Builder builder,
const std::shared_ptr< VKAndHash > &  vk_and_hash,
const std::shared_ptr< Transcript > &  transcript = std::make_shared<Transcript>() 
)
explicit

Definition at line 21 of file ultra_recursive_verifier.cpp.

Member Function Documentation

◆ verify_proof() [1/2]

template<typename Flavor >
template<class IO >
UltraRecursiveVerifier_< Flavor >::Output bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::verify_proof ( const stdlib::Proof< Builder > &  proof)

This function constructs a recursive verifier circuit for a native Ultra Honk proof of a given flavor.

Template Parameters
IOPublic input type, specifies which public inputs should be extracted from the proof
Returns
Output aggregation object

Definition at line 37 of file ultra_recursive_verifier.cpp.

◆ verify_proof() [2/2]

template<typename Flavor >
template<class IO >
Output bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::verify_proof ( const StdlibProof proof)

Member Data Documentation

◆ builder

Definition at line 80 of file ultra_recursive_verifier.hpp.

◆ key

Definition at line 78 of file ultra_recursive_verifier.hpp.

◆ pcs_verification_key

Definition at line 79 of file ultra_recursive_verifier.hpp.

◆ transcript

template<typename Flavor >
std::shared_ptr<Transcript> bb::stdlib::recursion::honk::UltraRecursiveVerifier_< Flavor >::transcript

Definition at line 81 of file ultra_recursive_verifier.hpp.


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