Hypercomplex
Abstract & fast header-only C++ template library for lattice-based cryptosystems in high-dimensional algebras
|
#include "./Hypercomplex.hpp"
Go to the source code of this file.
Classes | |
class | Hypercomplex< mpfr_t, dim > |
Functions | |
uint64_t | get_mpfr_precision () |
Getter for the global precision of the MPFR variables. More... | |
void | set_mpfr_precision (uint64_t n) |
Setter for the global precision of the MPFR variables. More... | |
void | clear_mpfr_memory () |
Wrapper for MPFR memory cleanup. | |
template<const uint64_t dim> | |
bool | operator== (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Equality operator. More... | |
template<const uint64_t dim> | |
bool | operator!= (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Inequality operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | operator+ (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Addition operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | operator- (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Subtraction operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | operator* (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Multiplication operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | operator^ (const Hypercomplex< mpfr_t, dim > &H, const uint64_t x) |
Power operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | operator/ (const Hypercomplex< mpfr_t, dim > &H1, const Hypercomplex< mpfr_t, dim > &H2) |
Division operator. More... | |
template<const uint64_t dim> | |
std::ostream & | operator<< (std::ostream &os, const Hypercomplex< mpfr_t, dim > &H) |
Print operator. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | Re (const Hypercomplex< mpfr_t, dim > &H) |
Real part of a hypercomplex number. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | Im (const Hypercomplex< mpfr_t, dim > &H) |
Imaginary part of a hypercomplex number. More... | |
template<const uint64_t dim> | |
Hypercomplex< mpfr_t, dim > | exp (const Hypercomplex< mpfr_t, dim > &H) |
Exponentiation operation on a hypercomplex number. More... | |
Hypercomplex< mpfr_t, dim > exp | ( | const Hypercomplex< mpfr_t, dim > & | H | ) |
Exponentiation operation on a hypercomplex number.
[in] | H | existing class instance |
uint64_t get_mpfr_precision | ( | ) |
Getter for the global precision of the MPFR variables.
Hypercomplex< mpfr_t, dim > Im | ( | const Hypercomplex< mpfr_t, dim > & | H | ) |
Imaginary part of a hypercomplex number.
[in] | H | existing class instance |
bool operator!= | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Inequality operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
Hypercomplex< mpfr_t, dim > operator* | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Multiplication operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
Hypercomplex< mpfr_t, dim > operator+ | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Addition operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
Hypercomplex< mpfr_t, dim > operator- | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Subtraction operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
Hypercomplex< mpfr_t, dim > operator/ | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Division operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
std::ostream & operator<< | ( | std::ostream & | os, |
const Hypercomplex< mpfr_t, dim > & | H | ||
) |
Print operator.
[in,out] | os | output stream |
[in] | H | existing class instance |
bool operator== | ( | const Hypercomplex< mpfr_t, dim > & | H1, |
const Hypercomplex< mpfr_t, dim > & | H2 | ||
) |
Equality operator.
[in] | H1 | LHS operand |
[in] | H2 | RHS operand |
Hypercomplex< mpfr_t, dim > operator^ | ( | const Hypercomplex< mpfr_t, dim > & | H, |
const uint64_t | x | ||
) |
Power operator.
[in] | H | LHS operand |
[in] | x | RHS operand |
Hypercomplex< mpfr_t, dim > Re | ( | const Hypercomplex< mpfr_t, dim > & | H | ) |
Real part of a hypercomplex number.
[in] | H | existing class instance |
void set_mpfr_precision | ( | uint64_t | n | ) |
Setter for the global precision of the MPFR variables.
[in] | n | positive integer (precision in bits) |