|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include "barretenberg/stdlib/primitives/bigfield/bigfield.hpp"#include "barretenberg/numeric/random/engine.hpp"#include "barretenberg/ecc/curves/bn254/fq.hpp"#include "barretenberg/ecc/curves/bn254/fr.hpp"#include "../bool/bool.hpp"#include "../byte_array/byte_array.hpp"#include "../field/field.hpp"#include "barretenberg/circuit_checker/circuit_checker.hpp"#include "barretenberg/numeric/uintx/uintx.hpp"#include "barretenberg/stdlib/primitives/circuit_builders/circuit_builders.hpp"#include "barretenberg/stdlib/primitives/curves/bn254.hpp"#include "barretenberg/stdlib/primitives/curves/secp256k1.hpp"#include "barretenberg/stdlib/primitives/curves/secp256r1.hpp"#include "barretenberg/transcript/origin_tag.hpp"#include <gtest/gtest.h>#include <memory>#include <utility>Go to the source code of this file.
Classes | |
| struct | extract_builder< BigField< Builder, Params > > |
| struct | extract_fq_params< BigField< Builder, Params > > |
| class | stdlib_bigfield< BigField > |
Macros | |
| #define | BINARY_OP_TEST(op_name, bench_name, op_symbol, repetitions, reduced_inputs, reduction_after) |
| #define | ASSIGNMENT_OP_TEST(op_name, bench_name, op_symbol, repetitions, reduced_inputs, reduction_after) |
Typedefs | |
| template<typename BigField > | |
| using | builder_t = typename extract_builder< BigField >::type |
| template<typename BigField > | |
| using | params_t = typename extract_fq_params< BigField >::type |
| using | CircuitTypes = testing::Types< typename bb::stdlib::bn254< UltraCircuitBuilder >::BaseField, typename bb::stdlib::secp256k1< UltraCircuitBuilder >::fq_ct, typename bb::stdlib::secp256k1< UltraCircuitBuilder >::bigfr_ct, typename bb::stdlib::secp256r1< UltraCircuitBuilder >::fq_ct, typename bb::stdlib::secp256r1< UltraCircuitBuilder >::bigfr_ct > |
Enumerations | |
| enum struct | InputType { WITNESS , CONSTANT , WITNESS , CONSTANT } |
Functions | |
| constexpr InputType | operator! (InputType type) |
| TYPED_TEST_SUITE (stdlib_bigfield, CircuitTypes) | |
| TYPED_TEST (stdlib_bigfield, assert_not_equal_regression) | |
| TYPED_TEST (stdlib_bigfield, add_to_lower_limb_regression) | |
| TYPED_TEST (stdlib_bigfield, badmul) | |
| TYPED_TEST (stdlib_bigfield, division_formula_regression) | |
| TYPED_TEST (stdlib_bigfield, basic_tag_logic) | |
| TYPED_TEST (stdlib_bigfield, test_constructor) | |
| TYPED_TEST (stdlib_bigfield, test_unsafe_construct_from_limbs) | |
| TYPED_TEST (stdlib_bigfield, test_construct_from_limbs) | |
| TYPED_TEST (stdlib_bigfield, test_construct_from_limbs_fails) | |
| TYPED_TEST (stdlib_bigfield, add_two) | |
| TYPED_TEST (stdlib_bigfield, add_two_with_constants) | |
| TYPED_TEST (stdlib_bigfield, sum) | |
| TYPED_TEST (stdlib_bigfield, sum_with_mixed_inputs) | |
| TYPED_TEST (stdlib_bigfield, sum_with_constant) | |
| TYPED_TEST (stdlib_bigfield, mul) | |
| TYPED_TEST (stdlib_bigfield, mul_with_constant) | |
| TYPED_TEST (stdlib_bigfield, sub) | |
| TYPED_TEST (stdlib_bigfield, sub_with_constant) | |
| TYPED_TEST (stdlib_bigfield, add) | |
| TYPED_TEST (stdlib_bigfield, add_with_constant) | |
| TYPED_TEST (stdlib_bigfield, div) | |
| TYPED_TEST (stdlib_bigfield, div_with_constant) | |
| TYPED_TEST (stdlib_bigfield, sqr) | |
| TYPED_TEST (stdlib_bigfield, sqr_with_constant) | |
| TYPED_TEST (stdlib_bigfield, negate) | |
| TYPED_TEST (stdlib_bigfield, mul_assignment) | |
| TYPED_TEST (stdlib_bigfield, mul_assignment_with_constant) | |
| TYPED_TEST (stdlib_bigfield, add_assignment) | |
| TYPED_TEST (stdlib_bigfield, add_assignment_with_constant) | |
| TYPED_TEST (stdlib_bigfield, sub_assignment) | |
| TYPED_TEST (stdlib_bigfield, sub_assignment_with_constant) | |
| TYPED_TEST (stdlib_bigfield, div_assignment) | |
| TYPED_TEST (stdlib_bigfield, div_assignment_with_constant) | |
| TYPED_TEST (stdlib_bigfield, madd) | |
| TYPED_TEST (stdlib_bigfield, madd_with_constants) | |
| TYPED_TEST (stdlib_bigfield, sqradd) | |
| TYPED_TEST (stdlib_bigfield, sqradd_with_constant) | |
| TYPED_TEST (stdlib_bigfield, mult_madd) | |
| TYPED_TEST (stdlib_bigfield, mult_madd_with_constants) | |
| TYPED_TEST (stdlib_bigfield, mult_madd_edge_cases) | |
| TYPED_TEST (stdlib_bigfield, dual_madd) | |
| TYPED_TEST (stdlib_bigfield, div_without_denominator_check) | |
| TYPED_TEST (stdlib_bigfield, div_without_denominator_check_with_constant) | |
| TYPED_TEST (stdlib_bigfield, add_and_div) | |
| TYPED_TEST (stdlib_bigfield, add_and_mul) | |
| TYPED_TEST (stdlib_bigfield, add_and_mul_with_constants) | |
| TYPED_TEST (stdlib_bigfield, sub_and_mul) | |
| TYPED_TEST (stdlib_bigfield, sub_and_mul_with_constants) | |
| TYPED_TEST (stdlib_bigfield, msub_div) | |
| TYPED_TEST (stdlib_bigfield, msub_div_with_constants) | |
| TYPED_TEST (stdlib_bigfield, conditional_assign) | |
| TYPED_TEST (stdlib_bigfield, conditional_assign_with_constants) | |
| TYPED_TEST (stdlib_bigfield, conditional_select) | |
| TYPED_TEST (stdlib_bigfield, conditional_select_with_constants) | |
| TYPED_TEST (stdlib_bigfield, msb_div_ctx_crash_regression) | |
| TYPED_TEST (stdlib_bigfield, conditional_negate) | |
| TYPED_TEST (stdlib_bigfield, conditional_negate_with_constants) | |
| TYPED_TEST (stdlib_bigfield, group_operations) | |
| TYPED_TEST (stdlib_bigfield, reduce) | |
| TYPED_TEST (stdlib_bigfield, equality) | |
| TYPED_TEST (stdlib_bigfield, equality_with_constants) | |
| TYPED_TEST (stdlib_bigfield, unsafe_assert_less_than) | |
| TYPED_TEST (stdlib_bigfield, unsafe_assert_less_than_fails) | |
| TYPED_TEST (stdlib_bigfield, unsafe_evaluate_multiply_add) | |
| TYPED_TEST (stdlib_bigfield, unsafe_evaluate_multiply_add_fails) | |
| TYPED_TEST (stdlib_bigfield, unsafe_evaluate_multiple_multiply_add) | |
| TYPED_TEST (stdlib_bigfield, unsafe_evaluate_multiple_multiply_add_fails) | |
| TYPED_TEST (stdlib_bigfield, assert_is_in_field_success) | |
| TYPED_TEST (stdlib_bigfield, assert_is_in_field_fails) | |
| TYPED_TEST (stdlib_bigfield, assert_less_than_success) | |
| TYPED_TEST (stdlib_bigfield, assert_less_than_fails) | |
| TYPED_TEST (stdlib_bigfield, reduce_mod_target_modulus) | |
| TYPED_TEST (stdlib_bigfield, byte_array_constructors) | |
| TYPED_TEST (stdlib_bigfield, to_byte_array) | |
| TYPED_TEST (stdlib_bigfield, quotient_completeness_regression) | |
| TYPED_TEST (stdlib_bigfield, conditional_select_regression) | |
| TYPED_TEST (stdlib_bigfield, division_context) | |
| TYPED_TEST (stdlib_bigfield, inverse) | |
| TYPED_TEST (stdlib_bigfield, assert_equal_not_equal) | |
| TYPED_TEST (stdlib_bigfield, pow) | |
| TYPED_TEST (stdlib_bigfield, pow_one) | |
| TYPED_TEST (stdlib_bigfield, nonnormalized_field_bug_regression) | |
| TYPED_TEST (stdlib_bigfield, internal_div_bug_regression) | |
| #define ASSIGNMENT_OP_TEST | ( | op_name, | |
| bench_name, | |||
| op_symbol, | |||
| repetitions, | |||
| reduced_inputs, | |||
| reduction_after | |||
| ) |
Definition at line 612 of file bigfield.test.cpp.
| #define BINARY_OP_TEST | ( | op_name, | |
| bench_name, | |||
| op_symbol, | |||
| repetitions, | |||
| reduced_inputs, | |||
| reduction_after | |||
| ) |
Definition at line 511 of file bigfield.test.cpp.
| using builder_t = typename extract_builder<BigField>::type |
Definition at line 52 of file bigfield.test.cpp.
| using CircuitTypes = testing::Types<typename bb::stdlib::bn254<UltraCircuitBuilder>::BaseField, typename bb::stdlib::secp256k1<UltraCircuitBuilder>::fq_ct, typename bb::stdlib::secp256k1<UltraCircuitBuilder>::bigfr_ct, typename bb::stdlib::secp256r1<UltraCircuitBuilder>::fq_ct, typename bb::stdlib::secp256r1<UltraCircuitBuilder>::bigfr_ct> |
Definition at line 2077 of file bigfield.test.cpp.
| using params_t = typename extract_fq_params<BigField>::type |
Definition at line 53 of file bigfield.test.cpp.
|
strong |
| Enumerator | |
|---|---|
| WITNESS | |
| CONSTANT | |
| WITNESS | |
| CONSTANT | |
Definition at line 28 of file bigfield.test.cpp.
Definition at line 33 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add | |||
| ) |
Definition at line 2169 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_and_div | |||
| ) |
Definition at line 2298 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_and_mul | |||
| ) |
Definition at line 2302 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_and_mul_with_constants | |||
| ) |
Definition at line 2306 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_assignment | |||
| ) |
Definition at line 2211 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_assignment_with_constant | |||
| ) |
Definition at line 2215 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_to_lower_limb_regression | |||
| ) |
Definition at line 2090 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_two | |||
| ) |
Definition at line 2123 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_two_with_constants | |||
| ) |
Definition at line 2127 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| add_with_constant | |||
| ) |
Definition at line 2173 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_equal_not_equal | |||
| ) |
Definition at line 2474 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_is_in_field_fails | |||
| ) |
Definition at line 2430 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_is_in_field_success | |||
| ) |
Definition at line 2426 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_less_than_fails | |||
| ) |
Definition at line 2438 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_less_than_success | |||
| ) |
Definition at line 2434 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| assert_not_equal_regression | |||
| ) |
Definition at line 2085 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| badmul | |||
| ) |
Definition at line 2094 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| basic_tag_logic | |||
| ) |
Definition at line 2103 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| byte_array_constructors | |||
| ) |
Definition at line 2446 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_assign | |||
| ) |
Definition at line 2338 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_assign_with_constants | |||
| ) |
Definition at line 2342 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_negate | |||
| ) |
Definition at line 2368 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_negate_with_constants | |||
| ) |
Definition at line 2372 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_select | |||
| ) |
Definition at line 2351 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_select_regression | |||
| ) |
Definition at line 2459 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| conditional_select_with_constants | |||
| ) |
Definition at line 2355 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div | |||
| ) |
Definition at line 2179 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div_assignment | |||
| ) |
Definition at line 2231 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div_assignment_with_constant | |||
| ) |
Definition at line 2235 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div_with_constant | |||
| ) |
Definition at line 2183 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div_without_denominator_check | |||
| ) |
Definition at line 2288 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| div_without_denominator_check_with_constant | |||
| ) |
Definition at line 2292 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| division_context | |||
| ) |
Definition at line 2464 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| division_formula_regression | |||
| ) |
Definition at line 2099 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| dual_madd | |||
| ) |
Definition at line 2284 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| equality | |||
| ) |
Definition at line 2390 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| equality_with_constants | |||
| ) |
Definition at line 2394 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| group_operations | |||
| ) |
Definition at line 2378 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| internal_div_bug_regression | |||
| ) |
Definition at line 2493 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| inverse | |||
| ) |
Definition at line 2469 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| madd | |||
| ) |
Definition at line 2241 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| madd_with_constants | |||
| ) |
Definition at line 2245 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| msb_div_ctx_crash_regression | |||
| ) |
Definition at line 2364 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| msub_div | |||
| ) |
Definition at line 2318 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| msub_div_with_constants | |||
| ) |
Definition at line 2323 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mul | |||
| ) |
Definition at line 2149 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mul_assignment | |||
| ) |
Definition at line 2201 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mul_assignment_with_constant | |||
| ) |
Definition at line 2205 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mul_with_constant | |||
| ) |
Definition at line 2153 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mult_madd | |||
| ) |
Definition at line 2266 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mult_madd_edge_cases | |||
| ) |
Definition at line 2277 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| mult_madd_with_constants | |||
| ) |
Definition at line 2270 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| negate | |||
| ) |
Definition at line 2197 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| nonnormalized_field_bug_regression | |||
| ) |
Definition at line 2488 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| pow | |||
| ) |
Definition at line 2479 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| pow_one | |||
| ) |
Definition at line 2484 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| quotient_completeness_regression | |||
| ) |
Definition at line 2454 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| reduce | |||
| ) |
Definition at line 2386 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| reduce_mod_target_modulus | |||
| ) |
Definition at line 2442 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sqr | |||
| ) |
Definition at line 2189 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sqr_with_constant | |||
| ) |
Definition at line 2193 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sqradd | |||
| ) |
Definition at line 2256 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sqradd_with_constant | |||
| ) |
Definition at line 2260 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub | |||
| ) |
Definition at line 2159 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub_and_mul | |||
| ) |
Definition at line 2310 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub_and_mul_with_constants | |||
| ) |
Definition at line 2314 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub_assignment | |||
| ) |
Definition at line 2221 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub_assignment_with_constant | |||
| ) |
Definition at line 2225 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sub_with_constant | |||
| ) |
Definition at line 2163 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sum | |||
| ) |
Definition at line 2137 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sum_with_constant | |||
| ) |
Definition at line 2145 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| sum_with_mixed_inputs | |||
| ) |
Definition at line 2141 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| test_construct_from_limbs | |||
| ) |
Definition at line 2115 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| test_construct_from_limbs_fails | |||
| ) |
Definition at line 2119 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| test_constructor | |||
| ) |
Definition at line 2107 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| test_unsafe_construct_from_limbs | |||
| ) |
Definition at line 2111 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| to_byte_array | |||
| ) |
Definition at line 2450 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_assert_less_than | |||
| ) |
Definition at line 2401 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_assert_less_than_fails | |||
| ) |
Definition at line 2405 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_evaluate_multiple_multiply_add | |||
| ) |
Definition at line 2417 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_evaluate_multiple_multiply_add_fails | |||
| ) |
Definition at line 2421 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_evaluate_multiply_add | |||
| ) |
Definition at line 2409 of file bigfield.test.cpp.
| TYPED_TEST | ( | stdlib_bigfield | , |
| unsafe_evaluate_multiply_add_fails | |||
| ) |
Definition at line 2413 of file bigfield.test.cpp.
| TYPED_TEST_SUITE | ( | stdlib_bigfield | , |
| CircuitTypes | |||
| ) |