Polynomials over GF(q)[x], where q=2^m, m=1,...,16. More...
#include <itpp/comm/galois.h>
Public Member Functions | |
GFX () | |
Constructor. | |
GFX (int qvalue) | |
Constructor. | |
GFX (int qvalue, int indegree) | |
Constructor. | |
GFX (int qvalue, const ivec &invalues) | |
Constructor. | |
GFX (int qvalue, char *invalues) | |
Constructor. | |
GFX (int qvalue, std::string invalues) | |
Constructor. | |
GFX (const GFX &ingfx) | |
Copy constructor. | |
int | get_size () const |
Return q. | |
int | get_degree () const |
Return degree of GF(q)[x]. | |
void | set_degree (int indegree, bool copy=false) |
Resize the polynomial to the given indegree . If copy is set to true, the old polynomial's coefficients are kept in the new polynomial, otherwise they are set to zero. | |
int | get_true_degree () const |
Return true degree of GF(q)[x]. | |
void | set (int qvalue, const char *invalues) |
Set the GF(q)[x] polynomial. | |
void | set (int qvalue, const std::string invalues) |
Set the GF(q)[x] polynomial. | |
void | set (int qvalue, const ivec &invalues) |
Set the GF(q)[x] polynomial. | |
void | clear () |
Set all coefficients to zero. | |
GF | operator[] (int index) const |
Acces to individual element in the GF(q)[x] polynomial. | |
GF & | operator[] (int index) |
Acces to individual element in the GF(q)[x] polynomial. | |
void | operator= (const GFX &ingfx) |
Copy. | |
void | operator+= (const GFX &ingfx) |
sum of two GF(q)[x] | |
GFX | operator+ (const GFX &ingfx) const |
sum of two GF(q)[x] | |
void | operator-= (const GFX &ingfx) |
Difference of two GF(q), same as sum for q=2^m. | |
GFX | operator- (const GFX &ingfx) const |
Difference of two GF(q), same as sum for q=2^m. | |
void | operator*= (const GFX &ingfx) |
product of two GF(q)[x] | |
GFX | operator* (const GFX &ingfx) const |
product of two GF(q)[x] | |
GF | operator() (const GF &ingf) |
Evaluate polynom at alpha^inexp. | |
Friends | |
ITPP_EXPORT friend GFX | operator* (const GF &ingf, const GFX &ingfx) |
Multiply a GF element with a GF(q)[x]. | |
ITPP_EXPORT friend GFX | operator* (const GFX &ingfx, const GF &ingf) |
Multiply a GF(q)[x] with a GF element. | |
ITPP_EXPORT friend GFX | operator/ (const GFX &ingfx, const GF &ingf) |
Divide a GF(q)[x] with a GF element. | |
ITPP_EXPORT friend std::ostream & | operator<< (std::ostream &os, const GFX &ingfx) |
Output stream. | |
Related Symbols | |
(Note that these are not member symbols.) | |
ITPP_EXPORT GFX | divgfx (const GFX &c, const GFX &g) |
Int division of GF[q](x) polynomials: m(x) = c(x)/g(x). | |
ITPP_EXPORT GFX | modgfx (const GFX &a, const GFX &b) |
Function that performs int division of gf[q](x) polynomials (a(x)/g(x)) and returns the reminder. | |
|
inline |
Constructor.
Definition at line 418 of file galois.h.
References it_assert_debug, and itpp::Array< T >::set_size().
|
inline |
|
inline |
|
inline |
Resize the polynomial to the given indegree
. If copy
is set to true, the old polynomial's coefficients are kept in the new polynomial, otherwise they are set to zero.
Definition at line 459 of file galois.h.
References it_assert_debug, and itpp::Array< T >::set_size().
|
inline |
Return true degree of GF(q)[x].
Definition at line 466 of file galois.h.
Referenced by itpp::BCH::BCH(), divgfx(), itpp::formal_derivate(), and modgfx().
Set the GF(q)[x] polynomial.
Definition at line 408 of file galois.h.
References set().
Referenced by itpp::BCH::BCH(), itpp::BCH::BCH(), GFX(), GFX(), GFX(), itpp::Reed_Solomon::Reed_Solomon(), set(), and set().
Set the GF(q)[x] polynomial.
Definition at line 398 of file galois.h.
References it_assert_debug, itpp::Array< T >::set_size(), and itpp::Array< T >::size().
|
inline |
Acces to individual element in the GF(q)[x] polynomial.
Definition at line 211 of file galois.h.
References it_assert_debug.
Acces to individual element in the GF(q)[x] polynomial.
Definition at line 216 of file galois.h.
References it_assert_debug.
sum of two GF(q)[x]
Definition at line 491 of file galois.h.
References it_assert_debug, itpp::Array< T >::set_size(), and itpp::Array< T >::size().
product of two GF(q)[x]
Definition at line 522 of file galois.h.
References it_assert_debug, itpp::Array< T >::set_size(), and itpp::Array< T >::size().
Evaluate polynom at alpha^inexp.
Definition at line 566 of file galois.h.
References it_assert_debug.
|
friend |
Int division of GF[q](x) polynomials: m(x) = c(x)/g(x).
The reminder r(x) is not returned by this function.
Definition at line 157 of file galois.cpp.
References get_true_degree().
Function that performs int division of gf[q](x) polynomials (a(x)/g(x)) and returns the reminder.
Definition at line 183 of file galois.cpp.
References get_true_degree().
Generated on Mon Jun 10 2024 11:49:35 for IT++ by Doxygen 1.9.8