|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
The recursive counterpart to the "native" Ultra flavor. More...
#include <ultra_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... | |
Public Types | |
| 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=VIRTUAL_LOG_N) |
Static Public Attributes | |
| 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 |
The recursive counterpart to the "native" Ultra flavor.
This flavor can be used to instantiate a recursive Ultra Honk verifier for a proof created using the conventional Ultra 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, ProverUnivariates, etc.) since we do not emulate prover computation in circuits, i.e. it only makes sense to instantiate a Verifier with this flavor.
| BuilderType | Determines the arithmetization of the verifier circuit defined based on this flavor. |
Definition at line 28 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::CircuitBuilder = BuilderType |
Definition at line 30 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::Codec = stdlib::StdlibCodec<FF> |
Definition at line 38 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::Commitment = typename Curve::Element |
Definition at line 34 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::CommitmentLabels = UltraFlavor::CommitmentLabels |
Definition at line 86 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::Curve = stdlib::bn254<CircuitBuilder> |
Definition at line 31 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::FF = typename Curve::ScalarField |
Definition at line 35 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::GroupElement = typename Curve::Element |
Definition at line 33 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::NativeFlavor = UltraFlavor |
Definition at line 36 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::NativeVerificationKey = NativeFlavor::VerificationKey |
Definition at line 37 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::PCS = KZG<Curve> |
Definition at line 32 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::Relations = UltraFlavor::Relations_<FF> |
Definition at line 62 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::SubrelationSeparator = FF |
Definition at line 70 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::Transcript = StdlibTranscript<CircuitBuilder> |
Definition at line 39 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::VerificationKey = StdlibVerificationKey_<CircuitBuilder, NativeFlavor::PrecomputedEntities<Commitment>, typename NativeFlavor::VerificationKey> |
Definition at line 72 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::VerifierCommitments = UltraFlavor::VerifierCommitments_<Commitment, VerificationKey> |
Definition at line 91 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::VKAndHash = VKAndHash_<FF, VerificationKey> |
Definition at line 93 of file ultra_recursive_flavor.hpp.
| using bb::UltraRecursiveFlavor_< BuilderType >::WitnessCommitments = UltraFlavor::WitnessEntities<Commitment> |
Definition at line 88 of file ultra_recursive_flavor.hpp.
|
inlinestaticconstexpr |
Definition at line 55 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 65 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 46 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 64 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 51 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 52 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 66 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 69 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 50 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 53 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 59 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 49 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 43 of file ultra_recursive_flavor.hpp.
|
staticconstexpr |
Definition at line 41 of file ultra_recursive_flavor.hpp.