Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
acir_format::HonkRecursionConstraintsOutput< Builder > Struct Template Reference

Container for the output of multiple recursive verifications. More...

#include <recursion_constraint_output.hpp>

Public Member Functions

void update (const HonkRecursionConstraintOutput< Builder > &other, bool update_ipa_data)
 Update the current output with another recursion constraint output.
 
void update (const HonkRecursionConstraintsOutput< Builder > &other, bool update_ipa_data)
 Update the current output with the results of a series of recursive verifications.
 
void finalize (Builder &builder, bool is_hn_recursion_constraints=false, bool has_ipa_claim=false)
 Finalize the output by accumulating IPA claims/proofs, performing full IPA verification, and propagating public inputs as needed.
 
void finalize (UltraCircuitBuilder &builder, bool is_hn_recursion_constraints, bool has_ipa_claim)
 
void finalize (MegaCircuitBuilder &builder, bool is_hn_recursion_constraints, bool has_ipa_claim)
 

Public Attributes

stdlib::recursion::PairingPoints< stdlib::bn254< Builder > > points_accumulator
 
std::vector< OpeningClaim< stdlib::grumpkin< Builder > > > nested_ipa_claims
 
std::vector< stdlib::Proof< Builder > > nested_ipa_proofs
 
bool is_root_rollup = false
 

Private Member Functions

std::pair< OpeningClaim< stdlib::grumpkin< Builder > >, HonkProofperform_IPA_accumulation (Builder &builder) const
 Accumulate the IPA claims and proofs held in this output.
 
void perform_full_IPA_verification (Builder &builder) const
 Perform full IPA recursive verification of the IPA claims and proofs contained in this output.
 
std::pair< OpeningClaim< stdlib::grumpkin< UltraCircuitBuilder > >, HonkProofperform_IPA_accumulation (UltraCircuitBuilder &builder) const
 
void perform_full_IPA_verification (UltraCircuitBuilder &builder) const
 

Detailed Description

template<typename Builder>
struct acir_format::HonkRecursionConstraintsOutput< Builder >

Container for the output of multiple recursive verifications.

Definition at line 30 of file recursion_constraint_output.hpp.

Member Function Documentation

◆ finalize() [1/3]

template<typename Builder >
void acir_format::HonkRecursionConstraintsOutput< Builder >::finalize ( Builder builder,
bool  is_hn_recursion_constraints = false,
bool  has_ipa_claim = false 
)

Finalize the output by accumulating IPA claims/proofs, performing full IPA verification, and propagating public inputs as needed.

◆ finalize() [2/3]

void acir_format::HonkRecursionConstraintsOutput< MegaCircuitBuilder >::finalize ( MegaCircuitBuilder builder,
bool  is_hn_recursion_constraints,
bool  has_ipa_claim 
)

Definition at line 164 of file recursion_constraint_output.cpp.

◆ finalize() [3/3]

void acir_format::HonkRecursionConstraintsOutput< UltraCircuitBuilder >::finalize ( UltraCircuitBuilder builder,
bool  is_hn_recursion_constraints,
bool  has_ipa_claim 
)

Definition at line 120 of file recursion_constraint_output.cpp.

◆ perform_full_IPA_verification() [1/2]

template<typename Builder >
void acir_format::HonkRecursionConstraintsOutput< Builder >::perform_full_IPA_verification ( Builder builder) const
private

Perform full IPA recursive verification of the IPA claims and proofs contained in this output.

◆ perform_full_IPA_verification() [2/2]

void acir_format::HonkRecursionConstraintsOutput< UltraCircuitBuilder >::perform_full_IPA_verification ( UltraCircuitBuilder builder) const
private

Definition at line 98 of file recursion_constraint_output.cpp.

◆ perform_IPA_accumulation() [1/2]

template<typename Builder >
std:: pair< OpeningClaim< stdlib::grumpkin< Builder > >, HonkProof > acir_format::HonkRecursionConstraintsOutput< Builder >::perform_IPA_accumulation ( Builder builder) const
private

Accumulate the IPA claims and proofs held in this output.

◆ perform_IPA_accumulation() [2/2]

Definition at line 51 of file recursion_constraint_output.cpp.

◆ update() [1/2]

template<typename Builder >
void acir_format::HonkRecursionConstraintsOutput< Builder >::update ( const HonkRecursionConstraintOutput< Builder > &  other,
bool  update_ipa_data 
)

Update the current output with another recursion constraint output.

Definition at line 12 of file recursion_constraint_output.cpp.

◆ update() [2/2]

template<typename Builder >
void acir_format::HonkRecursionConstraintsOutput< Builder >::update ( const HonkRecursionConstraintsOutput< Builder > &  other,
bool  update_ipa_data 
)

Update the current output with the results of a series of recursive verifications.

Definition at line 30 of file recursion_constraint_output.cpp.

Member Data Documentation

◆ is_root_rollup

template<typename Builder >
bool acir_format::HonkRecursionConstraintsOutput< Builder >::is_root_rollup = false

Definition at line 34 of file recursion_constraint_output.hpp.

◆ nested_ipa_claims

template<typename Builder >
std::vector<OpeningClaim<stdlib::grumpkin<Builder> > > acir_format::HonkRecursionConstraintsOutput< Builder >::nested_ipa_claims

Definition at line 32 of file recursion_constraint_output.hpp.

◆ nested_ipa_proofs

template<typename Builder >
std::vector<stdlib::Proof<Builder> > acir_format::HonkRecursionConstraintsOutput< Builder >::nested_ipa_proofs

Definition at line 33 of file recursion_constraint_output.hpp.

◆ points_accumulator


The documentation for this struct was generated from the following files: