Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::TranslatorFlavor Class Reference

#include <translator_flavor.hpp>

Classes

class  AllEntities
 A base class labelling all entities (for instance, all of the polynomials used by the prover during sumcheck) in this Honk variant along with particular subsets of interest. More...
 
class  AllValues
 A field element for each entity of the flavor. These entities represent the prover polynomials evaluated at one point. More...
 
class  CommitmentLabels
 A container for commitment labels. More...
 
class  ConcatenatedPolynomials
 
class  DerivedShiftedEntities
 Ordered range constraint + z_perm shifted entities. More...
 
class  DerivedWitnessEntities
 
class  MaskingEntities
 Container for ZK entities (gemini masking polynomial for ZK-PCS) More...
 
class  NonOpQueueShiftedEntities
 Non-op-queue minicircuit wire shifted entities (mirrors NonOpQueueWiresToBeShiftedEntities) More...
 
class  NonOpQueueWiresToBeShiftedEntities
 All non-op-queue wires that need to be shifted (composed of non-range main + range constraint) More...
 
class  NonRangeMainWires
 Non-range main wires (13 wires that go into concatenated group 4) More...
 
class  OpQueueShiftedEntities
 Op queue shifted entities (mirrors OpQueueWiresToBeShiftedEntities) More...
 
class  OpQueueWireNonshiftedEntities
 Op queue wires (non-shifted): these represent the op queue and are provided by the merge protocol. More...
 
class  OpQueueWiresToBeShiftedEntities
 Op queue wires (to be shifted): first 3 wires of the to-be-shifted group. More...
 
class  OrderedRangeConstraints
 
class  PrecomputedEntities
 A base class labelling precomputed entities and (ordered) subsets of interest. More...
 
class  ProverPolynomials
 A container for the prover polynomials handles. More...
 
class  ProvingKey
 The proving key is responsible for storing the polynomials used by the prover. More...
 
class  RangeConstraintWires
 Range constraint wires (64 wires that go into concatenated groups 0-3) More...
 
class  ShiftedEntities
 Represents polynomials shifted by 1 or their evaluations, defined relative to WireToBeShiftedEntities. More...
 
class  VerifierCommitments_
 
class  VKEntities
 The only precomputed commitment the verifier needs for PCS. More...
 
class  WireNonshiftedEntities
 All wire entities that are not shifted (currently just the op queue wire) More...
 
class  WireToBeShiftedEntities
 All wires to be shifted (op queue + non-op-queue) More...
 
class  WitnessEntities
 Container for all witness polynomials used/constructed by the prover. More...
 

Public Types

using CircuitBuilder = TranslatorCircuitBuilder
 
using Curve = curve::BN254
 
using PCS = KZG< Curve >
 
using GroupElement = Curve::Element
 
using Commitment = Curve::AffineElement
 
using CommitmentKey = bb::CommitmentKey< Curve >
 
using VerifierCommitmentKey = bb::VerifierCommitmentKey< Curve >
 
using FF = Curve::ScalarField
 
using BF = Curve::BaseField
 
using Polynomial = bb::Polynomial< FF >
 
using Codec = FrCodec
 
using HashFunction = crypto::Poseidon2< crypto::Poseidon2Bn254ScalarFieldParams >
 
using Transcript = BaseTranscript< Codec, HashFunction >
 
using GrandProductRelations = std::tuple< TranslatorPermutationRelation< FF > >
 
template<typename FF >
using Relations_ = std::tuple< TranslatorPermutationRelation< FF >, TranslatorDeltaRangeConstraintRelation< FF >, TranslatorOpcodeConstraintRelation< FF >, TranslatorAccumulatorTransferRelation< FF >, TranslatorDecompositionRelation< FF >, TranslatorNonNativeFieldRelation< FF >, TranslatorZeroConstraintsRelation< FF > >
 
using Relations = Relations_< FF >
 
using SubrelationSeparators = std::array< FF, NUM_SUBRELATIONS - 1 >
 
using VerificationKey = FixedVKAndHash_< VKEntities< Commitment >, FF, TranslatorHardcodedVKAndHash >
 The verification key stores commitments to the precomputed polynomials used by the verifier.
 
using PartiallyEvaluatedMultivariates = PartiallyEvaluatedMultivariatesBase< AllEntities< Polynomial >, ProverPolynomials, Polynomial >
 A container for storing the partially evaluated multivariates produced by sumcheck.
 
template<size_t LENGTH>
using ProverUnivariates = AllEntities< bb::Univariate< FF, LENGTH > >
 A container for univariates used during sumcheck.
 
using ExtendedEdges = ProverUnivariates< MAX_PARTIAL_RELATION_LENGTH >
 A container for univariates produced during the hot loop in sumcheck.
 
using VerifierCommitments = VerifierCommitments_< Commitment, VerificationKey >
 

Static Public Member Functions

template<typename DataType , typename WireRefs >
static std::vector< RefVector< DataType > > partition_minicircuit_wires_into_groups (WireRefs wire_refs, DataType &zero_value)
 Partition minicircuit wire references into concatenation groups.
 
template<typename FFType >
static void compute_computable_precomputed (AllEntities< FFType > &evals, std::span< const FFType > challenge)
 Compute the computable precomputed selector evaluations and write them into AllEntities.
 
template<typename PolyContainer >
static std::array< FF, NUM_MINICIRCUIT_EVALUATIONSget_minicircuit_evaluations (PolyContainer &polys)
 Prover: read the 154 minicircuit wire evaluations from partially-evaluated polynomials.
 
template<typename FFType >
static void set_minicircuit_evaluations (AllEntities< FFType > &evals, const std::array< FFType, NUM_MINICIRCUIT_EVALUATIONS > &mid)
 Verifier: place the 154 raw mid-sumcheck minicircuit wire evaluations into AllEntities.
 
template<typename FFType >
static void complete_claimed_evaluations (AllEntities< FFType > &evals, std::span< const FFType > challenge)
 Verifier: complete the claimed evaluations for the sumcheck relation check.
 
template<typename FFType >
static void complete_full_circuit_evaluations (AllEntities< FFType > &evals, const std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONS > &full_circuit, std::span< const FFType > challenge)
 Verifier: complete full-circuit evaluations from received array and challenge.
 
template<typename FFType >
static std::array< FFType, NUM_CONCATENATED_POLYSreconstruct_concatenated_evaluations (const std::vector< RefVector< FFType > > &groups, std::span< const FFType > challenge)
 Reconstruct concatenated polynomial evaluations from individual wire evaluations using the Lagrange basis over the top log2(CONCATENATION_GROUP_SIZE) challenges.
 
template<typename FFType >
static std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONSget_full_circuit_evaluations (AllEntities< FFType > &evals)
 Prover: extract the full-circuit evaluations via get_full_circuit_entities().
 
template<typename FFType >
static void set_full_circuit_evaluations (AllEntities< FFType > &evals, const std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONS > &full_circuit)
 Verifier: write the full-circuit evaluations back via get_full_circuit_entities().
 
template<typename ProverPolynomialsOrPartiallyEvaluatedMultivariates , typename EdgeType >
static bool skip_entire_row (const ProverPolynomialsOrPartiallyEvaluatedMultivariates &polynomials, const EdgeType edge_idx)
 When evaluating the sumcheck protocol - can we skip evaluation of all relations for a given row?
 

Static Public Attributes

static constexpr bool USE_SHORT_MONOMIALS = false
 
static constexpr bool HasZK = true
 
static constexpr bool USE_PADDING = false
 
static constexpr size_t NUM_MASKING_POLYNOMIALS = 1
 
static constexpr size_t NUM_OP_QUEUE_WIRES = 4
 
static constexpr size_t CONCATENATION_GROUP_SIZE = 16
 
static constexpr size_t LOG_MINI_CIRCUIT_SIZE = CONST_TRANSLATOR_MINI_CIRCUIT_LOG_SIZE
 
static constexpr size_t CONST_TRANSLATOR_LOG_N = LOG_MINI_CIRCUIT_SIZE + numeric::get_msb(CONCATENATION_GROUP_SIZE)
 
static constexpr size_t VIRTUAL_LOG_N = CONST_TRANSLATOR_LOG_N
 
static constexpr size_t MINI_CIRCUIT_SIZE = 1UL << LOG_MINI_CIRCUIT_SIZE
 
static constexpr size_t NUM_CONCATENATED_POLYS = 5
 
static constexpr size_t SORT_STEP = 3
 
static constexpr size_t NUM_WIRES = CircuitBuilder::NUM_WIRES
 
static constexpr size_t RESULT_ROW = CircuitBuilder::RESULT_ROW
 
static constexpr size_t NUM_MASKED_ROWS_END = CircuitBuilder::NUM_RANDOM_OPS_END * 2
 
static constexpr size_t MAX_RANDOM_VALUES_PER_ORDERED = CONCATENATION_GROUP_SIZE * NUM_MASKED_ROWS_END
 
static constexpr size_t RANDOMNESS_START = 2 * CircuitBuilder::NUM_NO_OPS_START
 
static constexpr size_t MICRO_LIMB_BITS = CircuitBuilder::MICRO_LIMB_BITS
 
static constexpr size_t SORTED_STEPS_COUNT = ((1 << MICRO_LIMB_BITS) / SORT_STEP) + 1
 
static constexpr size_t NUM_LIMB_BITS = CircuitBuilder::NUM_LIMB_BITS
 
static constexpr size_t MINIMUM_MINI_CIRCUIT_SIZE = 2048
 
static constexpr size_t NUM_SUBRELATIONS = compute_number_of_subrelations<Relations>()
 
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 + 2
 
static constexpr size_t NUM_RELATIONS = std::tuple_size_v<Relations>
 
static constexpr size_t num_frs_comm = FrCodec::calc_num_fields<Commitment>()
 
static constexpr size_t num_frs_fr = FrCodec::calc_num_fields<FF>()
 
static constexpr size_t num_frs_fq = FrCodec::calc_num_fields<BF>()
 
static constexpr size_t NUM_PRECOMPUTED_ENTITIES = PrecomputedEntities<FF>::_members_size
 
static constexpr size_t NUM_WIRES_NON_SHIFTED = WireNonshiftedEntities<FF>::_members_size
 
static constexpr size_t NUM_ORDERED_RANGE = OrderedRangeConstraints<FF>::_members_size
 
static constexpr size_t NUM_WITNESS_ENTITIES
 
static constexpr size_t NUM_SHIFTED_ENTITIES
 
static constexpr size_t NUM_ALL_ENTITIES
 
static constexpr size_t NUM_COMPUTABLE_PRECOMPUTED = NUM_PRECOMPUTED_ENTITIES - 1
 
static constexpr size_t NUM_MINICIRCUIT_WIRES
 
static constexpr size_t NUM_MINICIRCUIT_EVALUATIONS = 2 * NUM_MINICIRCUIT_WIRES
 
static constexpr size_t NUM_SENT_EVALUATIONS
 
static constexpr size_t NUM_FULL_CIRCUIT_EVALUATIONS = NUM_SENT_EVALUATIONS - NUM_MINICIRCUIT_EVALUATIONS
 
static constexpr size_t NUM_CONCATENATED_WIRES = NUM_CONCATENATED_POLYS * CONCATENATION_GROUP_SIZE
 
static constexpr size_t NUM_UNSHIFTED_WITNESSES_WITHOUT_CONCATENATED
 
static constexpr size_t NUM_TO_BE_SHIFTED
 
static constexpr size_t NUM_PCS_UNSHIFTED
 
static constexpr size_t NUM_PCS_TO_BE_SHIFTED = NUM_TO_BE_SHIFTED + NUM_CONCATENATED_POLYS
 
static constexpr size_t TO_BE_SHIFTED_WITNESSES_START = NUM_PRECOMPUTED_ENTITIES + NUM_WIRES_NON_SHIFTED
 
static constexpr size_t SHIFTED_WITNESSES_START = NUM_SHIFTED_ENTITIES + TO_BE_SHIFTED_WITNESSES_START
 
static constexpr size_t NUM_COMMITMENTS_IN_PROOF = NUM_CONCATENATED_POLYS + NUM_ORDERED_RANGE
 
static constexpr RepeatedCommitmentsData REPEATED_COMMITMENTS
 
static constexpr size_t PROOF_LENGTH
 

Detailed Description

Definition at line 33 of file translator_flavor.hpp.

Member Typedef Documentation

◆ BF

◆ CircuitBuilder

◆ Codec

Definition at line 46 of file translator_flavor.hpp.

◆ Commitment

◆ CommitmentKey

◆ Curve

◆ ExtendedEdges

A container for univariates produced during the hot loop in sumcheck.

Definition at line 1165 of file translator_flavor.hpp.

◆ FF

◆ GrandProductRelations

◆ GroupElement

◆ HashFunction

◆ PartiallyEvaluatedMultivariates

A container for storing the partially evaluated multivariates produced by sumcheck.

Definition at line 1154 of file translator_flavor.hpp.

◆ PCS

Definition at line 38 of file translator_flavor.hpp.

◆ Polynomial

◆ ProverUnivariates

template<size_t LENGTH>
using bb::TranslatorFlavor::ProverUnivariates = AllEntities<bb::Univariate<FF, LENGTH> >

A container for univariates used during sumcheck.

Definition at line 1160 of file translator_flavor.hpp.

◆ Relations

◆ Relations_

◆ SubrelationSeparators

Definition at line 139 of file translator_flavor.hpp.

◆ Transcript

◆ VerificationKey

The verification key stores commitments to the precomputed polynomials used by the verifier.

Translator has a fixed circuit size, so the VK is hardcoded in recursive verifiers. Only ordered_extra_range_constraints_numerator needs a commitment — all other precomputed selectors are structured multilinear polynomials whose evaluations the verifier computes analytically.

Definition at line 1149 of file translator_flavor.hpp.

◆ VerifierCommitmentKey

◆ VerifierCommitments

Member Function Documentation

◆ complete_claimed_evaluations()

template<typename FFType >
static void bb::TranslatorFlavor::complete_claimed_evaluations ( AllEntities< FFType > &  evals,
std::span< const FFType >  challenge 
)
inlinestatic

Verifier: complete the claimed evaluations for the sumcheck relation check.

After set_full_circuit_evaluations and set_minicircuit_evaluations have placed raw values, this method:

  1. Computes the 10 structured precomputed selector evaluations from the challenge.
  2. Multiplies the 154 minicircuit wire entries by L_0(u_top) = Π(1 - u_i) for the top 4 challenges, converting mid-sumcheck values to full evaluations at the sumcheck point.

Definition at line 869 of file translator_flavor.hpp.

◆ complete_full_circuit_evaluations()

template<typename FFType >
static void bb::TranslatorFlavor::complete_full_circuit_evaluations ( AllEntities< FFType > &  evals,
const std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONS > &  full_circuit,
std::span< const FFType >  challenge 
)
inlinestatic

Verifier: complete full-circuit evaluations from received array and challenge.

Assumes minicircuit wire evaluations have already been placed into evals via set_minicircuit_evaluations. This method:

  1. Sets the received full-circuit evaluations (excluding concatenated poly evals).
  2. Completes claimed evaluations (computable precomputed selectors + L_0 scaling).
  3. Reconstructs the 5 concatenated polynomial evaluations from individual wire evaluations.

Definition at line 896 of file translator_flavor.hpp.

◆ compute_computable_precomputed()

template<typename FFType >
static void bb::TranslatorFlavor::compute_computable_precomputed ( AllEntities< FFType > &  evals,
std::span< const FFType >  challenge 
)
inlinestatic

Compute the computable precomputed selector evaluations and write them into AllEntities.

Definition at line 818 of file translator_flavor.hpp.

◆ get_full_circuit_evaluations()

template<typename FFType >
static std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONS > bb::TranslatorFlavor::get_full_circuit_evaluations ( AllEntities< FFType > &  evals)
inlinestatic

Prover: extract the full-circuit evaluations via get_full_circuit_entities().

Definition at line 970 of file translator_flavor.hpp.

◆ get_minicircuit_evaluations()

template<typename PolyContainer >
static std::array< FF, NUM_MINICIRCUIT_EVALUATIONS > bb::TranslatorFlavor::get_minicircuit_evaluations ( PolyContainer &  polys)
inlinestatic

Prover: read the 154 minicircuit wire evaluations from partially-evaluated polynomials.

After LOG_MINI_CIRCUIT_SIZE rounds, each polynomial has been folded to a single value at index [0]. We extract the 77 unshifted + 77 shifted minicircuit wire evaluations.

Definition at line 829 of file translator_flavor.hpp.

◆ partition_minicircuit_wires_into_groups()

template<typename DataType , typename WireRefs >
static std::vector< RefVector< DataType > > bb::TranslatorFlavor::partition_minicircuit_wires_into_groups ( WireRefs  wire_refs,
DataType &  zero_value 
)
inlinestatic

Partition minicircuit wire references into concatenation groups.

Takes a flat list of minicircuit wire refs (NonRangeMain followed by RangeConstraint) and partitions them: groups 0..3 are sequential chunks of CONCATENATION_GROUP_SIZE range constraint wires, group 4 is the non-range main wires with zero-padding. Used by both get_groups_to_be_concatenated() and get_groups_to_be_concatenated_shifted().

Definition at line 785 of file translator_flavor.hpp.

◆ reconstruct_concatenated_evaluations()

template<typename FFType >
static std::array< FFType, NUM_CONCATENATED_POLYS > bb::TranslatorFlavor::reconstruct_concatenated_evaluations ( const std::vector< RefVector< FFType > > &  groups,
std::span< const FFType >  challenge 
)
inlinestatic

Reconstruct concatenated polynomial evaluations from individual wire evaluations using the Lagrange basis over the top log2(CONCATENATION_GROUP_SIZE) challenges.

The concatenated polynomial F(X) is laid out in CONCATENATION_GROUP_SIZE sequential blocks. Given evaluations of the individual wires f_j(u) at the sumcheck challenge u, the evaluation of F(u) is reconstructed as: F(u) = [1/L_0(u_top)] * Σ_j L_j(u_top) * f_j(u), where L_j are the Lagrange basis polynomials over the top challenges and L_0 is the "padding" factor.

Parameters
groupsThe 5 groups of 16 wire evaluations to reconstruct from.
challengeThe full sumcheck challenge vector.
Returns
Array of 5 reconstructed concatenated evaluations.

Definition at line 925 of file translator_flavor.hpp.

◆ set_full_circuit_evaluations()

template<typename FFType >
static void bb::TranslatorFlavor::set_full_circuit_evaluations ( AllEntities< FFType > &  evals,
const std::array< FFType, NUM_FULL_CIRCUIT_EVALUATIONS > &  full_circuit 
)
inlinestatic

Verifier: write the full-circuit evaluations back via get_full_circuit_entities().

Definition at line 984 of file translator_flavor.hpp.

◆ set_minicircuit_evaluations()

template<typename FFType >
static void bb::TranslatorFlavor::set_minicircuit_evaluations ( AllEntities< FFType > &  evals,
const std::array< FFType, NUM_MINICIRCUIT_EVALUATIONS > &  mid 
)
inlinestatic

Verifier: place the 154 raw mid-sumcheck minicircuit wire evaluations into AllEntities.

These are evaluations after LOG_MINI_CIRCUIT_SIZE rounds of partial evaluation (before the top-4 rounds). They must be scaled by L_0(u_top) before the relation check — see complete_claimed_evaluations.

Definition at line 848 of file translator_flavor.hpp.

◆ skip_entire_row()

template<typename ProverPolynomialsOrPartiallyEvaluatedMultivariates , typename EdgeType >
static bool bb::TranslatorFlavor::skip_entire_row ( const ProverPolynomialsOrPartiallyEvaluatedMultivariates &  polynomials,
const EdgeType  edge_idx 
)
inlinestatic

When evaluating the sumcheck protocol - can we skip evaluation of all relations for a given row?

When used in Chonk, the Translator has a large fixed size, which is often not fully utilized. If a row is completely empty, the values of z_perm and z_perm_shift will match, we can use this as a proxy to determine if we can skip Sumcheck::compute_univariate

Definition at line 1215 of file translator_flavor.hpp.

Member Data Documentation

◆ BATCHED_RELATION_PARTIAL_LENGTH

constexpr size_t bb::TranslatorFlavor::BATCHED_RELATION_PARTIAL_LENGTH = MAX_PARTIAL_RELATION_LENGTH + 2
staticconstexpr

Definition at line 148 of file translator_flavor.hpp.

◆ CONCATENATION_GROUP_SIZE

constexpr size_t bb::TranslatorFlavor::CONCATENATION_GROUP_SIZE = 16
staticconstexpr

Definition at line 69 of file translator_flavor.hpp.

◆ CONST_TRANSLATOR_LOG_N

constexpr size_t bb::TranslatorFlavor::CONST_TRANSLATOR_LOG_N = LOG_MINI_CIRCUIT_SIZE + numeric::get_msb(CONCATENATION_GROUP_SIZE)
staticconstexpr

Definition at line 75 of file translator_flavor.hpp.

◆ HasZK

constexpr bool bb::TranslatorFlavor::HasZK = true
staticconstexpr

Definition at line 54 of file translator_flavor.hpp.

◆ LOG_MINI_CIRCUIT_SIZE

constexpr size_t bb::TranslatorFlavor::LOG_MINI_CIRCUIT_SIZE = CONST_TRANSLATOR_MINI_CIRCUIT_LOG_SIZE
staticconstexpr

Definition at line 72 of file translator_flavor.hpp.

◆ MAX_PARTIAL_RELATION_LENGTH

constexpr size_t bb::TranslatorFlavor::MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length<Relations>()
staticconstexpr

Definition at line 141 of file translator_flavor.hpp.

◆ MAX_RANDOM_VALUES_PER_ORDERED

constexpr size_t bb::TranslatorFlavor::MAX_RANDOM_VALUES_PER_ORDERED = CONCATENATION_GROUP_SIZE * NUM_MASKED_ROWS_END
staticconstexpr

Definition at line 103 of file translator_flavor.hpp.

◆ MICRO_LIMB_BITS

constexpr size_t bb::TranslatorFlavor::MICRO_LIMB_BITS = CircuitBuilder::MICRO_LIMB_BITS
staticconstexpr

Definition at line 109 of file translator_flavor.hpp.

◆ MINI_CIRCUIT_SIZE

constexpr size_t bb::TranslatorFlavor::MINI_CIRCUIT_SIZE = 1UL << LOG_MINI_CIRCUIT_SIZE
staticconstexpr

Definition at line 80 of file translator_flavor.hpp.

◆ MINIMUM_MINI_CIRCUIT_SIZE

constexpr size_t bb::TranslatorFlavor::MINIMUM_MINI_CIRCUIT_SIZE = 2048
staticconstexpr

Definition at line 123 of file translator_flavor.hpp.

◆ NUM_ALL_ENTITIES

constexpr size_t bb::TranslatorFlavor::NUM_ALL_ENTITIES
staticconstexpr
Initial value:
=
static constexpr size_t NUM_MASKING_POLYNOMIALS
static constexpr size_t NUM_WITNESS_ENTITIES
static constexpr size_t NUM_PRECOMPUTED_ENTITIES
static constexpr size_t NUM_SHIFTED_ENTITIES

Definition at line 696 of file translator_flavor.hpp.

◆ NUM_COMMITMENTS_IN_PROOF

constexpr size_t bb::TranslatorFlavor::NUM_COMMITMENTS_IN_PROOF = NUM_CONCATENATED_POLYS + NUM_ORDERED_RANGE
staticconstexpr

Definition at line 738 of file translator_flavor.hpp.

◆ NUM_COMPUTABLE_PRECOMPUTED

constexpr size_t bb::TranslatorFlavor::NUM_COMPUTABLE_PRECOMPUTED = NUM_PRECOMPUTED_ENTITIES - 1
staticconstexpr

Definition at line 700 of file translator_flavor.hpp.

◆ NUM_CONCATENATED_POLYS

constexpr size_t bb::TranslatorFlavor::NUM_CONCATENATED_POLYS = 5
staticconstexpr

Definition at line 83 of file translator_flavor.hpp.

◆ NUM_CONCATENATED_WIRES

constexpr size_t bb::TranslatorFlavor::NUM_CONCATENATED_WIRES = NUM_CONCATENATED_POLYS * CONCATENATION_GROUP_SIZE
staticconstexpr

Definition at line 716 of file translator_flavor.hpp.

◆ num_frs_comm

constexpr size_t bb::TranslatorFlavor::num_frs_comm = FrCodec::calc_num_fields<Commitment>()
staticconstexpr

Definition at line 153 of file translator_flavor.hpp.

◆ num_frs_fq

constexpr size_t bb::TranslatorFlavor::num_frs_fq = FrCodec::calc_num_fields<BF>()
staticconstexpr

Definition at line 155 of file translator_flavor.hpp.

◆ num_frs_fr

constexpr size_t bb::TranslatorFlavor::num_frs_fr = FrCodec::calc_num_fields<FF>()
staticconstexpr

Definition at line 154 of file translator_flavor.hpp.

◆ NUM_FULL_CIRCUIT_EVALUATIONS

constexpr size_t bb::TranslatorFlavor::NUM_FULL_CIRCUIT_EVALUATIONS = NUM_SENT_EVALUATIONS - NUM_MINICIRCUIT_EVALUATIONS
staticconstexpr

Definition at line 713 of file translator_flavor.hpp.

◆ NUM_LIMB_BITS

constexpr size_t bb::TranslatorFlavor::NUM_LIMB_BITS = CircuitBuilder::NUM_LIMB_BITS
staticconstexpr

Definition at line 120 of file translator_flavor.hpp.

◆ NUM_MASKED_ROWS_END

constexpr size_t bb::TranslatorFlavor::NUM_MASKED_ROWS_END = CircuitBuilder::NUM_RANDOM_OPS_END * 2
staticconstexpr

Definition at line 98 of file translator_flavor.hpp.

◆ NUM_MASKING_POLYNOMIALS

constexpr size_t bb::TranslatorFlavor::NUM_MASKING_POLYNOMIALS = 1
staticconstexpr

Definition at line 61 of file translator_flavor.hpp.

◆ NUM_MINICIRCUIT_EVALUATIONS

constexpr size_t bb::TranslatorFlavor::NUM_MINICIRCUIT_EVALUATIONS = 2 * NUM_MINICIRCUIT_WIRES
staticconstexpr

Definition at line 708 of file translator_flavor.hpp.

◆ NUM_MINICIRCUIT_WIRES

constexpr size_t bb::TranslatorFlavor::NUM_MINICIRCUIT_WIRES
staticconstexpr
Initial value:
=
NonRangeMainWires<FF>::_members_size + RangeConstraintWires<FF>::_members_size

Definition at line 703 of file translator_flavor.hpp.

◆ NUM_OP_QUEUE_WIRES

constexpr size_t bb::TranslatorFlavor::NUM_OP_QUEUE_WIRES = 4
staticconstexpr

Definition at line 66 of file translator_flavor.hpp.

◆ NUM_ORDERED_RANGE

constexpr size_t bb::TranslatorFlavor::NUM_ORDERED_RANGE = OrderedRangeConstraints<FF>::_members_size
staticconstexpr

Definition at line 682 of file translator_flavor.hpp.

◆ NUM_PCS_TO_BE_SHIFTED

constexpr size_t bb::TranslatorFlavor::NUM_PCS_TO_BE_SHIFTED = NUM_TO_BE_SHIFTED + NUM_CONCATENATED_POLYS
staticconstexpr

Definition at line 731 of file translator_flavor.hpp.

◆ NUM_PCS_UNSHIFTED

constexpr size_t bb::TranslatorFlavor::NUM_PCS_UNSHIFTED
staticconstexpr

◆ NUM_PRECOMPUTED_ENTITIES

constexpr size_t bb::TranslatorFlavor::NUM_PRECOMPUTED_ENTITIES = PrecomputedEntities<FF>::_members_size
staticconstexpr

Definition at line 680 of file translator_flavor.hpp.

◆ NUM_RELATIONS

constexpr size_t bb::TranslatorFlavor::NUM_RELATIONS = std::tuple_size_v<Relations>
staticconstexpr

Definition at line 151 of file translator_flavor.hpp.

◆ NUM_SENT_EVALUATIONS

constexpr size_t bb::TranslatorFlavor::NUM_SENT_EVALUATIONS
staticconstexpr
Initial value:

Definition at line 711 of file translator_flavor.hpp.

◆ NUM_SHIFTED_ENTITIES

constexpr size_t bb::TranslatorFlavor::NUM_SHIFTED_ENTITIES
staticconstexpr
Initial value:
= OpQueueShiftedEntities<FF>::_members_size +
NonOpQueueShiftedEntities<FF>::_members_size +
DerivedShiftedEntities<FF>::_members_size

Definition at line 692 of file translator_flavor.hpp.

◆ NUM_SUBRELATIONS

constexpr size_t bb::TranslatorFlavor::NUM_SUBRELATIONS = compute_number_of_subrelations<Relations>()
staticconstexpr

Definition at line 138 of file translator_flavor.hpp.

◆ NUM_TO_BE_SHIFTED

constexpr size_t bb::TranslatorFlavor::NUM_TO_BE_SHIFTED
staticconstexpr
Initial value:
= OpQueueWiresToBeShiftedEntities<FF>::_members_size +
OrderedRangeConstraints<FF>::_members_size +
DerivedWitnessEntities<FF>::_members_size

Definition at line 725 of file translator_flavor.hpp.

◆ NUM_UNSHIFTED_WITNESSES_WITHOUT_CONCATENATED

constexpr size_t bb::TranslatorFlavor::NUM_UNSHIFTED_WITNESSES_WITHOUT_CONCATENATED
staticconstexpr
Initial value:
= WireNonshiftedEntities<FF>::_members_size +
OrderedRangeConstraints<FF>::_members_size +
DerivedWitnessEntities<FF>::_members_size

Definition at line 722 of file translator_flavor.hpp.

◆ NUM_WIRES

constexpr size_t bb::TranslatorFlavor::NUM_WIRES = CircuitBuilder::NUM_WIRES
staticconstexpr

Definition at line 89 of file translator_flavor.hpp.

◆ NUM_WIRES_NON_SHIFTED

constexpr size_t bb::TranslatorFlavor::NUM_WIRES_NON_SHIFTED = WireNonshiftedEntities<FF>::_members_size
staticconstexpr

Definition at line 681 of file translator_flavor.hpp.

◆ NUM_WITNESS_ENTITIES

constexpr size_t bb::TranslatorFlavor::NUM_WITNESS_ENTITIES
staticconstexpr
Initial value:
=
WireNonshiftedEntities<FF>::_members_size + OpQueueWiresToBeShiftedEntities<FF>::_members_size +
NonRangeMainWires<FF>::_members_size + RangeConstraintWires<FF>::_members_size +
OrderedRangeConstraints<FF>::_members_size + DerivedWitnessEntities<FF>::_members_size +
ConcatenatedPolynomials<FF>::_members_size

Definition at line 685 of file translator_flavor.hpp.

◆ PROOF_LENGTH

constexpr size_t bb::TranslatorFlavor::PROOF_LENGTH
staticconstexpr
Initial value:

Definition at line 755 of file translator_flavor.hpp.

◆ RANDOMNESS_START

constexpr size_t bb::TranslatorFlavor::RANDOMNESS_START = 2 * CircuitBuilder::NUM_NO_OPS_START
staticconstexpr

Definition at line 106 of file translator_flavor.hpp.

◆ REPEATED_COMMITMENTS

constexpr RepeatedCommitmentsData bb::TranslatorFlavor::REPEATED_COMMITMENTS
staticconstexpr
Initial value:
=
RepeatedCommitmentsData(2,
static constexpr size_t NUM_ORDERED_RANGE
static constexpr size_t NUM_PCS_TO_BE_SHIFTED

Definition at line 747 of file translator_flavor.hpp.

◆ RESULT_ROW

constexpr size_t bb::TranslatorFlavor::RESULT_ROW = CircuitBuilder::RESULT_ROW
staticconstexpr

Definition at line 94 of file translator_flavor.hpp.

◆ SHIFTED_WITNESSES_START

constexpr size_t bb::TranslatorFlavor::SHIFTED_WITNESSES_START = NUM_SHIFTED_ENTITIES + TO_BE_SHIFTED_WITNESSES_START
staticconstexpr

Definition at line 735 of file translator_flavor.hpp.

◆ SORT_STEP

constexpr size_t bb::TranslatorFlavor::SORT_STEP = 3
staticconstexpr

Definition at line 86 of file translator_flavor.hpp.

◆ SORTED_STEPS_COUNT

constexpr size_t bb::TranslatorFlavor::SORTED_STEPS_COUNT = ((1 << MICRO_LIMB_BITS) / SORT_STEP) + 1
staticconstexpr

Definition at line 113 of file translator_flavor.hpp.

◆ TO_BE_SHIFTED_WITNESSES_START

constexpr size_t bb::TranslatorFlavor::TO_BE_SHIFTED_WITNESSES_START = NUM_PRECOMPUTED_ENTITIES + NUM_WIRES_NON_SHIFTED
staticconstexpr

Definition at line 734 of file translator_flavor.hpp.

◆ USE_PADDING

constexpr bool bb::TranslatorFlavor::USE_PADDING = false
staticconstexpr

Definition at line 56 of file translator_flavor.hpp.

◆ USE_SHORT_MONOMIALS

constexpr bool bb::TranslatorFlavor::USE_SHORT_MONOMIALS = false
staticconstexpr

Definition at line 51 of file translator_flavor.hpp.

◆ VIRTUAL_LOG_N

constexpr size_t bb::TranslatorFlavor::VIRTUAL_LOG_N = CONST_TRANSLATOR_LOG_N
staticconstexpr

Definition at line 78 of file translator_flavor.hpp.


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