|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
Shared computation logic for barycentric extension and evaluation data. More...
#include <barycentric.hpp>
Static Public Member Functions | |
| static constexpr std::array< Fr, big_domain_size > | construct_big_domain () |
| static constexpr std::array< Fr, domain_size > | construct_lagrange_denominators (const auto &big_domain) |
| static void | assert_constant (const Fr &val) |
| static constexpr std::array< Fr, domain_size *num_evals > | batch_invert (const std::array< Fr, domain_size *num_evals > &coeffs) |
| static constexpr std::array< Fr, domain_size *num_evals > | construct_denominator_inverses (const auto &big_domain, const auto &lagrange_denominators) |
| static constexpr std::array< Fr, num_evals > | construct_full_numerator_values (const auto &big_domain) |
Static Public Attributes | |
| static constexpr size_t | domain_size = domain_end |
| static constexpr size_t | big_domain_size = std::max(domain_size, num_evals) |
Shared computation logic for barycentric extension and evaluation data.
All methods are constexpr. For native field types (bb::field) they are evaluated at compile time; for non-constexpr types (e.g. stdlib field_t) the constexpr qualifier is silently ignored and they execute at runtime. The two thin wrapper classes (BarycentricDataCompileTime, BarycentricDataRunTime) inherit these methods and only differ in how they declare their static data members (static constexpr vs inline static const).
| domain_end | specifies the given evaluation domain {0,..., domain_end - 1} |
| num_evals | the number of evaluations that are computable with specific barycentric extension formula IMPROVEMENT : Can use lookup tables to optimize the computations. |
Definition at line 41 of file barycentric.hpp.
|
inlinestatic |
Definition at line 81 of file barycentric.hpp.
|
inlinestaticconstexpr |
Definition at line 88 of file barycentric.hpp.
|
inlinestaticconstexpr |
Static constexpr methods for computing arrays of precomputable data used for barycentric extension and evaluation
Definition at line 56 of file barycentric.hpp.
|
inlinestaticconstexpr |
Definition at line 134 of file barycentric.hpp.
|
inlinestaticconstexpr |
Definition at line 158 of file barycentric.hpp.
|
inlinestaticconstexpr |
Definition at line 66 of file barycentric.hpp.
|
staticconstexpr |
Definition at line 44 of file barycentric.hpp.
|
staticconstexpr |
Definition at line 43 of file barycentric.hpp.