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

The recursive counterpart to UltraZKFlavor. More...

#include <ultra_zk_recursive_flavor.hpp>

Inheritance diagram for bb::UltraZKRecursiveFlavor_< BuilderType >:
bb::UltraRecursiveFlavor_< BuilderType >

Classes

class  AllValues
 

Public Types

using NativeFlavor = UltraZKFlavor
 
using Commitment = typename UltraRecursiveFlavor_< BuilderType >::Commitment
 
using VerificationKey = typename UltraRecursiveFlavor_< BuilderType >::VerificationKey
 
using FF = typename UltraRecursiveFlavor_< BuilderType >::FF
 
using VerifierCommitments = UltraFlavor::VerifierCommitments_< Commitment, VerificationKey, HasZK >
 
- Public Types inherited from bb::UltraRecursiveFlavor_< BuilderType >
using CircuitBuilder = BuilderType
 
using Curve = stdlib::bn254< CircuitBuilder >
 
using PCS = KZG< Curve >
 
using GroupElement = typename Curve::Element
 
using Commitment = typename Curve::Element
 
using FF = typename Curve::ScalarField
 
using NativeFlavor = UltraFlavor
 
using NativeVerificationKey = NativeFlavor::VerificationKey
 
using Codec = stdlib::StdlibCodec< FF >
 
using Transcript = StdlibTranscript< CircuitBuilder >
 
using Relations = UltraFlavor::Relations_< FF >
 
using SubrelationSeparator = FF
 
using VerificationKey = StdlibVerificationKey_< CircuitBuilder, NativeFlavor::PrecomputedEntities< Commitment >, typename NativeFlavor::VerificationKey >
 
using CommitmentLabels = UltraFlavor::CommitmentLabels
 
using WitnessCommitments = UltraFlavor::WitnessEntities< Commitment >
 
using VerifierCommitments = UltraFlavor::VerifierCommitments_< Commitment, VerificationKey >
 
using VKAndHash = VKAndHash_< FF, VerificationKey >
 

Static Public Member Functions

static constexpr size_t FINAL_PCS_MSM_SIZE (size_t log_n=UltraRecursiveFlavor_< BuilderType >::VIRTUAL_LOG_N)
 
- Static Public Member Functions inherited from bb::UltraRecursiveFlavor_< BuilderType >
static constexpr size_t FINAL_PCS_MSM_SIZE (size_t log_n=VIRTUAL_LOG_N)
 

Static Public Attributes

static constexpr bool HasZK = true
 
static constexpr size_t NUM_WITNESS_ENTITIES = NativeFlavor::NUM_WITNESS_ENTITIES
 
static constexpr size_t NUM_ALL_ENTITIES = NativeFlavor::NUM_ALL_ENTITIES
 
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH = NativeFlavor::BATCHED_RELATION_PARTIAL_LENGTH
 
- Static Public Attributes inherited from bb::UltraRecursiveFlavor_< BuilderType >
static constexpr size_t VIRTUAL_LOG_N = UltraFlavor::VIRTUAL_LOG_N
 
static constexpr bool USE_SHORT_MONOMIALS = UltraFlavor::USE_SHORT_MONOMIALS
 
static constexpr bool HasZK = false
 
static constexpr bool USE_PADDING = UltraFlavor::USE_PADDING
 
static constexpr size_t NUM_WIRES = UltraFlavor::NUM_WIRES
 
static constexpr size_t NUM_ALL_ENTITIES = UltraFlavor::NUM_ALL_ENTITIES
 
static constexpr size_t NUM_PRECOMPUTED_ENTITIES = UltraFlavor::NUM_PRECOMPUTED_ENTITIES
 
static constexpr size_t NUM_WITNESS_ENTITIES = UltraFlavor::NUM_WITNESS_ENTITIES
 
static constexpr RepeatedCommitmentsData REPEATED_COMMITMENTS = UltraFlavor::REPEATED_COMMITMENTS
 
static constexpr size_t MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length<Relations>()
 
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH = MAX_PARTIAL_RELATION_LENGTH + 1
 
static constexpr size_t NUM_RELATIONS = std::tuple_size<Relations>::value
 
static constexpr size_t NUM_SUBRELATIONS = NativeFlavor::NUM_SUBRELATIONS
 

Detailed Description

template<typename BuilderType>
class bb::UltraZKRecursiveFlavor_< BuilderType >

The recursive counterpart to UltraZKFlavor.

Adds ZK overrides (HasZK, BATCHED_RELATION_PARTIAL_LENGTH, AllValues with masking entities) on top of UltraRecursiveFlavor_.

Definition at line 18 of file ultra_zk_recursive_flavor.hpp.

Member Typedef Documentation

◆ Commitment

template<typename BuilderType >
using bb::UltraZKRecursiveFlavor_< BuilderType >::Commitment = typename UltraRecursiveFlavor_<BuilderType>::Commitment

Definition at line 21 of file ultra_zk_recursive_flavor.hpp.

◆ FF

template<typename BuilderType >
using bb::UltraZKRecursiveFlavor_< BuilderType >::FF = typename UltraRecursiveFlavor_<BuilderType>::FF

Definition at line 23 of file ultra_zk_recursive_flavor.hpp.

◆ NativeFlavor

template<typename BuilderType >
using bb::UltraZKRecursiveFlavor_< BuilderType >::NativeFlavor = UltraZKFlavor

Definition at line 20 of file ultra_zk_recursive_flavor.hpp.

◆ VerificationKey

template<typename BuilderType >
using bb::UltraZKRecursiveFlavor_< BuilderType >::VerificationKey = typename UltraRecursiveFlavor_<BuilderType>::VerificationKey

Definition at line 22 of file ultra_zk_recursive_flavor.hpp.

◆ VerifierCommitments

template<typename BuilderType >
using bb::UltraZKRecursiveFlavor_< BuilderType >::VerifierCommitments = UltraFlavor::VerifierCommitments_<Commitment, VerificationKey, HasZK>

Definition at line 45 of file ultra_zk_recursive_flavor.hpp.

Member Function Documentation

◆ FINAL_PCS_MSM_SIZE()

template<typename BuilderType >
static constexpr size_t bb::UltraZKRecursiveFlavor_< BuilderType >::FINAL_PCS_MSM_SIZE ( size_t  log_n = UltraRecursiveFlavor_<BuilderType>::VIRTUAL_LOG_N)
inlinestaticconstexpr

Definition at line 33 of file ultra_zk_recursive_flavor.hpp.

Member Data Documentation

◆ BATCHED_RELATION_PARTIAL_LENGTH

template<typename BuilderType >
constexpr size_t bb::UltraZKRecursiveFlavor_< BuilderType >::BATCHED_RELATION_PARTIAL_LENGTH = NativeFlavor::BATCHED_RELATION_PARTIAL_LENGTH
staticconstexpr

Definition at line 31 of file ultra_zk_recursive_flavor.hpp.

◆ HasZK

template<typename BuilderType >
constexpr bool bb::UltraZKRecursiveFlavor_< BuilderType >::HasZK = true
staticconstexpr

Definition at line 25 of file ultra_zk_recursive_flavor.hpp.

◆ NUM_ALL_ENTITIES

template<typename BuilderType >
constexpr size_t bb::UltraZKRecursiveFlavor_< BuilderType >::NUM_ALL_ENTITIES = NativeFlavor::NUM_ALL_ENTITIES
staticconstexpr

Definition at line 29 of file ultra_zk_recursive_flavor.hpp.

◆ NUM_WITNESS_ENTITIES

template<typename BuilderType >
constexpr size_t bb::UltraZKRecursiveFlavor_< BuilderType >::NUM_WITNESS_ENTITIES = NativeFlavor::NUM_WITNESS_ENTITIES
staticconstexpr

Definition at line 28 of file ultra_zk_recursive_flavor.hpp.


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