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

Public entrypoint for multilinear batching verification. More...

#include <multilinear_batching_verifier.hpp>

Public Types

using BaseFlavor = std::conditional_t< IsRecursive_, MultilinearBatchingRecursiveFlavor, MultilinearBatchingFlavor >
 
using Curve = typename BaseFlavor::Curve
 
using Transcript = typename BaseFlavor::Transcript
 
using VerifierClaim = MultilinearBatchingVerifierClaim< Curve >
 
using Proof = std::conditional_t< Curve::is_stdlib_type, stdlib::Proof< MegaCircuitBuilder >, HonkProof >
 

Public Member Functions

 MultilinearBatchingVerifier (const std::shared_ptr< Transcript > &transcript)
 
std::pair< bool, VerifierClaimverify_proof (const std::vector< VerifierClaim > &claims)
 
template<size_t NumClaims>
std::pair< bool, typename MultilinearBatchingVerifier< IsRecursive_ >::VerifierClaimverify_with_width (const std::vector< VerifierClaim > &claims)
 

Static Public Attributes

static constexpr bool IsRecursive = IsRecursive_
 

Private Member Functions

template<size_t NumClaims>
std::pair< bool, VerifierClaimverify_with_width (const std::vector< VerifierClaim > &claims)
 

Private Attributes

std::shared_ptr< Transcripttranscript
 

Detailed Description

template<bool IsRecursive_>
class bb::MultilinearBatchingVerifier< IsRecursive_ >

Public entrypoint for multilinear batching verification.

Templated only on the native/recursive axis (a compile-time caller choice). verify_proof() routes on the runtime claim count to the internal verifier of the matching width.

Definition at line 64 of file multilinear_batching_verifier.hpp.

Member Typedef Documentation

◆ BaseFlavor

template<bool IsRecursive_>
using bb::MultilinearBatchingVerifier< IsRecursive_ >::BaseFlavor = std::conditional_t<IsRecursive_, MultilinearBatchingRecursiveFlavor, MultilinearBatchingFlavor>

Definition at line 66 of file multilinear_batching_verifier.hpp.

◆ Curve

template<bool IsRecursive_>
using bb::MultilinearBatchingVerifier< IsRecursive_ >::Curve = typename BaseFlavor::Curve

Definition at line 67 of file multilinear_batching_verifier.hpp.

◆ Proof

Definition at line 70 of file multilinear_batching_verifier.hpp.

◆ Transcript

template<bool IsRecursive_>
using bb::MultilinearBatchingVerifier< IsRecursive_ >::Transcript = typename BaseFlavor::Transcript

Definition at line 68 of file multilinear_batching_verifier.hpp.

◆ VerifierClaim

template<bool IsRecursive_>
using bb::MultilinearBatchingVerifier< IsRecursive_ >::VerifierClaim = MultilinearBatchingVerifierClaim<Curve>

Definition at line 69 of file multilinear_batching_verifier.hpp.

Constructor & Destructor Documentation

◆ MultilinearBatchingVerifier()

template<bool IsRecursive_>
bb::MultilinearBatchingVerifier< IsRecursive_ >::MultilinearBatchingVerifier ( const std::shared_ptr< Transcript > &  transcript)
explicit

Definition at line 129 of file multilinear_batching_verifier.cpp.

Member Function Documentation

◆ verify_proof()

template<bool IsRecursive_>
std::pair< bool, typename MultilinearBatchingVerifier< IsRecursive_ >::VerifierClaim > bb::MultilinearBatchingVerifier< IsRecursive_ >::verify_proof ( const std::vector< VerifierClaim > &  claims)

Definition at line 147 of file multilinear_batching_verifier.cpp.

◆ verify_with_width() [1/2]

template<bool IsRecursive_>
template<size_t NumClaims>
std::pair< bool, typename MultilinearBatchingVerifier< IsRecursive_ >::VerifierClaim > bb::MultilinearBatchingVerifier< IsRecursive_ >::verify_with_width ( const std::vector< VerifierClaim > &  claims)

Definition at line 136 of file multilinear_batching_verifier.cpp.

◆ verify_with_width() [2/2]

template<bool IsRecursive_>
template<size_t NumClaims>
std::pair< bool, VerifierClaim > bb::MultilinearBatchingVerifier< IsRecursive_ >::verify_with_width ( const std::vector< VerifierClaim > &  claims)
private

Member Data Documentation

◆ IsRecursive

template<bool IsRecursive_>
constexpr bool bb::MultilinearBatchingVerifier< IsRecursive_ >::IsRecursive = IsRecursive_
staticconstexpr

Definition at line 72 of file multilinear_batching_verifier.hpp.

◆ transcript

template<bool IsRecursive_>
std::shared_ptr<Transcript> bb::MultilinearBatchingVerifier< IsRecursive_ >::transcript
private

Definition at line 83 of file multilinear_batching_verifier.hpp.


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