18 using Flavor =
typename VerifierInstance::Flavor;
39 const std::shared_ptr<VerifierInstance>& accumulator,
40 const std::shared_ptr<VKAndHash>& vk_and_hash,
50 const std::shared_ptr<VerifierInstance>& accumulator,
51 const std::shared_ptr<VerifierInstance>& incoming_instance,
105 PrecomputedCommDataType,
108 WitnessCommitmentsDataType,
129 using ReturnType =
decltype(
data[0][0]);
132 const size_t num_to_fold =
data[0].size();
134 for (
size_t idx = 0;
auto& data_at_idx : result) {
135 data_at_idx[0] =
data[0][idx];
136 data_at_idx[1] =
data[1][idx];
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
std::array< FF, NUM_SUBRELATIONS - 1 > SubrelationSeparators
static constexpr size_t NUM_SUBRELATIONS
MegaCircuitBuilder CircuitBuilder
Curve::AffineElement Commitment
A template class for a reference array. Behaves as if std::array<T&, N> was possible.
A simple wrapper around a vector of stdlib field elements representing a proof.
ProtogalaxyRecursiveVerifier_(Builder *builder, const std::shared_ptr< VerifierInstance > &accumulator, const std::shared_ptr< VKAndHash > &vk_and_hash, const std::shared_ptr< Transcript > &transcript)
typename Flavor::CircuitBuilder Builder
std::array< std::shared_ptr< VerifierInstance >, NUM_INSTANCES > VerifierInstances
typename Flavor::Commitment Commitment
static constexpr size_t BATCHED_EXTENDED_LENGTH
typename Flavor::VKAndHash VKAndHash
static constexpr size_t NUM_SUBRELATIONS
auto get_data_to_fold() const
Get data to be folded grouped by commitment index. Here the "commitment index" is the index of the ro...
void run_oink_verifier_on_each_incomplete_instance(const std::vector< FF > &)
Process the public data for the verification keys to be folded.
static constexpr size_t EXTENDED_LENGTH
typename Commitment::BaseField BaseField
std::shared_ptr< VerifierInstance > verify_folding_proof(const stdlib::Proof< Builder > &)
Run the folding protocol on the verifier side to establish whether the public data of the new accumu...
std::shared_ptr< Transcript > transcript
typename VerifierInstance::Flavor Flavor
VerifierInstances insts_to_fold
@ PRECOMPUTED_COMMITMENTS
ProtogalaxyRecursiveVerifier_(Builder *builder, const std::shared_ptr< VerifierInstance > &accumulator, const std::shared_ptr< VerifierInstance > &incoming_instance, const std::shared_ptr< Transcript > &transcript)
const std::vector< FF > data
Base class templates for structures that contain data parameterized by the fundamental polynomials of...
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
void throw_or_abort(std::string const &err)