F4
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::AvlMonomial Class Reference

Represent an avl of pair (number of a monomial, is leading monomial). More...

#include <avl-monomial.h>

Public Member Functions

 AvlMonomial ()
 Constructor.
 
void printAvlMonomial (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 numMon, bool lt)
 If numMon if already in the AVL, update its lt flag, otherwise insert a new node. More...
 
NodeAvlMonomialfindBiggest ()
 Find the biggest NodeAvlMonomial of the AVL. More...
 
NodeAvlMonomial const * findBiggest () const
 Find the biggest NodeAvlMonomial of the AVL. More...
 
NodeAvlMonomialfindNextBiggest (NodeAvlMonomial *node)
 Find the next biggest NodeAvlMonomial after node. More...
 
NodeAvlMonomial const * findNextBiggest (NodeAvlMonomial const *node) const
 Find the next biggest NodeAvlMonomial after node. More...
 

Private Attributes

DynamicArray< NodeAvlMonomial_array
 
NodeAvlMonomial_it
 
NodeAvlMonomial_root
 
size_t _size
 

Detailed Description

Represent an avl of pair (number of a monomial, is leading monomial).

Definition at line 78 of file avl-monomial.h.

Member Function Documentation

NodeAvlMonomial* F4::AvlMonomial::findBiggest ( )

Find the biggest NodeAvlMonomial of the AVL.

Returns
Pointer on the biggest node.
NodeAvlMonomial const* F4::AvlMonomial::findBiggest ( ) const

Find the biggest NodeAvlMonomial of the AVL.

Returns
Pointer on the biggest node.
NodeAvlMonomial* F4::AvlMonomial::findNextBiggest ( NodeAvlMonomial node)

Find the next biggest NodeAvlMonomial after node.

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

Find the next biggest NodeAvlMonomial after node.

Parameters
nodePointer on a node.
Returns
Pointer on the next biggest NodeAvlMonomial after node.
int F4::AvlMonomial::insert ( int  numMon,
bool  lt 
)

If numMon if already in the AVL, update its lt flag, otherwise insert a new node.

Parameters
numMonNumber of a monomial.
lttrue if numMon is a leading monomial, false otherwise.
Returns
0 if a new NodeAvlMonomial is created.
1 if the monomial already exist.
2 if the monomial already exist but was not a leading term. In this case its lt flag is set to 1.
void F4::AvlMonomial::printAvlMonomial ( std::ostream &  stream) const

Print the AVL.

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

Get the number of element in the AVL.

Returns
Number of element in the AVL.

Member Data Documentation

DynamicArray<NodeAvlMonomial> F4::AvlMonomial::_array
private

Dynamic array of NodeAvlMonomial.

Definition at line 151 of file avl-monomial.h.

NodeAvlMonomial* F4::AvlMonomial::_it
private

Iterator.

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

NodeAvlMonomial* F4::AvlMonomial::_root
private

Root of the AVL.

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

size_t F4::AvlMonomial::_size
private

Number of node in the AVL.

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


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