OPENF4
Library for Gröebner basis computations over finite fields.
 All Classes Namespaces Files Functions Variables Friends Pages
Public Member Functions | Private Attributes | List of all members
F4::AvlPolynomial Class Reference

Represent an avl of triple (number of a polynomial, number of its leading monomial, number of terms). More...

#include <avl-polynomial.h>

Public Member Functions

 AvlPolynomial ()
 Constructor.
 
void printAvlPolynomial (std::ostream &stream) const
 Print the AVL. More...
 
void reset ()
 Reset the AVL for a new usage, memory is not clear.
 
size_t size () const
 Get the number of element in the AVL. More...
 
int insert (int numPol, int numMon, int nbTerms)
 Insert a new polynomial into the AVL. More...
 
NodeAvlPolynomialfindBiggest ()
 Find the biggest node of the AVL. More...
 
NodeAvlPolynomial const * findBiggest () const
 Find the biggest node of the AVL. More...
 
NodeAvlPolynomialfindNextBiggest (NodeAvlPolynomial *node)
 Find the next biggest node after node. More...
 
NodeAvlPolynomial const * findNextBiggest (NodeAvlPolynomial const *node) const
 Find the next biggest node after node. More...
 

Private Attributes

DynamicArray< NodeAvlPolynomial_array
 
NodeAvlPolynomial_it
 
NodeAvlPolynomial_root
 
size_t _size
 

Detailed Description

Represent an avl of triple (number of a polynomial, number of its leading monomial, number of terms).

Definition at line 79 of file avl-polynomial.h.

Member Function Documentation

NodeAvlPolynomial* F4::AvlPolynomial::findBiggest ( )

Find the biggest node of the AVL.

Returns
Pointer on the biggest node.
NodeAvlPolynomial const* F4::AvlPolynomial::findBiggest ( ) const

Find the biggest node of the AVL.

Returns
Pointer on the biggest node.
NodeAvlPolynomial* F4::AvlPolynomial::findNextBiggest ( NodeAvlPolynomial node)

Find the next biggest node after node.

Parameters
nodePointer on a node.
Returns
Pointer on the next biggest node after node.
NodeAvlPolynomial const* F4::AvlPolynomial::findNextBiggest ( NodeAvlPolynomial const *  node) const

Find the next biggest node after node.

Parameters
nodePointer on a node.
Returns
Pointer on the next biggest node after node.
int F4::AvlPolynomial::insert ( int  numPol,
int  numMon,
int  nbTerms 
)

Insert a new polynomial into the AVL.

Parameters
numPolIndex of the polynomial.
numMonNumber of a monomial.
nbTermsNumber of term of the polynomial.
Returns
0 if a new polynomial is created.
1 if the polynomial already exist.
void F4::AvlPolynomial::printAvlPolynomial ( std::ostream &  stream) const

Print the AVL.

Parameters
streamStream.
size_t F4::AvlPolynomial::size ( ) const

Get the number of element in the AVL.

Returns
Number of element in the AVL.

Member Data Documentation

DynamicArray<NodeAvlPolynomial> F4::AvlPolynomial::_array
private

Dynamic array of NodeAvlPolynomial.

Definition at line 152 of file avl-polynomial.h.

NodeAvlPolynomial* F4::AvlPolynomial::_it
private

Iterator.

Definition at line 153 of file avl-polynomial.h.

NodeAvlPolynomial* F4::AvlPolynomial::_root
private

Root of the AVL.

Definition at line 154 of file avl-polynomial.h.

size_t F4::AvlPolynomial::_size
private

Number of node in the AVL.

Definition at line 155 of file avl-polynomial.h.


The documentation for this class was generated from the following file: