#include <ntt.hpp>
|
| | NTTImpl (uint64_t degree, uint64_t q, uint64_t root_of_unity, std::shared_ptr< AllocatorBase > alloc_ptr={}) |
| |
| | NTTImpl (uint64_t degree, uint64_t q, std::shared_ptr< AllocatorBase > alloc_ptr={}) |
| |
| | ~NTTImpl () |
| |
| uint64_t | GetMinimalRootOfUnity () const |
| |
| uint64_t | GetDegree () const |
| |
| uint64_t | GetModulus () const |
| |
| AlignedVector64< uint64_t > & | GetPrecon64RootOfUnityPowers () |
| |
| uint64_t * | GetPrecon64RootOfUnityPowersPtr () |
| |
| AlignedVector64< uint64_t > & | GetPrecon52RootOfUnityPowers () |
| |
| uint64_t * | GetPrecon52RootOfUnityPowersPtr () |
| |
| uint64_t * | GetRootOfUnityPowersPtr () |
| |
| AlignedVector64< uint64_t > & | GetRootOfUnityPowers () |
| |
| uint64_t | GetRootOfUnityPower (size_t i) |
| |
| AlignedVector64< uint64_t > & | GetPrecon64InvRootOfUnityPowers () |
| |
| uint64_t * | GetPrecon64InvRootOfUnityPowersPtr () |
| |
| AlignedVector64< uint64_t > & | GetPrecon52InvRootOfUnityPowers () |
| |
| uint64_t * | GetPrecon52InvRootOfUnityPowersPtr () |
| |
| AlignedVector64< uint64_t > & | GetInvRootOfUnityPowers () |
| |
| uint64_t * | GetInvRootOfUnityPowersPtr () |
| |
| uint64_t | GetInvRootOfUnityPower (size_t i) |
| |
| void | ComputeForward (uint64_t *result, const uint64_t *operand, uint64_t input_mod_factor, uint64_t output_mod_factor) |
| |
| void | ComputeInverse (uint64_t *result, const uint64_t *operand, uint64_t input_mod_factor, uint64_t output_mod_factor) |
| |
| hetest::utils::NTT::NTTImpl::NTTImpl |
( |
uint64_t |
degree, |
|
|
uint64_t |
q, |
|
|
uint64_t |
root_of_unity, |
|
|
std::shared_ptr< AllocatorBase > |
alloc_ptr = {} |
|
) |
| |
| hetest::utils::NTT::NTTImpl::NTTImpl |
( |
uint64_t |
degree, |
|
|
uint64_t |
q, |
|
|
std::shared_ptr< AllocatorBase > |
alloc_ptr = {} |
|
) |
| |
| hetest::utils::NTT::NTTImpl::~NTTImpl |
( |
| ) |
|
|
default |
| void hetest::utils::NTT::NTTImpl::ComputeForward |
( |
uint64_t * |
result, |
|
|
const uint64_t * |
operand, |
|
|
uint64_t |
input_mod_factor, |
|
|
uint64_t |
output_mod_factor |
|
) |
| |
| void hetest::utils::NTT::NTTImpl::ComputeInverse |
( |
uint64_t * |
result, |
|
|
const uint64_t * |
operand, |
|
|
uint64_t |
input_mod_factor, |
|
|
uint64_t |
output_mod_factor |
|
) |
| |
| uint64_t hetest::utils::NTT::NTTImpl::GetDegree |
( |
| ) |
const |
|
inline |
| uint64_t hetest::utils::NTT::NTTImpl::GetInvRootOfUnityPower |
( |
size_t |
i | ) |
|
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetInvRootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetInvRootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| uint64_t hetest::utils::NTT::NTTImpl::GetMinimalRootOfUnity |
( |
| ) |
const |
|
inline |
| uint64_t hetest::utils::NTT::NTTImpl::GetModulus |
( |
| ) |
const |
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetPrecon52InvRootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetPrecon52InvRootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetPrecon52RootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetPrecon52RootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetPrecon64InvRootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetPrecon64InvRootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetPrecon64RootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetPrecon64RootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| uint64_t hetest::utils::NTT::NTTImpl::GetRootOfUnityPower |
( |
size_t |
i | ) |
|
|
inline |
| AlignedVector64<uint64_t>& hetest::utils::NTT::NTTImpl::GetRootOfUnityPowers |
( |
| ) |
|
|
inline |
| uint64_t* hetest::utils::NTT::NTTImpl::GetRootOfUnityPowersPtr |
( |
| ) |
|
|
inline |
| const size_t hetest::utils::NTT::NTTImpl::s_default_shift_bits {64} |
|
static |
| const size_t hetest::utils::NTT::NTTImpl::s_ifma_shift_bits {52} |
|
static |
| const size_t hetest::utils::NTT::NTTImpl::s_max_degree_bits {20} |
|
static |
| const size_t hetest::utils::NTT::NTTImpl::s_max_fwd_ifma_modulus {1ULL << (s_ifma_shift_bits - 2)} |
|
static |
| const size_t hetest::utils::NTT::NTTImpl::s_max_inv_ifma_modulus {1ULL << (s_ifma_shift_bits - 1)} |
|
static |
| const size_t hetest::utils::NTT::NTTImpl::s_max_modulus_bits {62} |
|
static |
The documentation for this class was generated from the following files: