|
| using | CircuitBuilder = UltraCircuitBuilder |
| |
| using | Curve = curve::BN254 |
| |
| using | FF = Curve::ScalarField |
| |
| using | GroupElement = Curve::Element |
| |
| using | Commitment = Curve::AffineElement |
| |
| using | PCS = KZG< Curve > |
| |
| using | Polynomial = bb::Polynomial< FF > |
| |
| using | CommitmentKey = bb::CommitmentKey< Curve > |
| |
| using | VerifierCommitmentKey = bb::VerifierCommitmentKey< Curve > |
| |
| using | Codec = FrCodec |
| |
| using | HashFunction = crypto::Poseidon2< crypto::Poseidon2Bn254ScalarFieldParams > |
| |
| using | Transcript = BaseTranscript< Codec, HashFunction > |
| |
| template<typename FF > |
| using | Relations_ = std::tuple< bb::ArithmeticRelation< FF >, bb::UltraPermutationRelation< FF >, bb::LogDerivLookupRelation< FF >, bb::DeltaRangeConstraintRelation< FF >, bb::EllipticRelation< FF >, bb::MemoryRelation< FF >, bb::NonNativeFieldRelation< FF >, bb::Poseidon2ExternalRelation< FF >, bb::Poseidon2InternalRelation< FF > > |
| |
| using | Relations = Relations_< FF > |
| |
| using | SubrelationSeparator = FF |
| |
| template<typename DataType > |
| using | AllEntities = AllEntities_< DataType, HasZK > |
| |
| using | AllValues = AllValues_< HasZK > |
| |
| using | ProverPolynomials = ProverPolynomials_< HasZK > |
| |
| using | PrecomputedData = PrecomputedData_< Polynomial, NUM_PRECOMPUTED_ENTITIES > |
| |
| using | VerificationKey = NativeVerificationKey_< PrecomputedEntities< Commitment >, Codec, HashFunction, CommitmentKey > |
| | The verification key is responsible for storing the commitments to the precomputed (non-witnessk) polynomials used by the verifier.
|
| |
| using | VKAndHash = VKAndHash_< FF, VerificationKey > |
| |
| using | PartiallyEvaluatedMultivariates = PartiallyEvaluatedMultivariates_< HasZK > |
| |
| template<size_t LENGTH> |
| using | ProverUnivariates = AllEntities< bb::Univariate< FF, LENGTH > > |
| | A container for univariates used in sumcheck.
|
| |
| using | ExtendedEdges = ProverUnivariates< MAX_PARTIAL_RELATION_LENGTH > |
| | A container for univariates produced during the hot loop in sumcheck.
|
| |
| using | WitnessCommitments = WitnessEntities< Commitment > |
| | A container for the witness commitments.
|
| |
| using | VerifierCommitments = VerifierCommitments_< Commitment, VerificationKey, HasZK > |
| |
| static constexpr size_t | VIRTUAL_LOG_N = CONST_PROOF_SIZE_LOG_N |
| |
| static constexpr bool | USE_SHORT_MONOMIALS = true |
| |
| static constexpr bool | HasZK = false |
| |
| static constexpr bool | USE_PADDING = true |
| |
| static constexpr size_t | NUM_WIRES = CircuitBuilder::NUM_WIRES |
| |
| static constexpr size_t | NUM_ALL_ENTITIES = 41 |
| |
| static constexpr size_t | NUM_PRECOMPUTED_ENTITIES = 28 |
| |
| static constexpr size_t | NUM_WITNESS_ENTITIES = 8 |
| |
| static constexpr size_t | NUM_SHIFTED_ENTITIES = 5 |
| |
| static constexpr size_t | NUM_UNSHIFTED_ENTITIES = NUM_PRECOMPUTED_ENTITIES + NUM_WITNESS_ENTITIES |
| |
| static constexpr RepeatedCommitmentsData | REPEATED_COMMITMENTS |
| |
| static constexpr size_t | MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length<Relations>() |
| |
| static constexpr size_t | NUM_SUBRELATIONS = compute_number_of_subrelations<Relations>() |
| |
| static constexpr size_t | BATCHED_RELATION_PARTIAL_LENGTH = MAX_PARTIAL_RELATION_LENGTH + 1 |
| |
| 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 | OINK_PROOF_LENGTH_WITHOUT_PUB_INPUTS |
| |
| static constexpr bool | has_zero_row = true |
| |
| static constexpr bool | is_decider = true |
| |
UltraRollupFlavor extends UltraFlavor with IPA proof support.
The only difference from UltraFlavor is that PROOF_LENGTH_WITHOUT_PUB_INPUTS includes IPA_PROOF_LENGTH.
Definition at line 17 of file ultra_rollup_flavor.hpp.