-
Notifications
You must be signed in to change notification settings - Fork 280
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove duplication of Flavor entity elements in Prover constructors #2213
Labels
crypto
cryptography
Comments
6 tasks
AztecBot
pushed a commit
to AztecProtocol/barretenberg
that referenced
this issue
Dec 15, 2023
Makes ProverPolynomials no longer use a span - Polynomial class already used shared memory, now allowing shifted polynomials to be represented by the same class - Fixes AztecProtocol/aztec-packages#2213 by using ranges defined in entity classes - For safety, deletes the full-copy assignment and constructor of ProverPolynomials, so that we correctly std::move it around. This can possibly be removed, but wanted to catch any now-different-semantics usage and avoid extra copies - Makes explicit share() calls wherever semantics were to share before due to std::span usage. shifted() is similar, shares underlying memory, shifted - Remove cruft needed with a separate polynomial storages variable, some might remain --------- Co-authored-by: ludamad <adam@aztecprotocol.com>
michaelelliot
pushed a commit
to Swoir/noir_rs
that referenced
this issue
Feb 28, 2024
Makes ProverPolynomials no longer use a span - Polynomial class already used shared memory, now allowing shifted polynomials to be represented by the same class - Fixes AztecProtocol#2213 by using ranges defined in entity classes - For safety, deletes the full-copy assignment and constructor of ProverPolynomials, so that we correctly std::move it around. This can possibly be removed, but wanted to catch any now-different-semantics usage and avoid extra copies - Makes explicit share() calls wherever semantics were to share before due to std::span usage. shifted() is similar, shares underlying memory, shifted - Remove cruft needed with a separate polynomial storages variable, some might remain --------- Co-authored-by: ludamad <adam@aztecprotocol.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
In every Prover class (e.g. barretenberg/honk/proof_system/prover.cpp), in the constructor we copy every Flavor entity element from the proving key into the
prover_polynomials
member variable. The error surface of this step is large as one mis-copied member will break the prover and is difficult to spot + debug.Ideally we can eithe remove or automate this copying step
The text was updated successfully, but these errors were encountered: