|
barretenberg
|
Public Types | |
| using | FF = FF_ |
Static Public Member Functions | |
| template<typename AllValues > | |
| static bool | operation_exists_at_row (const AllValues &row) |
| Determine whether the inverse I needs to be computed at a given row. | |
| template<typename AllEntities > | |
| static auto & | get_inverse_polynomial (AllEntities &in) |
| Get the lookup inverse polynomial. | |
| template<typename Accumulator , typename AllEntities > | |
| static Accumulator | compute_inverse_exists (const AllEntities &in) |
| Compute the Accumulator whose values indicate whether the inverse is computed or not. | |
| template<typename Accumulator , size_t index, typename AllEntities > | |
| static Accumulator | lookup_read_counts (const AllEntities &in) |
| template<typename Accumulator , size_t read_index, typename AllEntities > | |
| static Accumulator | compute_read_term_predicate (const AllEntities &in) |
| Compute scalar for read term in log derivative lookup argument. | |
| template<typename Accumulator , size_t write_index, typename AllEntities > | |
| static Accumulator | compute_write_term_predicate (const AllEntities &) |
| Compute scalar for write term in log derivative lookup argument. | |
| template<typename Accumulator , size_t write_index, typename AllEntities , typename Parameters > | |
| static Accumulator | compute_write_term (const AllEntities &in, const Parameters ¶ms) |
| Compute write term denominator in log derivative lookup argument. | |
| template<typename Accumulator , size_t read_index, typename AllEntities , typename Parameters > | |
| static Accumulator | compute_read_term (const AllEntities &in, const Parameters ¶ms) |
| Compute read term denominator in log derivative lookup argument. | |
| template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters > | |
| static void | accumulate (ContainerOverSubrelations &accumulator, const AllEntities &in, const Parameters ¶ms, const FF &scaling_factor) |
| Accumulate the contribution from two surelations for the log derivative databus lookup argument. | |
Static Public Attributes | |
| static constexpr size_t | READ_TERMS = 1 |
| static constexpr size_t | WRITE_TERMS = 1 |
| static constexpr size_t | LENGTH = READ_TERMS + WRITE_TERMS + 3 |
| static constexpr std::array< size_t, 2 > | SUBRELATION_PARTIAL_LENGTHS |
| static constexpr std::array< bool, 2 > | SUBRELATION_LINEARLY_INDEPENDENT = { true, false } |
|
inlinestatic |
Accumulate the contribution from two surelations for the log derivative databus lookup argument.
See logderivative_library.hpp for details of the generic log-derivative lookup argument
| accumulator | transformed to evals + C(in(X)...)*scaling_factor |
| in | an std::array containing the fully extended Accumulator edges. |
| params | contains beta, gamma, and public_input_delta, .... |
| scaling_factor | optional term to scale the evaluation before adding to evals. |
|
inlinestatic |
Compute the Accumulator whose values indicate whether the inverse is computed or not.
This is needed for efficiency since we don't need to compute the inverse unless the log derivative lookup relation is active at a given row.
|
inlinestatic |
Compute read term denominator in log derivative lookup argument.
|
inlinestatic |
Compute scalar for read term in log derivative lookup argument.
|
inlinestatic |
Compute write term denominator in log derivative lookup argument.
|
inlinestatic |
Compute scalar for write term in log derivative lookup argument.
|
inlinestatic |
Get the lookup inverse polynomial.
| AllEntities |
| in |
|
inlinestatic |
Determine whether the inverse I needs to be computed at a given row.
The value of the inverse polynomial I(X) only needs to be computed when the databus lookup gate is "active". Otherwise it is set to 0. This method allows for determination of when the inverse should be computed.
| AllValues |
| row |
|
staticconstexpr |