Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <translator_prover.hpp>
Public Types | |
using | Flavor = TranslatorFlavor |
using | CircuitBuilder = typename Flavor::CircuitBuilder |
using | FF = typename Flavor::FF |
using | BF = typename Flavor::BF |
using | Commitment = typename Flavor::Commitment |
using | CommitmentKey = typename Flavor::CommitmentKey |
using | ProvingKey = typename Flavor::ProvingKey |
using | Polynomial = typename Flavor::Polynomial |
using | CommitmentLabels = typename Flavor::CommitmentLabels |
using | PCS = typename Flavor::PCS |
using | Transcript = typename Flavor::Transcript |
using | ZKData = ZKSumcheckData< Flavor > |
Public Member Functions | |
TranslatorProver (const std::shared_ptr< TranslatorProvingKey > &key, const std::shared_ptr< Transcript > &transcript) | |
BB_PROFILE void | execute_preamble_round () |
Add circuit size and values used in the relations to the transcript. | |
BB_PROFILE void | execute_wire_and_sorted_constraints_commitments_round () |
Compute commitments to wires and ordered range constraints. | |
BB_PROFILE void | execute_grand_product_computation_round () |
Compute permutation product polynomial and commitments. | |
BB_PROFILE void | execute_relation_check_rounds () |
Run Sumcheck resulting in u = (u_1,...,u_d) challenges and all evaluations at u being calculated. | |
BB_PROFILE void | execute_pcs_rounds () |
Produce a univariate opening claim for the sumcheck multivariate evalutions and a batched univariate claim for the transcript polynomials (for the Translator consistency check). Reduce the two opening claims to a single one via Shplonk and produce an opening proof with the univariate PCS of choice (IPA when operating on Grumpkin). | |
void | commit_to_witness_polynomial (Polynomial &polynomial, const std::string &label) |
Utility to commit to witness polynomial and send the commitment to verifier. | |
HonkProof | export_proof () |
HonkProof | construct_proof () |
Public Attributes | |
std::shared_ptr< Transcript > | transcript |
bb::RelationParameters< FF > | relation_parameters |
std::shared_ptr< TranslatorProvingKey > | key |
CommitmentLabels | commitment_labels |
ZKData | zk_sumcheck_data |
SumcheckOutput< Flavor > | sumcheck_output |
Definition at line 16 of file translator_prover.hpp.
using bb::TranslatorProver::BF = typename Flavor::BF |
Definition at line 21 of file translator_prover.hpp.
using bb::TranslatorProver::CircuitBuilder = typename Flavor::CircuitBuilder |
Definition at line 19 of file translator_prover.hpp.
using bb::TranslatorProver::Commitment = typename Flavor::Commitment |
Definition at line 22 of file translator_prover.hpp.
using bb::TranslatorProver::CommitmentKey = typename Flavor::CommitmentKey |
Definition at line 23 of file translator_prover.hpp.
using bb::TranslatorProver::CommitmentLabels = typename Flavor::CommitmentLabels |
Definition at line 26 of file translator_prover.hpp.
using bb::TranslatorProver::FF = typename Flavor::FF |
Definition at line 20 of file translator_prover.hpp.
Definition at line 18 of file translator_prover.hpp.
using bb::TranslatorProver::PCS = typename Flavor::PCS |
Definition at line 27 of file translator_prover.hpp.
using bb::TranslatorProver::Polynomial = typename Flavor::Polynomial |
Definition at line 25 of file translator_prover.hpp.
using bb::TranslatorProver::ProvingKey = typename Flavor::ProvingKey |
Definition at line 24 of file translator_prover.hpp.
using bb::TranslatorProver::Transcript = typename Flavor::Transcript |
Definition at line 28 of file translator_prover.hpp.
Definition at line 29 of file translator_prover.hpp.
|
explicit |
Definition at line 17 of file translator_prover.cpp.
void bb::TranslatorProver::commit_to_witness_polynomial | ( | Polynomial & | polynomial, |
const std::string & | label | ||
) |
Utility to commit to witness polynomial and send the commitment to verifier.
polynomial | |
label |
Definition at line 64 of file translator_prover.cpp.
HonkProof bb::TranslatorProver::construct_proof | ( | ) |
Definition at line 217 of file translator_prover.cpp.
void bb::TranslatorProver::execute_grand_product_computation_round | ( | ) |
Compute permutation product polynomial and commitments.
Definition at line 94 of file translator_prover.cpp.
void bb::TranslatorProver::execute_pcs_rounds | ( | ) |
Produce a univariate opening claim for the sumcheck multivariate evalutions and a batched univariate claim for the transcript polynomials (for the Translator consistency check). Reduce the two opening claims to a single one via Shplonk and produce an opening proof with the univariate PCS of choice (IPA when operating on Grumpkin).
Definition at line 178 of file translator_prover.cpp.
void bb::TranslatorProver::execute_preamble_round | ( | ) |
Add circuit size and values used in the relations to the transcript.
Definition at line 32 of file translator_prover.cpp.
void bb::TranslatorProver::execute_relation_check_rounds | ( | ) |
Run Sumcheck resulting in u = (u_1,...,u_d) challenges and all evaluations at u being calculated.
Definition at line 138 of file translator_prover.cpp.
void bb::TranslatorProver::execute_wire_and_sorted_constraints_commitments_round | ( | ) |
Compute commitments to wires and ordered range constraints.
Definition at line 73 of file translator_prover.cpp.
HonkProof bb::TranslatorProver::export_proof | ( | ) |
Definition at line 212 of file translator_prover.cpp.
CommitmentLabels bb::TranslatorProver::commitment_labels |
Definition at line 49 of file translator_prover.hpp.
std::shared_ptr<TranslatorProvingKey> bb::TranslatorProver::key |
Definition at line 47 of file translator_prover.hpp.
bb::RelationParameters<FF> bb::TranslatorProver::relation_parameters |
Definition at line 45 of file translator_prover.hpp.
SumcheckOutput<Flavor> bb::TranslatorProver::sumcheck_output |
Definition at line 53 of file translator_prover.hpp.
std::shared_ptr<Transcript> bb::TranslatorProver::transcript |
Definition at line 43 of file translator_prover.hpp.
ZKData bb::TranslatorProver::zk_sumcheck_data |
Definition at line 51 of file translator_prover.hpp.