-
Notifications
You must be signed in to change notification settings - Fork 199
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
Point Addition in Unentered else Block Causes Circuit Failure #5045
Labels
bug
Something isn't working
Comments
This is addressed by AztecProtocol/aztec-packages#6384 Dupe of #4978 |
Reopening as this is actually different and won't be addressed in that PR. |
We'll add some behaviour in the flattening pass to apply predicates to these inputs in if statements. This will be blocked pending being able to represent the point at infinity for now though. |
5 tasks
github-merge-queue bot
pushed a commit
that referenced
this issue
May 30, 2024
# Description ## Problem\* Resolves #5045 ## Summary\* use predicate to set is_infinite to true when side_effects are disabled, to ensure that the curve operation will not fail. ## Additional Context ## Documentation\* Check one: - [X] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [X] I have tested the changes locally. - [X] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Aim
A point addition inside an else that is NOT "entered" will cause the circuit to fail entirely. The simulator seems to apply the checks when generating the witness and if using 0 as the base value just fails.
I encountered this when having a computation that is only to happen when we have non-zero values, but anyway fails even if unused. A minimal test to reproduce is here.
Similar failure is possible with the
multi_scalar_mul
andfixed_base_scalar_mul
if providing fields with values > 128 bits inside the if.Expected Behavior
I expected to see
We are not trying to do a double of zero
And have the test pass.
Bug
Instead the test fails with the following log.
To Reproduce
Project Impact
Blocker
Impact Context
We need to use the computation to constrain log production in Aztec.
Workaround
None
Workaround Description
No response
Additional Context
No response
Installation Method
None
Nargo Version
No response
NoirJS Version
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
The text was updated successfully, but these errors were encountered: