PolyBoRi
|
This class defines LeadingTerms. More...
#include <LeadingTerms.h>
Public Member Functions | |
template<class Type > | |
LeadingTerms (const Type &rhs) | |
bool | isCompatible (const PolyEntry &) const |
![]() | |
TermsFacade (const Type &value) | |
Construct copy or MonomialSet from value. More... | |
void | update (const PolyEntry &entry) |
Insert data (polynomial or leading term) from entry. More... | |
![]() | |
BooleSet (const self &rhs) | |
Copy constructor. More... | |
BooleSet (const base &rhs) | |
Copy constructor. More... | |
BooleSet (idx_type idx, const self &first, const self &second) | |
Construct new node. More... | |
BooleSet (idx_type idx, navigator first, navigator second, const ring_type &ring) | |
Construct new node (using navigator nodes) More... | |
BooleSet (const ring_type &ring, node_ptr node) | |
Construct new node (using nodes) More... | |
BooleSet (const ring_type &ring, navigator navi) | |
Construct new node (using navigator nodes) More... | |
BooleSet (const ring_type &ring) | |
Construct empty set in ring. More... | |
BooleSet (idx_type idx, const self &rhs) | |
Construct new node (using navigator for then and else-branches) More... | |
BooleSet (navigator navi, const ring_type &ring) | |
Construct from navigator node. More... | |
~BooleSet () | |
Destructor. More... | |
const_iterator | begin () const |
Start of iteration over terms. More... | |
const_iterator | end () const |
Finish of iteration over terms. More... | |
const_reverse_iterator | rbegin () const |
Start of backward iteration over terms. More... | |
const_reverse_iterator | rend () const |
Finish of backward iteration over terms. More... | |
reverse_exp_iterator | rExpBegin () const |
Start of backward exponent iteration over terms. More... | |
reverse_exp_iterator | rExpEnd () const |
Finish of backward iteration over terms. More... | |
exp_iterator | expBegin () const |
Start of iteration over exponent vectors. More... | |
exp_iterator | expEnd () const |
Finish of iteration over exponent vectors. More... | |
hash_type | hash () const |
Get unique hash value (valid only per runtime) More... | |
hash_type | stableHash () const |
Get stable hash value, which is reproducible. More... | |
term_type | usedVariables () const |
Set of variables of the whole set. More... | |
exp_type | usedVariablesExp () const |
Exponent vector of variables of the whole set. More... | |
self | change (idx_type idx) const |
self | add (const term_type &rhs) const |
Add given monomial to sets. More... | |
bool_type | owns (const term_type &rhs) const |
bool_type | owns (const exp_type &) const |
Check whether rhs is included in *this. More... | |
term_type | lastLexicographicalTerm () const |
Get last term (wrt. lexicographical order) More... | |
self | divisorsOf (const term_type &rhs) const |
Compute intersection with divisors of rhs. More... | |
self | divisorsOf (const exp_type &rhs) const |
Compute intersection with divisors of rhs. More... | |
self | firstDivisorsOf (const self &rhs) const |
Intersection with divisors of first (lexicographical) term of rhs. More... | |
self | multiplesOf (const term_type &rhs) const |
Compute intersection with multiples of rhs. More... | |
self | divide (const term_type &rhs) const |
Division by given term. More... | |
bool_type | hasTermOfVariables (const term_type &rhs) const |
self | minimalElements () const |
Get minimal elements wrt. inclusion. More... | |
bool_type | ownsOne () const |
Test whether the empty set is included. More... | |
bool_type | isSingleton () const |
Test, whether we have one term only. More... | |
bool_type | isSingletonOrPair () const |
Test, whether we have one or two terms only. More... | |
bool_type | isPair () const |
Test, whether we have two terms only. More... | |
self | existAbstract (const term_type &rhs) const |
const self & | diagram () const |
Access internal decision diagram. More... | |
self | cartesianProduct (const self &rhs) const |
Cartesean product. More... | |
bool_type | contains (const self &rhs) const |
Test containment. More... | |
size_type | size () const |
Returns number of terms. More... | |
size_type | length () const |
Returns number of terms (deprecated) More... | |
size_type | nVariables () const |
Returns number of variables in manager. More... | |
double | sizeDouble () const |
Approximation of number of terms. More... | |
ostream_type & | print (ostream_type &) const |
Print current set to output stream. More... | |
self | emptyElement () const |
Get corresponding zero element (may be removed in the future) More... | |
size_type | countIndex (idx_type idx) const |
Count terms containing BooleVariable(idx) More... | |
double | countIndexDouble (idx_type idx) const |
Count many terms containing BooleVariable(idx) More... | |
bool_type | containsDivisorsOfDecDeg (const term_type &rhs) const |
Test whether, all divisors of degree -1 of term rhs are contained in this. More... | |
bool_type | containsDivisorsOfDecDeg (const exp_type &rhs) const |
Test for term corresponding to exponent rhs. More... | |
![]() | |
CCuddDDFacade (const ring_type &ring, node_ptr node) | |
Construct diagram from ring and node. More... | |
CCuddDDFacade (const ring_type &ring, const navigator &navi) | |
Construct from Manager and navigator. More... | |
CCuddDDFacade (const ring_type &ring, idx_type idx, navigator thenNavi, navigator elseNavi) | |
Construct new node from manager, index, and navigators. More... | |
CCuddDDFacade (const ring_type &ring, idx_type idx, navigator navi) | |
CCuddDDFacade (idx_type idx, const self &thenDD, const self &elseDD) | |
Construct new node. More... | |
CCuddDDFacade (const self &from) | |
Copy constructor. More... | |
~CCuddDDFacade () | |
Destructor. More... | |
diagram_type & | operator= (const diagram_type &rhs) |
Assignment operator. More... | |
*bool | implies (const self &rhs) const |
Performs the inclusion test for ZDDs. More... | |
size_type | count () const |
Determine the number of terms. More... | |
double | countDouble () const |
Appriximate the number of terms. More... | |
size_type | rootIndex () const |
Get index of curent node. More... | |
size_type | nNodes () const |
Number of nodes in the current decision diagram. More... | |
size_type | refCount () const |
Number of references pointing here. More... | |
bool | isZero () const |
Test whether diagram represents the empty set. More... | |
bool | isOne () const |
Test whether diagram represents the empty set. More... | |
const ring_type & | ring () const |
Get reference to ring. More... | |
node_ptr | getNode () const |
Get raw node structure. More... | |
mgr_type * | getManager () const |
Get raw decision diagram manager. More... | |
diagram_type | Xor (const diagram_type &rhs) const |
Union Xor. More... | |
diagram_type | divideFirst (const diagram_type &rhs) const |
Division with first term of right-hand side. More... | |
ostream_type & | print (ostream_type &os) const |
Get number of nodes in decision diagram. More... | |
first_iterator | firstBegin () const |
Get numbers of used variables. More... | |
first_iterator | firstEnd () const |
Finish of first term. More... | |
last_iterator | lastBegin () const |
Start of first term. More... | |
last_iterator | lastEnd () const |
Finish of first term. More... | |
diagram_type | firstMultiples (const std::vector< idx_type > &input_multipliers) const |
Get decison diagram representing the multiples of the first term. More... | |
diagram_type | firstDivisors () const |
Get decison diagram representing the divisors of the first term. More... | |
navigator | navigation () const |
Navigate through ZDD by incrementThen(), incrementElse(), and terminated() More... | |
bool_type | isConstant () const |
Checks whether the the diagram corresponds to {} or {{}} (polynomial 0 or 1) More... | |
std::ostream & | printIntern (std::ostream &os) const |
void | PrintMinterm () const |
![]() | |
bool | operator== (const diagram_type &rhs) const |
Equality. More... | |
bool | operator!= (const diagram_type &rhs) const |
Nonequality. More... | |
Additional Inherited Members | |
![]() | |
typedef self | dd_type |
Generic access to type of *this. More... | |
typedef CCuddDDFacade < BoolePolyRing, BooleSet > | base |
Generic access to base type. More... | |
typedef BooleMonomial | term_type |
Type of terms. More... | |
typedef BooleExponent | exp_type |
Fix type for treatment of exponent vectors. More... | |
typedef BoolePolyRing | ring_type |
Type for Boolean polynomial rings (without ordering) More... | |
typedef CGenericIter< LexOrder, navigator, term_type > | const_iterator |
Iterator type for iterating all monomials. More... | |
typedef CGenericIter< LexOrder, navigator, exp_type > | exp_iterator |
Iterator type for iterating all exponent vectors. More... | |
typedef CReverseIter< LexOrder, navigator, exp_type > | reverse_exp_iterator |
Iterator type for iterating all exponent vectors. More... | |
typedef CReverseIter< LexOrder, navigator, term_type > | const_reverse_iterator |
Iterator type for iterating all monomials. More... | |
![]() | |
ResultType | memApply (ResultType(*func)(mgr_type *, node_ptr)) const |
void | checkAssumption (bool isValid) const |
Check whether previous decision diagram operation for validity. More... | |
diagram_type | cudd_generate_multiples (const ManagerType &mgr, ReverseIterator start, ReverseIterator finish, MultReverseIterator multStart, MultReverseIterator multFinish) const |
temporarily (needs to be more generic) (similar fct in pbori_algo.h) More... | |
diagram_type | cudd_generate_divisors (const ManagerType &mgr, ReverseIterator start, ReverseIterator finish) const |
temporarily (needs to be more generic) (similar fct in pbori_algo.h) More... | |
This class defines LeadingTerms.
|
inline |
|
inline |