polybori::COrderBase Class Reference

This class defines ordering related functions. More...

#include <COrderBase.h>

Inheritance diagram for polybori::COrderBase:

polybori::CAuxTypes polybori::BlockDegLexOrder polybori::BlockDegRevLexAscOrder polybori::DegLexOrder polybori::DegRevLexAscOrder polybori::LexOrder

List of all members.

Public Types

typedef COrderBase base
 current type should used as base only
typedef BoolePolynomial poly_type
 Type of Boolean polynomials.
typedef poly_type::size_type size_type
 Type for sizes.
typedef poly_type::idx_type idx_type
 Type for indices.
typedef BooleMonomial monom_type
 Type of Boolean monomials.
typedef BoolePolynomial::navigator navigator
typedef COrderedIter
< navigator, monom_type
indirect_iterator
typedef BooleSet set_type
 Type of Boolean sets.
typedef BooleExponent exp_type
 Type of Boolean monomials.
typedef COrderedIter
< navigator, exp_type
indirect_exp_iterator
typedef std::vector< idx_typeblock_idx_type
 Type for block indices.
typedef
block_idx_type::const_iterator 
block_iterator
 Type for block iterators.
define generic property markers (default is invalid)
typedef invalid_tag lex_property
typedef invalid_tag ordered_property
typedef invalid_tag symmetry_property
typedef invalid_tag degorder_property
typedef invalid_tag blockorder_property
typedef invalid_tag degrevlexorder_property
typedef invalid_tag totaldegorder_property
typedef invalid_tag ascending_property
typedef invalid_tag descending_property

Public Member Functions

 COrderBase ()
 Default Constructor.
 COrderBase (const COrderBase &)
 Copy Constructor.
virtual ~COrderBase ()
 Destructor.
virtual comp_type compare (idx_type, idx_type) const =0
 Comparison of indices corresponding to variables.
virtual comp_type compare (const monom_type &, const monom_type &) const =0
 Comparison of monomials.
virtual comp_type compare (const exp_type &, const exp_type &) const =0
 Comparison of exponent vectors.
virtual monom_type lead (const poly_type &) const =0
 Get leading term.
virtual monom_type lead (const poly_type &, size_type) const =0
 Get leading term (using an upper bound).
virtual exp_type leadExp (const poly_type &) const =0
 Get leading exponent.
virtual exp_type leadExp (const poly_type &, size_type) const =0
 Get leading exponent (using an upper bound).
virtual indirect_iterator leadIteratorBegin (const poly_type &) const =0
 Initialize iterator corresponding to leading term.
virtual indirect_iterator leadIteratorEnd () const =0
virtual indirect_exp_iterator leadExpIteratorBegin (const poly_type &) const =0
virtual indirect_exp_iterator leadExpIteratorEnd () const =0
interface for block orderings
virtual block_iterator blockBegin () const
virtual block_iterator blockEnd () const
virtual void appendBlock (idx_type) const
virtual void clearBlocks () const

Protected Member Functions

monom_type monom (const set_type &rhs) const
 Get monomial from set of subsets of Boolean variables (internal use only).


Detailed Description

This class defines ordering related functions.

Member Typedef Documentation

Reimplemented in polybori::DegRevLexAscOrder.

current type should used as base only

Type for block indices.

typedef block_idx_type::const_iterator polybori::COrderBase::block_iterator

Type for block iterators.

Reimplemented in polybori::DegRevLexAscOrder.

Type of Boolean monomials.

Type for indices.

Reimplemented from polybori::CAuxTypes.

Reimplemented in polybori::LexOrder.

Type of Boolean monomials.

Reimplemented in polybori::LexOrder.

Type of Boolean polynomials.

Type of Boolean sets.

Type for sizes.

Reimplemented from polybori::CAuxTypes.


Constructor & Destructor Documentation

polybori::COrderBase::COrderBase (  )  [inline]

Default Constructor.

polybori::COrderBase::COrderBase ( const COrderBase  )  [inline]

Copy Constructor.

virtual polybori::COrderBase::~COrderBase (  )  [inline, virtual]

Destructor.


Member Function Documentation

virtual void polybori::COrderBase::appendBlock ( idx_type   )  const [inline, virtual]

virtual block_iterator polybori::COrderBase::blockBegin (  )  const [inline, virtual]

virtual block_iterator polybori::COrderBase::blockEnd (  )  const [inline, virtual]

virtual void polybori::COrderBase::clearBlocks (  )  const [inline, virtual]

virtual comp_type polybori::COrderBase::compare ( const exp_type ,
const exp_type  
) const [pure virtual]

virtual comp_type polybori::COrderBase::compare ( const monom_type ,
const monom_type  
) const [pure virtual]

virtual comp_type polybori::COrderBase::compare ( idx_type  ,
idx_type   
) const [pure virtual]

virtual monom_type polybori::COrderBase::lead ( const poly_type ,
size_type   
) const [pure virtual]

virtual monom_type polybori::COrderBase::lead ( const poly_type  )  const [pure virtual]

virtual exp_type polybori::COrderBase::leadExp ( const poly_type ,
size_type   
) const [pure virtual]

virtual exp_type polybori::COrderBase::leadExp ( const poly_type  )  const [pure virtual]

virtual indirect_exp_iterator polybori::COrderBase::leadExpIteratorBegin ( const poly_type  )  const [pure virtual]

virtual indirect_exp_iterator polybori::COrderBase::leadExpIteratorEnd (  )  const [pure virtual]

virtual indirect_iterator polybori::COrderBase::leadIteratorBegin ( const poly_type  )  const [pure virtual]

virtual indirect_iterator polybori::COrderBase::leadIteratorEnd (  )  const [pure virtual]

monom_type polybori::COrderBase::monom ( const set_type rhs  )  const [inline, protected]

Get monomial from set of subsets of Boolean variables (internal use only).

Referenced by polybori::DegRevLexAscOrder::lead(), polybori::DegLexOrder::lead(), polybori::BlockDegRevLexAscOrder::lead(), and polybori::BlockDegLexOrder::lead().


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

Generated on Mon Jul 13 21:15:54 2009 for PolyBoRi by  doxygen 1.5.9