![]() |
OPENF4
Library for Gröebner basis computations over finite fields.
|
Represent a tagged polynomial. More...
#include <tagged-polynomial.h>
Public Member Functions | |
| TaggedPolynomial () | |
| Constructor. | |
| TaggedPolynomial (Polynomial< Element > const &polynomial) | |
| Constructor. More... | |
| TaggedPolynomial (TaggedPolynomial const &taggedPolynomial) | |
| Copy Constructor. More... | |
| TaggedPolynomial (TaggedPolynomial &&taggedPolynomial) | |
| Move Constructor. More... | |
| Polynomial< Element > const & | getPolynomialConst () const |
| Get the polynomial of this. More... | |
| Polynomial< Element > & | getPolynomial () |
| Get the polynomial of this. More... | |
| void | setPolynomial (Polynomial< Element > &&polynomial) |
| Set the polynomial of this, but do not modify the simplyrules. More... | |
| const Term< Element > & | getLT () const |
| Get the leading term of this. More... | |
| int | getLM () const |
| Get the number of the leading monomial of this. More... | |
| Element | getLC () const |
| Get the leading coefficient of this. More... | |
| int | getNbTerm () const |
| Get the number of terms of this. More... | |
| int | getSimplyrule (int index) const |
| Get _simplyrules[i]. More... | |
| void | setSimplyrule (int index, int numPol) |
| Set _simplyrules[i]. More... | |
| NodeList< Element > * | getPolynomialBegin () |
| Get an iterator on the beginning of the polynomial. More... | |
| NodeList< Element > const * | getPolynomialBeginConst () const |
| Get a constant iterator on the beginning of the polynomial. More... | |
| void | printTaggedPolynomial (std::ostream &stream) const |
| Print the polynomial and the _simplyrules of this. | |
| int | compareTaggedPolynomial (TaggedPolynomial const &taggedPolynomial) const |
| Compare this with taggedPolynomial. More... | |
| bool | isEmpty () |
| Test if the polynomial is empty or not. More... | |
| void | resetSimplyrules () |
| Reset the simplyrules of this. | |
| void | setTaggedPolynomial (TaggedPolynomial const &taggedPolynomial, uint8_t const *varlist) |
| Set this = taggedPolynomial * monomial. Do not modify the simplyrules. More... | |
| TaggedPolynomial & | operator= (TaggedPolynomial const &taggedPolynomial) |
| Overload the operator =. More... | |
| TaggedPolynomial & | operator= (TaggedPolynomial &&taggedPolynomial) |
| Overload the move operator =. More... | |
| TaggedPolynomial & | operator= (Polynomial< Element > const &polynomial) |
| Overload the operator =. More... | |
| TaggedPolynomial & | operator= (Polynomial< Element > &&polynomial) |
| Overload the move operator =. More... | |
| TaggedPolynomial & | operator*= (Monomial const &monomial) |
| Overload the operator *= to multiply this with a monomial. More... | |
| TaggedPolynomial & | operator*= (Element element) |
| Overload the operator *= to multiply this with an Element. More... | |
| TaggedPolynomial & | operator*= (Term< Element > const &term) |
| Overload the operator *= to multiply this with a term. More... | |
Static Public Member Functions | |
| static void | setMonomialArray (MonomialArray *monomialArray) |
| Set the monomial array to use. More... | |
Private Attributes | |
| Polynomial< Element > | _polynomial |
| int * | _simplyrules |
Static Private Attributes | |
| static MonomialArray * | MONOMIAL_ARRAY |
Represent a tagged polynomial.
Definition at line 44 of file tagged-polynomial.h.
| F4::TaggedPolynomial< Element >::TaggedPolynomial | ( | Polynomial< Element > const & | polynomial | ) |
Constructor.
| polynomial | Polynomial. |
| F4::TaggedPolynomial< Element >::TaggedPolynomial | ( | TaggedPolynomial< Element > const & | taggedPolynomial | ) |
Copy Constructor.
| taggedPolynomial | TaggedPolynomial. |
| F4::TaggedPolynomial< Element >::TaggedPolynomial | ( | TaggedPolynomial< Element > && | taggedPolynomial | ) |
Move Constructor.
| taggedPolynomial | TaggedPolynomial. |
| int F4::TaggedPolynomial< Element >::compareTaggedPolynomial | ( | TaggedPolynomial< Element > const & | taggedPolynomial | ) | const |
Compare this with taggedPolynomial.
| taggedPolynomial | TaggedPolynomial. |
| Element F4::TaggedPolynomial< Element >::getLC | ( | ) | const |
Get the leading coefficient of this.
| int F4::TaggedPolynomial< Element >::getLM | ( | ) | const |
Get the number of the leading monomial of this.
| const Term<Element>& F4::TaggedPolynomial< Element >::getLT | ( | ) | const |
Get the leading term of this.
| int F4::TaggedPolynomial< Element >::getNbTerm | ( | ) | const |
Get the number of terms of this.
| Polynomial<Element>& F4::TaggedPolynomial< Element >::getPolynomial | ( | ) |
Get the polynomial of this.
| NodeList<Element>* F4::TaggedPolynomial< Element >::getPolynomialBegin | ( | ) |
Get an iterator on the beginning of the polynomial.
| NodeList<Element> const* F4::TaggedPolynomial< Element >::getPolynomialBeginConst | ( | ) | const |
Get a constant iterator on the beginning of the polynomial.
| Polynomial<Element> const& F4::TaggedPolynomial< Element >::getPolynomialConst | ( | ) | const |
Get the polynomial of this.
| int F4::TaggedPolynomial< Element >::getSimplyrule | ( | int | index | ) | const |
Get _simplyrules[i].
| index | Index of a variable in _simplyrules. |
| bool F4::TaggedPolynomial< Element >::isEmpty | ( | ) |
Test if the polynomial is empty or not.
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator*= | ( | Monomial const & | monomial | ) |
Overload the operator *= to multiply this with a monomial.
| mon | Monomial. |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator*= | ( | Element | element | ) |
Overload the operator *= to multiply this with an Element.
| element | Element. |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator*= | ( | Term< Element > const & | term | ) |
Overload the operator *= to multiply this with a term.
| term | Term. |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator= | ( | TaggedPolynomial< Element > const & | taggedPolynomial | ) |
Overload the operator =.
| taggedPolynomial | Tagged polynomial to copy. |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator= | ( | TaggedPolynomial< Element > && | taggedPolynomial | ) |
Overload the move operator =.
| taggedPolynomial | Tagged polynomial to move. |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator= | ( | Polynomial< Element > const & | polynomial | ) |
| TaggedPolynomial& F4::TaggedPolynomial< Element >::operator= | ( | Polynomial< Element > && | polynomial | ) |
|
static |
Set the monomial array to use.
| monomialArray | Address of the array. |
| void F4::TaggedPolynomial< Element >::setPolynomial | ( | Polynomial< Element > && | polynomial | ) |
Set the polynomial of this, but do not modify the simplyrules.
| Polynomial | to move. |
| void F4::TaggedPolynomial< Element >::setSimplyrule | ( | int | index, |
| int | numPol | ||
| ) |
Set _simplyrules[i].
| index | Index of a variable in _simplyrules. |
| numPol | Index of a tagged polynomial in a tagged polynomial Array. |
| void F4::TaggedPolynomial< Element >::setTaggedPolynomial | ( | TaggedPolynomial< Element > const & | taggedPolynomial, |
| uint8_t const * | varlist | ||
| ) |
Set this = taggedPolynomial * monomial. Do not modify the simplyrules.
| taggedPolynomial | TaggedPolynomial. |
| varlist | Array representing the degree of each variable of the monomial |
|
private |
Definition at line 252 of file tagged-polynomial.h.
|
private |
Array of integer, mainly used by the simplify algorithm. simplifyrules[i] is the index of a tagged polynomial of List.
Definition at line 253 of file tagged-polynomial.h.
|
staticprivate |
Pointer on a monomial array
Definition at line 255 of file tagged-polynomial.h.
1.8.6