barretenberg
Loading...
Searching...
No Matches
Static Public Member Functions | Static Public Attributes | List of all members
barretenberg::BarycentricDataCompileTime< Fr, domain_end, num_evals, domain_start > Class Template Reference

#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 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 - domain_start
 
static constexpr size_t big_domain_size = std::max(domain_size, num_evals)
 
static constexpr auto big_domain = construct_big_domain()
 
static constexpr auto lagrange_denominators = construct_lagrange_denominators(big_domain)
 
static constexpr auto precomputed_denominator_inverses
 
static constexpr auto full_numerator_values = construct_full_numerator_values(big_domain)
 

Detailed Description

template<class Fr, size_t domain_end, size_t num_evals, size_t domain_start = 0>
class barretenberg::BarycentricDataCompileTime< Fr, domain_end, num_evals, domain_start >
Todo:
: TODO(https://github.com/AztecProtocol/barretenberg/issues/713) Optimize with lookup tables?
Template Parameters
domain_end,domain_startspecify the given evaluation domain {domain_start,..., domain_end - 1}
num_evalsthe number of evaluations that are computable with specific barycentric extension formula

Member Function Documentation

◆ construct_big_domain()

template<class Fr , size_t domain_end, size_t num_evals, size_t domain_start = 0>
static constexpr std::array< Fr, big_domain_size > barretenberg::BarycentricDataCompileTime< Fr, domain_end, num_evals, domain_start >::construct_big_domain ( )
inlinestaticconstexpr

Static constexpr methods for computing arrays of precomputable data used for barycentric extension and evaluation

Member Data Documentation

◆ precomputed_denominator_inverses

template<class Fr , size_t domain_end, size_t num_evals, size_t domain_start = 0>
constexpr auto barretenberg::BarycentricDataCompileTime< Fr, domain_end, num_evals, domain_start >::precomputed_denominator_inverses
staticconstexpr
Initial value:
=
construct_denominator_inverses(big_domain, lagrange_denominators)

The documentation for this class was generated from the following file: