-
Notifications
You must be signed in to change notification settings - Fork 117
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
fix: Fixed the memory issue #509
fix: Fixed the memory issue #509
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks just a small amount of cleanup left.
@@ -255,7 +297,7 @@ template <typename Arithmetization> class CircuitConstructorBase { | |||
_failed = true; | |||
set_err(msg); | |||
} | |||
}; | |||
}; // namespace proof_system |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is actually the end of the class definition, not the namespace.
@@ -291,6 +297,24 @@ std::shared_ptr<UltraHonkComposerHelper::Flavor::ProvingKey> UltraHonkComposerHe | |||
proving_key->table_3 = poly_q_table_column_3; | |||
proving_key->table_4 = poly_q_table_column_4; | |||
|
|||
// Copy memory read/write record data into proving key. Prover needs to know which gates contain a read/write |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since #520, this happens in compute_witness
, right?
* recursive proof-specific public inputs, so we can't check the recursive proof fully in check_circuit. So we use | ||
* this additional function to check that the recursive proof points work. | ||
* | ||
* @return true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Return documentation is funny.
* Fixed the memory issue * Switched recursion to use check_circuit (but still use composers) * Low-impact fix of circular dependency --------- Co-authored-by: codygunton <codygunton@gmail.com>
* Fixed the memory issue * Switched recursion to use check_circuit (but still use composers) * Low-impact fix of circular dependency --------- Co-authored-by: codygunton <codygunton@gmail.com>
Description
Fixed the issue we had with Ultra RAM and ROM after splitting, where check_circuit was confused by public inputs after circuit finalisation.
Also changed recursion to do the final check with check_circuit + an auxiliary function that check the recursive proof point pairing.
Checklist:
/markdown/specs
have been updated.@brief
describing the intended functionality.