|
barretenberg
|
A class responsible for marshalling construction of keys and prover and verifier instances used to prove satisfiability of circuits written in ACIR. More...
#include <acir_composer.hpp>
Public Member Functions | |
| AcirComposer (size_t size_hint=0, bool verbose=true) | |
| template<typename Builder = UltraCircuitBuilder> | |
| void | create_circuit (acir_format::acir_format &constraint_system) |
| std::shared_ptr< proof_system::plonk::proving_key > | init_proving_key (acir_format::acir_format &constraint_system) |
| std::vector< uint8_t > | create_proof (acir_format::acir_format &constraint_system, acir_format::WitnessVector &witness, bool is_recursive) |
| void | load_verification_key (proof_system::plonk::verification_key_data &&data) |
| std::shared_ptr< proof_system::plonk::verification_key > | init_verification_key () |
| bool | verify_proof (std::vector< uint8_t > const &proof, bool is_recursive) |
| std::string | get_solidity_verifier () |
| size_t | get_exact_circuit_size () |
| size_t | get_total_circuit_size () |
| size_t | get_circuit_subgroup_size () |
| std::vector< barretenberg::fr > | serialize_proof_into_fields (std::vector< uint8_t > const &proof, size_t num_inner_public_inputs) |
| Takes in a proof buffer and converts into a vector of field elements. The Recursion opcode requires the proof serialized as a vector of witnesses. Use this method to get the witness values! | |
| std::vector< barretenberg::fr > | serialize_verification_key_into_fields () |
| Takes in a verification key buffer and converts into a vector of field elements. The Recursion opcode requires the vk serialized as a vector of witnesses. Use this method to get the witness values! The composer should already have a verification key initialized. | |
| void | create_goblin_circuit (acir_format::acir_format &constraint_system, acir_format::WitnessVector &witness) |
| std::vector< uint8_t > | create_goblin_proof () |
| bool | verify_goblin_proof (std::vector< uint8_t > const &proof) |
A class responsible for marshalling construction of keys and prover and verifier instances used to prove satisfiability of circuits written in ACIR.
| std::vector< barretenberg::fr > acir_proofs::AcirComposer::serialize_proof_into_fields | ( | std::vector< uint8_t > const & | proof, |
| size_t | num_inner_public_inputs | ||
| ) |
Takes in a proof buffer and converts into a vector of field elements. The Recursion opcode requires the proof serialized as a vector of witnesses. Use this method to get the witness values!
TODO: We should change this to return a proof without public inputs, since that is what std::verify_proof TODO: takes.
| proof | |
| num_inner_public_inputs | - number of public inputs on the proof being serialized |