#include <extended_radix2_domain.hpp>
Public Types | |
typedef FieldType | field_type |
Public Member Functions | |
void | add_poly_z (const value_type &coeff, std::vector< value_type > &H) |
value_type | compute_vanishing_polynomial (const value_type &t) |
void | divide_by_z_on_coset (std::vector< value_type > &P) |
std::vector< value_type > | evaluate_all_lagrange_polynomials (const value_type &t) |
extended_radix2_domain (const std::size_t m) | |
void | fft (std::vector< value_type > &a) |
value_type | get_domain_element (const std::size_t idx) |
void | inverse_fft (std::vector< value_type > &a) |
Public Attributes | |
value_type | domain |
value_type | domain_inverse |
value_type | generator |
value_type | generator_inverse |
std::size_t | generator_size |
std::size_t | log2_size |
std::size_t | m |
value_type | omega |
value_type | root |
value_type | root_inverse |
value_type | shift |
std::size_t | small_m |
Member Typedef Documentation
◆ field_type
typedef FieldType nil::crypto3::math::extended_radix2_domain< FieldType >::field_type |
Constructor & Destructor Documentation
◆ extended_radix2_domain()
|
inline |
Member Function Documentation
◆ add_poly_z()
|
inlinevirtual |
Add the coefficients of the vanishing polynomial of S to the coefficients of the polynomial H.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ compute_vanishing_polynomial()
|
inlinevirtual |
Evaluate the vanishing polynomial of S at the field element t.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ divide_by_z_on_coset()
|
inlinevirtual |
Multiply by the evaluation, on a coset of S, of the inverse of the vanishing polynomial of S.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ evaluate_all_lagrange_polynomials()
|
inlinevirtual |
Evaluate all Lagrange polynomials.
The inputs are:
- an integer m
- an element t The output is a vector (b_{0},...,b_{m-1}) where b_{i} is the evaluation of L_{i,S}(z) at z = t.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ fft()
|
inlinevirtual |
Compute the FFT, over the domain S, of the vector a.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ get_domain_element()
|
inlinevirtual |
Get the idx-th element in S.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
◆ inverse_fft()
|
inlinevirtual |
Compute the inverse FFT, over the domain S, of the vector a.
Implements nil::crypto3::math::evaluation_domain< FieldType >.
Member Data Documentation
◆ domain
|
inherited |
◆ domain_inverse
|
inherited |
◆ generator
|
inherited |
◆ generator_inverse
|
inherited |
◆ generator_size
|
inherited |
◆ log2_size
|
inherited |
◆ m
|
inherited |
◆ omega
value_type nil::crypto3::math::extended_radix2_domain< FieldType >::omega |
◆ root
|
inherited |
◆ root_inverse
|
inherited |
◆ shift
value_type nil::crypto3::math::extended_radix2_domain< FieldType >::shift |
◆ small_m
std::size_t nil::crypto3::math::extended_radix2_domain< FieldType >::small_m |
The documentation for this class was generated from the following file: