-
Notifications
You must be signed in to change notification settings - Fork 236
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: fixed number of pub inputs for databus commitment propagation (#…
…9336) This work is motivated by the need to have a "write vk" method for kernel circuits that depends only on acir constraints (no witness data or historical data about the previously accumulated circuits). This is made difficult by the inter-circuit databus consistency check mechanism which, until now, added structure to a present circuit based on the structure of previous circuits. This PR makes updates to the mechanism so that the constraints associated with the databus consistency checks are consistent across all kernel circuits. There are two components to this: (1) Every kernel propagates 2 commitments worth of data (one for app return data, one for kernel return data) on its public inputs. (Previously this was allowed to be 0, 1 or 2 depending on the number of recursive verifications performed by the kernel). If data does not exist for either of these (e.g. if the kernel is only verifying a proof of one or the other), a default value is propagated. (This value is set to match the commitment to the "empty" calldata that will correspond to the missing return data). (2) Every kernel performs two commitment consistency checks: one that checks that the app `return_data` is equal to the `secondary_calldata` and one that checks that the previous kernel `return_data` is equal to the `calldata`. (Previously there could be 0, 1, or 2 such checks depending on the data propagated on the public inputs of the kernel being recursively verified - hence the need for knowledge of history / witness data). Closes AztecProtocol/barretenberg#1125 (had to do with dynamically determining the number of public inputs associated with databus commitments which is now fixed in size to 16).
- Loading branch information
1 parent
2823cbb
commit 8658abd
Showing
15 changed files
with
157 additions
and
84 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.