CoCoALib-0.9905 date: 23 May 2007

CoCoA::geobucket::bucket Class Reference

used only in geobuckets More...

#include <geobucket.H>

List of all members.

Dirty functions for efficiency

void MoveLM (bucket &b1, bucket &b2)
 b1 += LM(b2); b2 -= LM(b2)
void MoveLM (const SparsePolyRing &, bucket &b1, bucket &b2)
 b1 += LM(b2); b2 -= LM(b2)

Public Member Functions

 bucket (const SparsePolyRing &, std::size_t MaxLen)
 bucket (const bucket &)
 copy constructor to use C++ vectors of buckets
 ~bucket ()


class geobucket
bool IsZero (const bucket &b)
RingElem content (const bucket &b)
ConstRefRingElem poly (bucket &b)
 it normalizes the bucket and returns a reference to the polynomial
Friends functions on geobuckets
ConstRefPPMonoidElem LPP (const geobucket &gbk)
void AddClear (RefRingElem f, geobucket &gbk)
void ReductionStep (geobucket &gbk, ConstRefRingElem f, std::size_t RedLen)
void MoveLM (RefRingElem f, geobucket &gbk)
std::ostream & operator<< (std::ostream &out, const geobucket &g)
void PrintLengths (std::ostream &out, const geobucket &g)

Detailed Description

used only in geobuckets

A bucket represents a polynomial as a product of a polynomial and a coefficient.

The coeffient factor is used for fast multiplication of a geobucket by a coefficient and it comes useful in the reduction process over a field of fraction of a GCD ring.

We normalize the bucket only when it is necessary: e.g. to compute a reference to the LC of the bucket.

All methods are private (to be used only by geobuckets)


Definition at line 76 of file geobucket.H.

Constructor & Destructor Documentation

CoCoA::geobucket::bucket::bucket const SparsePolyRing ,
std::size_t  MaxLen

CoCoA::geobucket::bucket::bucket const bucket  ) 

copy constructor to use C++ vectors of buckets

CoCoA::geobucket::bucket::~bucket  ) 

Friends And Related Function Documentation

friend class geobucket [friend]

Definition at line 78 of file geobucket.H.

bool IsZero const bucket b  )  [friend]

Definition at line 196 of file geobucket.H.

RingElem content const bucket b  )  [friend]

ConstRefRingElem poly bucket b  )  [friend]

it normalizes the bucket and returns a reference to the polynomial

void MoveLM bucket b1,
bucket b2

b1 += LM(b2); b2 -= LM(b2)

void MoveLM const SparsePolyRing ,
bucket b1,
bucket b2

b1 += LM(b2); b2 -= LM(b2)

  • it assumes LPP(b1)<LPP(b2)
  • b1 and b2 will be normalized

ConstRefPPMonoidElem LPP const geobucket gbk  )  [friend]

Definition at line 202 of file geobucket.H.

void AddClear RefRingElem  f,
geobucket gbk

void ReductionStep geobucket gbk,
ConstRefRingElem  f,
std::size_t  RedLen

void MoveLM RefRingElem  f,
geobucket gbk

std::ostream& operator<< std::ostream &  out,
const geobucket g

void PrintLengths std::ostream &  out,
const geobucket g

The documentation for this class was generated from the following file:
Generated on Wed May 23 13:46:19 2007 for CoCoALib by  doxygen 1.4.6