LatNet Builder Manual
2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
|
Tools for streaming and poor man's factorization. More...
Namespaces | |
LatBuilder | |
LatBuilder namespace. | |
Functions | |
template<typename T > | |
T | LatBuilder::intPow (T base, unsigned long exponent) |
Integer exponentiation. More... | |
Polynomial | LatBuilder::PolynomialFromInt (uInteger x) |
convert Integer to polynomial More... | |
uInteger | LatBuilder::IndexOfPolynomial (Polynomial P) |
convert polynomial to integer More... | |
template<typename T > | |
T | LatBuilder::modularPow (T base, uInteger exponent, T modulus) |
Modular exponentiation. More... | |
std::vector< uInteger > | LatBuilder::primeFactors (uInteger n, bool raise=false) |
Prime factorization using the naive "trial division" algorithm. More... | |
std::map< uInteger, uInteger > | LatBuilder::primeFactorsMap (uInteger n) |
Prime factorization using the naive "trial division" algorithm. More... | |
std::pair< long long, long long > | LatBuilder::egcd (uInteger a, uInteger b) |
Extended Euclidian algorithm. More... | |
uInteger | LatBuilder::Vm (const Polynomial &h, const Polynomial &P) |
computes The integer \(2^{\deg(P)}\nu_m(\frac{h} {p}) \) where \(\nu_{m}\) is the mapping \(\nu_{m} : \mathbb{L}_{2} \rightarrow \mathbb{R} \) \[ \nu_{m}(\sum_{l=\omega}^{\infty} x_{l} z^{-l}) = \sum_{l=\max(\omega,1)}^{m} x_{l} 2^{-l} \] More... | |
uInteger | LatBuilder::log2Int (unsigned int n) |
std::string | LatBuilder::getDefaultPolynomial (unsigned int degree) |
Returns a default polynomial of degree degree . More... | |
std::string | LatBuilder::to_string (LatticeType LT) |
Tools for streaming and poor man's factorization.