Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <non_native_field_relation.hpp>
Public Types | |
using | FF = FF_ |
Static Public Member Functions | |
template<typename AllEntities > | |
static bool | skip (const AllEntities &in) |
Returns true if the contribution from all subrelations for the provided inputs is identically zero. | |
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters > | |
static void | accumulate (ContainerOverSubrelations &accumulators, const AllEntities &in, const Parameters ¶ms, const FF &scaling_factor) |
Non-native field arithmetic relation. | |
Static Public Attributes | |
static constexpr std::array< size_t, 1 > | SUBRELATION_PARTIAL_LENGTHS |
Definition at line 13 of file non_native_field_relation.hpp.
using bb::NonNativeFieldRelationImpl< FF_ >::FF = FF_ |
Definition at line 15 of file non_native_field_relation.hpp.
|
inlinestatic |
Non-native field arithmetic relation.
Adds contributions for identities associated with non-native field arithmetic:
Multiple selectors are used to 'switch' nnf gates on/off according to the following pattern:
gate type | q_nnf | q_2 | q_3 | q_4 | q_m |
---|---|---|---|---|---|
Bigfield Limb Accumulation 1 | 1 | 0 | 1 | 1 | 0 |
Bigfield Limb Accumulation 2 | 1 | 0 | 1 | 0 | 1 |
Bigfield Product 1 | 1 | 1 | 1 | 0 | 0 |
Bigfield Product 2 | 1 | 1 | 0 | 1 | 0 |
Bigfield Product 3 | 1 | 1 | 0 | 0 | 1 |
evals | transformed to evals + C(in(X)...)*scaling_factor |
in | an std::array containing the Totaly extended Univariate edges. |
parameters | contains beta, gamma, and public_input_delta, .... |
scaling_factor | optional term to scale the evaluation before adding to evals. |
Non native field arithmetic gate 2 deg 4
_ _ / _ _ _ 14 \
q_2 . q_4 | (w_1 . w_2) + (w_1 . w_2) + (w_1 . w_4 + w_2 . w_3 - w_3) . 2 - w_3 - w_4 | _ _/
Definition at line 49 of file non_native_field_relation.hpp.
|
inlinestatic |
Returns true if the contribution from all subrelations for the provided inputs is identically zero.
Definition at line 25 of file non_native_field_relation.hpp.
|
staticconstexpr |
Definition at line 17 of file non_native_field_relation.hpp.