Barretenberg
The ZK-SNARK library at the core of Aztec
|
Show that relation arithmetic has a simple form. More...
#include "barretenberg/ecc/curves/bn254/fr.hpp"
#include "barretenberg/ecc/curves/grumpkin/grumpkin.hpp"
#include "barretenberg/relations/delta_range_constraint_relation.hpp"
#include "barretenberg/relations/elliptic_relation.hpp"
#include "barretenberg/relations/memory_relation.hpp"
#include "barretenberg/relations/non_native_field_relation.hpp"
#include "barretenberg/relations/permutation_relation.hpp"
#include "barretenberg/relations/poseidon2_external_relation.hpp"
#include "barretenberg/relations/poseidon2_internal_relation.hpp"
#include "barretenberg/relations/relation_parameters.hpp"
#include "barretenberg/relations/ultra_arithmetic_relation.hpp"
#include <gtest/gtest.h>
Go to the source code of this file.
Classes | |
struct | InputElements |
class | UltraRelationConsistency |
Typedefs | |
using | FF = fr |
Show that relation arithmetic has a simple form.
The purpose of this test suite is to show that the identity arithmetic implemented in the Relations is equivalent to a simpler unoptimized version implemented in the tests themselves. This is useful 1) as documentation since the simple implementations here should make the underlying arithmetic easier to see, and 2) as a check that optimizations introduced into the Relations have not changed the result.
For this purpose, we simply feed (the same) random inputs into each of the two implementations and confirm that the outputs match. This does not confirm the correctness of the identity arithmetic (the identities will not be satisfied in general by random inputs) only that the two implementations are equivalent.
Definition in file ultra_relation_consistency.test.cpp.
Definition at line 29 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
DeltaRangeConstraintRelation | |||
) |
Definition at line 204 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
EllipticRelation | |||
) |
Definition at line 243 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
MemoryRelation | |||
) |
Memory Record Check
ROM Consistency Check
RAM Consistency Check
RAM/ROM access check gate
RAM Timestamp Consistency Check
The complete RAM/ROM memory identity
Definition at line 379 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
NonNativeFieldRelation | |||
) |
Definition at line 306 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
Poseidon2ExternalRelation | |||
) |
Definition at line 497 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
Poseidon2InternalRelation | |||
) |
Definition at line 571 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
UltraArithmeticRelation | |||
) |
Definition at line 111 of file ultra_relation_consistency.test.cpp.
TEST_F | ( | UltraRelationConsistency | , |
UltraPermutationRelation | |||
) |
Definition at line 155 of file ultra_relation_consistency.test.cpp.