-
Notifications
You must be signed in to change notification settings - Fork 324
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
feat(barretenberg): Graph methods for circuit analysis (part 2) #12110
Conversation
…es and sha256 were testted
… some naming changes
|
||
TEST(boomerang_ultra_circuit_constructor, test_variable_gates_count_for_decompose) | ||
TEST(ultra_circuit_constructor, test_variable_gates_count_for_decompose) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why have you renamed all of these?
|
||
using byte_array_ct = byte_array<Builder>; | ||
using packed_byte_array_ct = packed_byte_array<Builder>; | ||
using field_ct = field_t<Builder>; | ||
|
||
/** | ||
all these tests check graph description for sha256 circuits. All circuits have to consist from 1 connected component |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
consist of
using packed_byte_array_pt = packed_byte_array<Builder>; | ||
using field_pt = field_t<Builder>; | ||
|
||
void fix_vector(std::vector<field_pt>& vector) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These need comments
313b5d6
to
29ff134
Compare
Replaced with #12130 |
This PR continues Graph Description for Ultra Circuit Builder.
There were added functions for processing:
There were tested primitives like Poseidon2s hash function, Dynamic Array and Bigfield. Poseidon and Dynamic Array have been fully tested. Bigfield has been tested halfway.
There has been completed function for arithmetic block. (q_arith == 3 case), and it processes fix_witness another way.
There was added new filtering mechanism for finalize_circuit() function using tau and range tags, filtering mechanism for RAM/ROM gate and filtering mechanism for variables that were fixed.
Also there was added new data structure for containing information about gates for every variable. It can be helpful in further filtering mechanisms or debugging process.
No vulnerabilities were found by static analyzer.