Intel HEXL for FPGA
Intel Homomorphic Encryption FPGA Acceleration Library, accelerating the modular arithmetic operations used in homomorphic encryption.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
intt_int.h
Go to the documentation of this file.
1 // Copyright (C) 2020-2021 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 
4 #ifndef __INTT_INT_H__
5 #define __INTT_INT_H__
6 
7 #include <cstdint>
8 
9 namespace intel {
10 namespace hexl {
11 namespace fpga {
12 
17 void set_worksize_INTT_int(uint64_t n);
18 
32 void INTT_int(uint64_t* coeff_poly, const uint64_t* inv_root_of_unity_powers,
33  const uint64_t* precon_inv_root_of_unity_powers,
34  uint64_t coeff_modulus, uint64_t inv_n, uint64_t inv_n_w,
35  uint64_t n);
40 
41 bool INTTCompleted_int();
42 
43 } // namespace fpga
44 } // namespace hexl
45 } // namespace intel
46 
47 #endif
void INTT_int(uint64_t *coeff_poly, const uint64_t *inv_root_of_unity_powers, const uint64_t *precon_inv_root_of_unity_powers, uint64_t coeff_modulus, uint64_t inv_n, uint64_t inv_n_w, uint64_t n)
INTT Calls the Inverse Number Theoretic Transform
bool INTTCompleted_int()
INTTCompleted_int Called after the completion of the INTT operation. Internal implementation.
void set_worksize_INTT_int(uint64_t n)
set_worksize_INTT_int Internal implementation. Sets the work size of the INTT operation ...