|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
Go to the source code of this file.
Typedefs | |
| using | FlavorTypes = testing::Types< UltraFlavor, UltraZKFlavor > |
Functions | |
| TYPED_TEST_SUITE (UltraHonkTests, FlavorTypes) | |
| TYPED_TEST (UltraHonkTests, LookupXorConstraint) | |
| Test XOR lookup using the UINT32_XOR table. | |
| TYPED_TEST (UltraHonkTests, LookupAndConstraint) | |
| Test AND lookup using the UINT32_AND table. | |
| TYPED_TEST (UltraHonkTests, LookupFixedBaseScalarMul) | |
| Test fixed-base scalar multiplication lookup tables. | |
| TYPED_TEST (UltraHonkTests, LookupFailureBaselineValid) | |
| Baseline test: verify that the unaltered lookup circuit is valid. | |
| TYPED_TEST (UltraHonkTests, LookupFailureCorruptedReadCountsAndTags) | |
| Failure test: corrupted read counts and tags. | |
| TYPED_TEST (UltraHonkTests, LookupFailureCorruptedWireValue) | |
| Failure test: corrupted wire value in a lookup gate. | |
| TYPED_TEST (UltraHonkTests, LookupFailureErroneousLookupSelector) | |
| Failure test: erroneous lookup selector activation. | |
| TYPED_TEST (UltraHonkTests, LookupMixedXorAndOperations) | |
| Test mixed XOR and AND lookups in the same circuit. In particular, two lookup tables are present. | |
| using FlavorTypes = testing::Types<UltraFlavor, UltraZKFlavor> |
Definition at line 6 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupAndConstraint | |||
| ) |
Test AND lookup using the UINT32_AND table.
Definition at line 40 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupFailureBaselineValid | |||
| ) |
Baseline test: verify that the unaltered lookup circuit is valid.
Definition at line 132 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupFailureCorruptedReadCountsAndTags | |||
| ) |
Failure test: corrupted read counts and tags.
The read_counts polynomial tracks how many times each table entry is read. The read_tags polynomial marks which rows contain lookup data. Corrupting both breaks the log-derivative relation.
Note: updating only one or the other may not cause failure due to the design of the relation algebra. The inverse is only computed if read_tags is non-zero; otherwise the inverse at that row is zero. So if read_counts is incremented but read_tags is not, the erroneous read_counts value gets multiplied by 0 in the relation. This is expected behavior.
Definition at line 153 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupFailureCorruptedWireValue | |||
| ) |
Failure test: corrupted wire value in a lookup gate.
A lookup gate reads (w_l, w_r, w_o) from a table. Corrupting any wire value means the tuple is no longer in the table, breaking the lookup argument.
Definition at line 181 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupFailureErroneousLookupSelector | |||
| ) |
Failure test: erroneous lookup selector activation.
Turning on q_lookup for a row that doesn't contain valid table data creates a lookup for a non-existent entry.
Definition at line 213 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupFixedBaseScalarMul | |||
| ) |
Test fixed-base scalar multiplication lookup tables.
Definition at line 68 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupMixedXorAndOperations | |||
| ) |
Test mixed XOR and AND lookups in the same circuit. In particular, two lookup tables are present.
Definition at line 237 of file lookup.test.cpp.
| TYPED_TEST | ( | UltraHonkTests | , |
| LookupXorConstraint | |||
| ) |
Test XOR lookup using the UINT32_XOR table.
Definition at line 12 of file lookup.test.cpp.
| TYPED_TEST_SUITE | ( | UltraHonkTests | , |
| FlavorTypes | |||
| ) |