50 static constexpr bool HasZK =
false;
67 static constexpr size_t NUM_SUBRELATIONS = compute_number_of_subrelations<Relations>();
81 template <
typename DataType,
bool HasZK_ = HasZK>
89 "UltraFlavor (non-ZK) layout must not include masking columns");
94 "UltraZK layout must include exactly one masking column (gemini_masking_poly)");
96 static constexpr size_t TRACE_OFFSET = NUM_DISABLED_ROWS_IN_SUMCHECK;
118 static_assert(gemini_masking_layout_consistent<UltraFlavor>(),
119 "UltraFlavor gemini masking flag must match its entity layout");
124 template <
bool HasZK_ = HasZK>
142 template <
bool HasZK_ = HasZK>
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
CommitmentKey object over a pairing group 𝔾₁.
static const std::vector< std::string > & get_labels()
Base Native verification key class.
A container for storing the partially evaluated multivariates produced by sumcheck.
A container for polynomials handles used by the prover.
static constexpr size_t NUM_WIRES
A field element for each entity of the flavor. These entities represent the prover polynomials evalua...
AllEntities_< FF, HasZK_ > Base
static constexpr size_t NUM_SHIFTED_ENTITIES
static constexpr size_t NUM_MASKING_ENTITIES
static constexpr size_t NUM_PRECOMPUTED_ENTITIES
std::tuple< bb::UltraPermutationRelation< FF >, bb::LogDerivLookupRelation< FF >, bb::ArithmeticRelation< FF >, bb::DeltaRangeConstraintRelation< FF >, bb::EllipticRelation< FF >, bb::MemoryRelation< FF >, bb::NonNativeFieldRelation< FF >, bb::Poseidon2ExternalRelation< FF >, bb::Poseidon2InternalRelation< FF > > Relations_
static constexpr size_t NUM_UNSHIFTED_ENTITIES
static constexpr size_t NUM_WITNESS_ENTITIES
static const CommitmentLabels & commitment_labels()
crypto::Poseidon2< crypto::Poseidon2Bn254ScalarFieldParams > HashFunction
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
static constexpr bool USE_PADDING
static constexpr size_t NUM_RELATIONS
static constexpr bool HasZK
static constexpr bool USE_SHORT_MONOMIALS
static constexpr size_t FINAL_PCS_MSM_SIZE(size_t log_n=VIRTUAL_LOG_N)
Curve::AffineElement Commitment
static constexpr size_t MAX_PARTIAL_RELATION_LENGTH
std::conditional_t< HasZK_, UltraZKFlavor_Generated::AllEntities< DataType >, UltraFlavor_Generated::AllEntities< DataType > > AllEntities_
static constexpr size_t NUM_SUBRELATIONS
static constexpr size_t TRACE_OFFSET
static constexpr size_t VIRTUAL_LOG_N
AllEntities< std::string > CommitmentLabels
static constexpr bool USE_SIMD_SUMCHECK
Curve::Element GroupElement
Relations_< FF > Relations
static constexpr size_t NUM_WIRES
static constexpr size_t NUM_PRECOMPUTED_ENTITIES
static constexpr size_t NUM_WITNESS_ENTITIES
static constexpr size_t NUM_SHIFTED_ENTITIES
static constexpr size_t NUM_MASKING_ENTITIES
Wrapper holding a verification key and its precomputed hash.
typename Group::element Element
typename Group::affine_element AffineElement
Base class templates shared across Honk flavors.
Entry point for Barretenberg command-line interface.
UltraCircuitBuilder_< UltraExecutionTraceBlocks > UltraCircuitBuilder
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
The precomputed data needed to compute a Honk VK.