-
Notifications
You must be signed in to change notification settings - Fork 381
Do not duplicate assertion payloads for Brillig functions #5792
Copy link
Copy link
Open
Description
Problem
We duplicate assertion messages for all Brillig calls that are inserted from generated brillig into our generated ACIR
| for (brillig_index, message) in generated_brillig.assert_messages.iter() { |
Happy Case
Similarly to our deduplication of Brillig bytecode with the BrilligCall opcode and Brillig debug locations we should also deduplicate the Brillig assertion payloads so to not repeat them as part of ACIR.
We should note though that assertion payloads are included as part of the Circuit struct and resolved using that. This is necessary for ACIR but we should be able to split out unconstrained functionality. Either way, this is a breaking serialization change.
Workaround
Yes
Workaround Description
No response
Additional Context
No response
Project Impact
None
Blocker Context
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
Reactions are currently unavailable