Field of Polynomials with binairy coefficents and fixed reduction polynomial. More...
#include <stdexcept>
#include <libecc/bitset.h>
#include <libecc/debug.h>
#include <libecc/square.hcc>
Go to the source code of this file.
Classes | |
class | libecc::polynomial< m, k, k1, k2 > |
Polynomial representation of the Galois field F2m. More... | |
Namespaces | |
namespace | libecc |
Namespace for libecc. | |
Functions | |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
polynomial< m, k, k1, k2 > | libecc::operator* (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
polynomial< m, k, k1, k2 > | libecc::operator/ (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
bool | libecc::operator== (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
bool | libecc::operator!= (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
std::ostream & | libecc::operator<< (std::ostream &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
polynomial< m, k, k1, k2 > ::xor_type | libecc::operator+ (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
template<unsigned int m, unsigned int k, unsigned int k1, unsigned int k2> | |
polynomial< m, k, k1, k2 > ::xor_type | libecc::operator- (polynomial< m, k, k1, k2 > const &, polynomial< m, k, k1, k2 > const &) |
Field of Polynomials with binairy coefficents and fixed reduction polynomial.
This header file declares the type libecc::polynomial<m, k, k1, k2>
, representing the polynomials with binary coefficients, of a finite extension field with fixed degree m
and reduction pentanomial tm + tk + tk1 + tk2 + 1 = 0
or, when k1 == 0
, trinomial tm + tk + 1 = 0
.