PolyBoRi
|
This class adds order-related functionality to BooleRing. More...
#include <BoolePolyRing.h>
Public Types | |
typedef BoolePolyRing | self |
generic access to current type | |
typedef BooleRing | base |
generic access to base type | |
typedef BooleExponent | exp_type |
define exponent type | |
typedef BooleMonomial | monom_type |
set monomial type | |
typedef std::vector< idx_type > | block_idx_type |
Type for block indices. | |
typedef block_idx_type::const_iterator | block_iterator |
Type for block iterators. | |
typedef CDynamicOrderBase | order_type |
Type for handling mterm orderings. | |
typedef boost::shared_ptr < order_type > | order_ptr |
Smart pointer for handling mterm orderings. | |
typedef order_type & | order_reference |
Reference for handling mterm orderings. | |
![]() | |
typedef BooleRing | self |
generic access to current type | |
typedef CTypes::orderenums_type | base |
generic access to base type | |
enum | ordercodes |
Explicitely mention ordercodes' enumeration. More... | |
typedef CTypes::ordercode_type | ordercode_type |
typedef CTypes::manager_type | manager_type |
typedef CTypes::manager_reference | manager_reference |
typedef CTypes::manager_ptr | manager_ptr |
typedef CTypes::dd_type | dd_type |
typedef CTypes::vartext_type | vartext_type |
![]() | |
enum | ordercodes { lp, dlex, dp_asc, block_dlex, block_dp_asc } |
Codes For orderings. More... | |
![]() | |
enum | comparecodes { less_than = -1, equality = 0, greater_than = +1, less_or_equal_max = 0, greater_or_equal_min = 0 } |
Comparision codes enumeration. More... | |
enum | { max_idx = CUDD_MAXINDEX } |
![]() | |
typedef bool | bool_type |
Type for standard true/false statements. | |
typedef unsigned int | size_type |
Type for lengths, dimensions, etc. | |
typedef int | integer_type |
Type for integer numbers. | |
typedef int | idx_type |
Type for indices. | |
typedef std::size_t | hash_type |
Type for hashing. | |
typedef unsigned int | errornum_type |
Type used to store error codes. | |
typedef int | comp_type |
Type for comparisons. | |
typedef int | ordercode_type |
Type for ordering codes. | |
typedef const char * | errortext_type |
Type used to verbose error information. | |
typedef std::ostream | ostream_type |
Type for out-stream. | |
typedef const char * | vartext_type |
Type for setting/getting names of variables. |
Public Member Functions | |
BoolePolyRing (size_type nvars=100, ordercode_type order=lp, bool_type make_active=true) | |
Constructor for nvars variables. | |
~BoolePolyRing () | |
destructor | |
void | activate () |
Make this global ring. | |
void | changeOrdering (ordercode_type) |
Change order of current ring. | |
idx_type | lastBlockStart () |
order_reference | ordering () const |
Access ordering of *this. | |
![]() | |
BooleRing (size_type nvars=100) | |
Constructor for nvars variables. | |
BooleRing (const manager_type &mgr) | |
~BooleRing () | |
destructor | |
manager_type & | manager () |
Access to decision diagram manager. | |
const manager_type & | manager () const |
Constant access to decision diagram manager. | |
dd_type | ddVariable (idx_type nvar) const |
Access nvar-th variable of decision diagram manager. | |
dd_type | variable (idx_type nvar) const |
Access nvar-th ring variable. | |
dd_type | persistentVariable (idx_type nvar) const |
Access nvar-th ring variable. | |
dd_type | zero () const |
Get empty decision diagram. | |
dd_type | one () const |
Get decision diagram with all variables negated. | |
size_type | nVariables () const |
Get number of ring variables. | |
void | clearCache () |
Clears the function cache. | |
void | printInfo () |
Print out statistics and settings for current ring. |
Protected Attributes | |
order_ptr | pOrder |
*Ordering of *this | |
![]() | |
manager_type | m_mgr |
Interprete m_mgr as structure of Boolean polynomial ring. |
This class adds order-related functionality to BooleRing.
generic access to base type
typedef std::vector<idx_type> polybori::BoolePolyRing::block_idx_type |
Type for block indices.
typedef block_idx_type::const_iterator polybori::BoolePolyRing::block_iterator |
Type for block iterators.
define exponent type
set monomial type
typedef boost::shared_ptr< order_type > polybori::BoolePolyRing::order_ptr |
Smart pointer for handling mterm orderings.
Reference for handling mterm orderings.
typedef CDynamicOrderBase polybori::BoolePolyRing::order_type |
Type for handling mterm orderings.
generic access to current type
polybori::BoolePolyRing::BoolePolyRing | ( | size_type | nvars = 100 , |
ordercode_type | order = lp , |
||
bool_type | make_active = true |
||
) |
Constructor for nvars variables.
References activate(), and PBORI_TRACE_FUNC.
|
inline |
destructor
void polybori::BoolePolyRing::activate | ( | ) |
Make this global ring.
References PBORI_TRACE_FUNC, and polybori::BooleEnv::set().
Referenced by BoolePolyRing().
void polybori::BoolePolyRing::changeOrdering | ( | ordercode_type | order | ) |
Change order of current ring.
References PBORI_TRACE_FUNC, and pOrder.
|
inline |
Referenced by polybori::BooleEnv::lastBlockStart(), and polybori::groebner::red_tail_in_last_block().
|
inline |
Access ordering of *this.
|
protected |
*Ordering of *this
Referenced by changeOrdering().