Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
ultra_zk_recursive_flavor.hpp
Go to the documentation of this file.
1// === AUDIT STATUS ===
2// internal: { status: Completed, auditors: [Sergei], commit: }
3// external_1: { status: not started, auditors: [], commit: }
4// external_2: { status: not started, auditors: [], commit: }
5// =====================
6
7#pragma once
11
12namespace bb {
13
19template <typename BuilderType> class UltraZKRecursiveFlavor_ : public UltraRecursiveFlavor_<BuilderType> {
20 public:
25
26 static constexpr bool HasZK = true;
27
28 // Get constants from NativeFlavor to ensure consistency
31
33
35 {
37 }
38
39 // Override to include ZK entities
40 class AllValues : public UltraFlavor::AllEntities_<FF, HasZK> {
41 public:
43 using Base::Base;
44 };
45
46 static_assert(gemini_masking_layout_consistent<UltraZKRecursiveFlavor_>(),
47 "UltraZKRecursiveFlavor gemini masking flag must match its entity layout");
48};
49
50} // namespace bb
Base Stdlib verification key class.
Definition flavor.hpp:378
std::conditional_t< HasZK_, UltraZKFlavor_Generated::AllEntities< DataType >, UltraFlavor_Generated::AllEntities< DataType > > AllEntities_
The recursive counterpart to the "native" Ultra flavor.
typename Curve::Element Commitment
typename Curve::ScalarField FF
Child class of UltraFlavor that runs with ZK Sumcheck.
static constexpr size_t FINAL_PCS_MSM_SIZE(size_t log_n=CONST_PROOF_SIZE_LOG_N)
static constexpr size_t NUM_WITNESS_ENTITIES
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
static constexpr size_t NUM_ALL_ENTITIES
UltraFlavor::AllEntities_< FF, HasZK > Base
The recursive counterpart to UltraZKFlavor.
static constexpr size_t FINAL_PCS_MSM_SIZE(size_t log_n=UltraRecursiveFlavor_< BuilderType >::VIRTUAL_LOG_N)
static constexpr size_t NUM_WITNESS_ENTITIES
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
typename UltraRecursiveFlavor_< BuilderType >::VerificationKey VerificationKey
typename UltraRecursiveFlavor_< BuilderType >::Commitment Commitment
typename UltraRecursiveFlavor_< BuilderType >::FF FF
Entry point for Barretenberg command-line interface.
Definition api.hpp:5