Skip to content
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

bug fix: UltraPlonk RAM witnesses affect verification key #520

Merged
merged 1 commit into from
Jun 9, 2023

Conversation

zac-williamson
Copy link
Contributor

@zac-williamson zac-williamson commented Jun 9, 2023

Fixed bug where UltraPlonk RAM constraints made verification key depend on witness

Fixed following issues:

  1. memory_read_records, memory_write_records are a function of the input witness, and should be assigned to the proving key in compute_witness (not compute_proving_key)
  2. apply_aux_selectors(AUX_SELECTORS::RAM_TIMESTAMP_CHECK) was being called on the original ram records witnesses and NOT the set of sorted ram record witnesses

Description

Please provide a paragraph or two giving a summary of the change, including relevant motivation and context.

Checklist:

  • I have reviewed my diff in github, line by line.
  • Every change is related to the PR description.
  • I have linked this pull request to the issue(s) that it resolves.
  • There are no unexpected formatting changes, superfluous debug logs, or commented-out code.
  • There are no circuit changes, OR specifications in /markdown/specs have been updated.
  • There are no circuit changes, OR a cryptographer has been assigned for review.
  • I've updated any terraform that needs updating (e.g. environment variables) for deployment.
  • The branch has been rebased against the head of its merge target.
  • I'm happy for the PR to be merged at the reviewer's next convenience.
  • New functions, classes, etc. have been documented according to the doxygen comment format. Classes and structs must have @brief describing the intended functionality.
  • If existing code has been modified, such documentation has been added or updated.

…ndent on witness

Fixed following issues:

1. `memory_read_records`, `memory_write_records` are a function of the input witness, and should be assigned to the proving key in `compute_witness` (not `compute_proving_key`)
2. `apply_aux_selectors(AUX_SELECTORS::RAM_TIMESTAMP_CHECK)` was being called on the original ram records witnesses and NOT the set of sorted ram record witnesses
Copy link
Contributor

@Rumata888 Rumata888 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything seems fine

@zac-williamson zac-williamson merged commit 1801a14 into master Jun 9, 2023
@zac-williamson zac-williamson deleted the zw/ultra_ram_bugfix branch June 9, 2023 17:35
@codygunton codygunton mentioned this pull request Jun 12, 2023
11 tasks
ludamad pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Jul 22, 2023
…ndent on witness (AztecProtocol/barretenberg#520)

Fixed following issues:

1. `memory_read_records`, `memory_write_records` are a function of the input witness, and should be assigned to the proving key in `compute_witness` (not `compute_proving_key`)
2. `apply_aux_selectors(AUX_SELECTORS::RAM_TIMESTAMP_CHECK)` was being called on the original ram records witnesses and NOT the set of sorted ram record witnesses
ludamad pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Jul 24, 2023
…ndent on witness (AztecProtocol/barretenberg#520)

Fixed following issues:

1. `memory_read_records`, `memory_write_records` are a function of the input witness, and should be assigned to the proving key in `compute_witness` (not `compute_proving_key`)
2. `apply_aux_selectors(AUX_SELECTORS::RAM_TIMESTAMP_CHECK)` was being called on the original ram records witnesses and NOT the set of sorted ram record witnesses
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants