|
barretenberg
|
Public Member Functions | |
| ProverBase (std::shared_ptr< proving_key > input_key=nullptr, const transcript::Manifest &manifest=transcript::Manifest()) | |
| ProverBase (ProverBase &&other) | |
| ProverBase (const ProverBase &other)=delete | |
| ProverBase & | operator= (const ProverBase &other)=delete |
| ProverBase & | operator= (ProverBase &&other) |
| BBERG_PROFILE void | execute_preamble_round () |
| BBERG_PROFILE void | execute_first_round () |
| BBERG_PROFILE void | execute_second_round () |
| BBERG_PROFILE void | execute_third_round () |
| BBERG_PROFILE void | execute_fourth_round () |
| Computes the quotient polynomial, then commits to its degree-n split parts. | |
| BBERG_PROFILE void | execute_fifth_round () |
| BBERG_PROFILE void | execute_sixth_round () |
| void | add_polynomial_evaluations_to_transcript () |
| void | compute_batch_opening_polynomials () |
| void | compute_wire_commitments () |
| void | compute_quotient_commitments () |
| void | init_quotient_polynomials () |
| void | compute_opening_elements () |
| void | add_plookup_memory_records_to_w_4 () |
| void | compute_quotient_evaluation () |
| void | add_blinding_to_quotient_polynomial_parts () |
| void | compute_lagrange_1_fft () |
| plonk::proof & | export_proof () |
| plonk::proof & | construct_proof () |
| size_t | get_circuit_size () const |
| void | flush_queued_work_items () |
| work_queue::work_item_info | get_queued_work_item_info () const |
| std::shared_ptr< barretenberg::fr[]> | get_scalar_multiplication_data (const size_t work_item_number) const |
| size_t | get_scalar_multiplication_size (const size_t work_item_number) const |
| std::shared_ptr< fr[]> | get_ifft_data (const size_t work_item_number) const |
| work_queue::queued_fft_inputs | get_fft_data (const size_t work_item_number) const |
| void | put_scalar_multiplication_data (const barretenberg::g1::affine_element result, const size_t work_item_number) |
| void | put_fft_data (std::shared_ptr< fr[]> result, const size_t work_item_number) |
| void | put_ifft_data (std::shared_ptr< fr[]> result, const size_t work_item_number) |
| void | reset () |
Public Attributes | |
| size_t | circuit_size |
| std::vector< std::unique_ptr< ProverRandomWidget > > | random_widgets |
| std::vector< std::unique_ptr< widget::TransitionWidgetBase< barretenberg::fr > > > | transition_widgets |
| transcript::StandardTranscript | transcript |
| std::shared_ptr< proving_key > | key |
| std::unique_ptr< CommitmentScheme > | commitment_scheme |
| work_queue | queue |
| proof_system::plonk::ProverBase< settings >::ProverBase | ( | std::shared_ptr< proving_key > | input_key = nullptr, |
| const transcript::Manifest & | input_manifest = transcript::Manifest() |
||
| ) |
Create ProverBase from proving key, witness and manifest.
| input_key | Proving key. |
| input_witness | Witness containing witness polynomials. |
| input_manifest | Input manifest |
| settings | Settings class. |
| void proof_system::plonk::ProverBase< settings >::compute_wire_commitments |
| settings | Program settings. |
| void proof_system::plonk::ProverBase< settings >::execute_first_round |
Execute the first round:
N.B. Random widget precommitments aren't actually being computed, since we are using permutation widget which only does computation in compute_random_commitments function if the round is 3.
@tname settings Program settings.
| void proof_system::plonk::ProverBase< settings >::execute_preamble_round |
Execute preamble round.
N.B. Maybe we need to refactor this, since before we execute this function wires are in lagrange basis and after they are in monomial form. This is an inconsistency that can mislead developers.
| settings | Program settings. |
| void proof_system::plonk::ProverBase< settings >::execute_second_round |
Execute second round:
@tname settings Program settings.
| void proof_system::plonk::ProverBase< settings >::execute_third_round |
Execute third round:
*For example, standard composer executes permutation widget for z polynomial construction at this round.
| settings | Program settings. |