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

The recursive counterpart of the native Translator flavor. More...

#include <translator_recursive_flavor.hpp>

Classes

class  AllValues
 A field element for each entity of the flavor. These entities represent the prover polynomials evaluated at one point. More...
 
class  VerificationKey
 The verification key is responsible for storing the commitments to the precomputed (non-witnessk) polynomials used by the verifier. More...
 

Public Types

using CircuitBuilder = UltraCircuitBuilder
 
using Curve = stdlib::bn254< CircuitBuilder >
 
using PCS = KZG< Curve >
 
using GroupElement = Curve::Element
 
using Commitment = Curve::AffineElement
 
using FF = Curve::ScalarField
 
using BF = Curve::BaseField
 
using SubrelationSeparators = std::array< FF, NUM_SUBRELATIONS - 1 >
 
using NativeFlavor = TranslatorFlavor
 
using NativeVerificationKey = NativeFlavor::VerificationKey
 
using VerifierCommitmentKey = bb::VerifierCommitmentKey< NativeFlavor::Curve >
 
using Relations = TranslatorFlavor::Relations_< FF >
 
using WitnessCommitments = TranslatorFlavor::WitnessEntities< Commitment >
 A container for the witness commitments.
 
using CommitmentLabels = TranslatorFlavor::CommitmentLabels
 
using VerifierCommitments = TranslatorFlavor::VerifierCommitments_< Commitment, VerificationKey >
 
using Transcript = bb::BaseTranscript< bb::stdlib::recursion::honk::StdlibTranscriptParams< CircuitBuilder > >
 
using VKAndHash = VKAndHash_< VerificationKey, FF >
 

Static Public Attributes

static constexpr size_t NUM_SUBRELATIONS = TranslatorFlavor::NUM_SUBRELATIONS
 
static constexpr bool HasZK = true
 
static constexpr bool USE_PADDING = TranslatorFlavor::USE_PADDING
 
static constexpr size_t NUM_LIMB_BITS = NativeFlavor::NUM_LIMB_BITS
 
static constexpr size_t NUM_ALL_ENTITIES = NativeFlavor::NUM_ALL_ENTITIES
 
static constexpr size_t NUM_PRECOMPUTED_ENTITIES = NativeFlavor::NUM_PRECOMPUTED_ENTITIES
 
static constexpr size_t NUM_WITNESS_ENTITIES = NativeFlavor::NUM_WITNESS_ENTITIES
 
static constexpr size_t NUM_OP_QUEUE_WIRES = NativeFlavor::NUM_OP_QUEUE_WIRES
 
static constexpr RepeatedCommitmentsData REPEATED_COMMITMENTS = NativeFlavor::REPEATED_COMMITMENTS
 
static constexpr size_t MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length<Relations>()
 
static constexpr size_t MAX_TOTAL_RELATION_LENGTH = compute_max_total_relation_length<Relations>()
 
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH = NativeFlavor::BATCHED_RELATION_PARTIAL_LENGTH
 
static constexpr size_t NUM_RELATIONS = std::tuple_size_v<Relations>
 

Detailed Description

The recursive counterpart of the native Translator flavor.

is flavor can be used to instantiate a recursive Translator verifier for a proof created using the Translator flavor. It is similar in structure to its native counterpart with two main differences: 1) the curve types are stdlib types (e.g. field_t instead of field) and 2) it does not specify any Prover related types (e.g. Polynomial, ExtendedEdges, etc.) since we do not emulate prover computation in circuits, i.e. it only makes sense to instantiate a Verifier with this flavor. We reuse the native flavor to initialize identical constructions.

Template Parameters
BuilderTypeDetermines the arithmetization of the verifier circuit defined based on this flavor.

Definition at line 31 of file translator_recursive_flavor.hpp.

Member Typedef Documentation

◆ BF

◆ CircuitBuilder

◆ Commitment

◆ CommitmentLabels

◆ Curve

◆ FF

◆ GroupElement

◆ NativeFlavor

◆ NativeVerificationKey

◆ PCS

◆ Relations

◆ SubrelationSeparators

◆ Transcript

◆ VerifierCommitmentKey

◆ VerifierCommitments

◆ VKAndHash

◆ WitnessCommitments

A container for the witness commitments.

Definition at line 166 of file translator_recursive_flavor.hpp.

Member Data Documentation

◆ BATCHED_RELATION_PARTIAL_LENGTH

constexpr size_t bb::TranslatorRecursiveFlavor::BATCHED_RELATION_PARTIAL_LENGTH = NativeFlavor::BATCHED_RELATION_PARTIAL_LENGTH
staticconstexpr

Definition at line 85 of file translator_recursive_flavor.hpp.

◆ HasZK

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

Definition at line 52 of file translator_recursive_flavor.hpp.

◆ MAX_PARTIAL_RELATION_LENGTH

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

Definition at line 79 of file translator_recursive_flavor.hpp.

◆ MAX_TOTAL_RELATION_LENGTH

constexpr size_t bb::TranslatorRecursiveFlavor::MAX_TOTAL_RELATION_LENGTH = compute_max_total_relation_length<Relations>()
staticconstexpr

Definition at line 80 of file translator_recursive_flavor.hpp.

◆ NUM_ALL_ENTITIES

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_ALL_ENTITIES = NativeFlavor::NUM_ALL_ENTITIES
staticconstexpr

Definition at line 64 of file translator_recursive_flavor.hpp.

◆ NUM_LIMB_BITS

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_LIMB_BITS = NativeFlavor::NUM_LIMB_BITS
staticconstexpr

Definition at line 59 of file translator_recursive_flavor.hpp.

◆ NUM_OP_QUEUE_WIRES

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_OP_QUEUE_WIRES = NativeFlavor::NUM_OP_QUEUE_WIRES
staticconstexpr

Definition at line 73 of file translator_recursive_flavor.hpp.

◆ NUM_PRECOMPUTED_ENTITIES

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_PRECOMPUTED_ENTITIES = NativeFlavor::NUM_PRECOMPUTED_ENTITIES
staticconstexpr

Definition at line 67 of file translator_recursive_flavor.hpp.

◆ NUM_RELATIONS

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

Definition at line 86 of file translator_recursive_flavor.hpp.

◆ NUM_SUBRELATIONS

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_SUBRELATIONS = TranslatorFlavor::NUM_SUBRELATIONS
staticconstexpr

Definition at line 43 of file translator_recursive_flavor.hpp.

◆ NUM_WITNESS_ENTITIES

constexpr size_t bb::TranslatorRecursiveFlavor::NUM_WITNESS_ENTITIES = NativeFlavor::NUM_WITNESS_ENTITIES
staticconstexpr

Definition at line 69 of file translator_recursive_flavor.hpp.

◆ REPEATED_COMMITMENTS

constexpr RepeatedCommitmentsData bb::TranslatorRecursiveFlavor::REPEATED_COMMITMENTS = NativeFlavor::REPEATED_COMMITMENTS
staticconstexpr

Definition at line 75 of file translator_recursive_flavor.hpp.

◆ USE_PADDING

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

Definition at line 54 of file translator_recursive_flavor.hpp.


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