#include <polybori/pbori_defs.h>#include "pbori_func.h"#include <polybori/common/traits.h>#include <polybori/cudd/cudd.h>#include <polybori/ring/CCuddInterface.h>Go to the source code of this file.
Namespaces | |
| namespace | polybori | 
Functions | |
| template<class NaviType, class TermType, class TernaryOperator, class TerminalOperator> | |
| TermType | polybori::dd_backward_transform (NaviType navi, TermType init, TernaryOperator newNode, TerminalOperator terminate) | 
| Function templates for transforming decision diagrams.   | |
| template<class NaviType, class TermType, class OutIterator, class ThenBinaryOperator, class ElseBinaryOperator, class TerminalOperator> | |
| OutIterator | polybori::dd_transform (NaviType navi, TermType init, OutIterator result, ThenBinaryOperator then_binop, ElseBinaryOperator else_binop, TerminalOperator terminate) | 
| Function templates for transforming decision diagrams.   | |
| template<class NaviType, class TermType, class OutIterator, class ThenBinaryOperator, class ElseBinaryOperator, class TerminalOperator, class FirstTermOp> | |
| OutIterator | polybori::dd_transform (NaviType navi, TermType init, OutIterator result, ThenBinaryOperator then_binop, ElseBinaryOperator else_binop, TerminalOperator terminate, FirstTermOp terminate_first) | 
| template<class NaviType, class TermType, class OutIterator, class ThenBinaryOperator, class ElseBinaryOperator> | |
| void | polybori::dd_transform (const NaviType &navi, const TermType &init, const OutIterator &result, const ThenBinaryOperator &then_binop, const ElseBinaryOperator &else_binop) | 
| Function templates for transforming decision diagrams.   | |
| template<class NaviType, class TermType, class OutIterator, class ThenBinaryOperator> | |
| void | polybori::dd_transform (const NaviType &navi, const TermType &init, const OutIterator &result, const ThenBinaryOperator &then_binop) | 
| Function templates for transforming decision diagrams.   | |
| template<class InputIterator, class OutputIterator, class FirstFunction, class UnaryFunction> | |
| OutputIterator | polybori::special_first_transform (InputIterator first, InputIterator last, OutputIterator result, UnaryFunction op, FirstFunction firstop) | 
| template<class InputIterator, class Intermediate, class OutputIterator> | |
| OutputIterator | polybori::reversed_inter_copy (InputIterator start, InputIterator finish, Intermediate &inter, OutputIterator output) | 
| Function templates doing a reversed copy using intermediate storage.   | |
| template<class NaviType> | |
| bool | polybori::dd_on_path (NaviType navi) | 
| template<class NaviType, class OrderedIterator> | |
| bool | polybori::dd_owns_term_of_indices (NaviType navi, OrderedIterator start, OrderedIterator finish) | 
| template<class NaviType, class OrderedIterator, class NodeOperation> | |
| NaviType | polybori::dd_intersect_some_index (NaviType navi, OrderedIterator start, OrderedIterator finish, NodeOperation newNode) | 
| template<class NaviType> | |
| void | polybori::dd_print (NaviType navi) | 
| Function templates for debugging, prints dd indices and reference counts.   | |
| template<class IteratorType, class SizeType> | |
| SizeType | polybori::limited_distance (IteratorType start, IteratorType finish, SizeType limit) | 
| template<class NaviType> | |
| bool | polybori::owns_one (NaviType navi) | 
| Test whether the empty set is included.   | |
| template<class CacheMgr, class NaviType, class SetType> | |
| SetType | polybori::dd_modulo_monomials (const CacheMgr &cache_mgr, NaviType navi, NaviType rhs, const SetType &init) | 
| template<class CacheMgr, class ModMonCacheMgr, class NaviType, class SetType> | |
| SetType | polybori::dd_minimal_elements (const CacheMgr &cache_mgr, const ModMonCacheMgr &modmon_mgr, NaviType navi, const SetType &init) | 
| Get minimal elements with respect to inclusion.   | |
| template<class NaviType, class DDType> | |
| DDType | polybori::dd_minimal_elements (NaviType navi, DDType dd, DDType &multiples) | 
| template<class MgrType> | |
| const MgrType & | polybori::get_mgr_core (const MgrType &rhs) | 
| template<class ManagerType, class ReverseIterator, class MultReverseIterator, class DDBase> | |
| DDBase | polybori::cudd_generate_multiples (const ManagerType &mgr, ReverseIterator start, ReverseIterator finish, MultReverseIterator multStart, MultReverseIterator multFinish, type_tag< DDBase >) | 
| temporarily (needs to be more generic) (similar fct in CCuddDDFacade.h)   | |
| template<class ManagerType, class ReverseIterator, class DDBase> | |
| DDBase | polybori::cudd_generate_divisors (const ManagerType &mgr, ReverseIterator start, ReverseIterator finish, type_tag< DDBase >) | 
| temporarily (needs to be more generic) (similar fct in CCuddDDFacade.h)   | |
| template<class Iterator, class SizeType> | |
| Iterator | polybori::bounded_max_element (Iterator start, Iterator finish, SizeType bound) | 
| template<class LhsType, class RhsType, class BinaryPredicate> | |
| CTypes::comp_type | polybori::generic_compare_3way (const LhsType &lhs, const RhsType &rhs, BinaryPredicate comp) | 
| defines lexicographic comparison for variable indices   | |
| template<class IteratorLike, class ForwardIteratorTag> | |
| IteratorLike | polybori::increment_iteratorlike (IteratorLike iter, ForwardIteratorTag) | 
| template<class IteratorLike> | |
| IteratorLike | polybori::increment_iteratorlike (IteratorLike iter, navigator_tag) | 
| template<class IteratorLike> | |
| IteratorLike | polybori::increment_iteratorlike (IteratorLike iter) | 
| DdNode * | polybori::pboriCuddZddUnionXor__ (DdManager *, DdNode *, DdNode *) | 
| template<class MgrType, class NodeType> | |
| NodeType | polybori::pboriCuddZddUnionXor (MgrType zdd, NodeType P, NodeType Q) | 
| template<class MgrType, class NodeType> | |
| NodeType | polybori::pboriCudd_zddUnionXor (MgrType dd, NodeType P, NodeType Q) | 
| template<class NaviType> | |
| bool | polybori::dd_is_singleton (NaviType navi) | 
| template<class NaviType, class BooleConstant> | |
| BooleConstant | polybori::dd_pair_check (NaviType navi, BooleConstant allowSingleton) | 
| template<class NaviType> | |
| bool | polybori::dd_is_singleton_or_pair (NaviType navi) | 
| template<class NaviType> | |
| bool | polybori::dd_is_pair (NaviType navi) | 
| template<class SetType> | |
| void | polybori::combine_sizes (const SetType &bset, double &init) | 
| template<class SetType> | |
| void | polybori::combine_sizes (const SetType &bset, typename SetType::size_type &init) | 
| template<class SizeType, class IdxType, class NaviType, class SetType> | |
| SizeType & | polybori::count_index (SizeType &size, IdxType idx, NaviType navi, const SetType &init) | 
| template<class SizeType, class IdxType, class SetType> | |
| SizeType & | polybori::count_index (SizeType &size, IdxType idx, const SetType &bset) | 
| template<class InIter, class OutIter, class Object, class MemberFuncPtr> | |
| OutIter | polybori::transform (InIter start, InIter finish, OutIter result, Object &obj, MemberFuncPtr func) | 
| template<class InIter, class Object, class MemberFuncPtr> | |
| void | polybori::for_each (InIter start, InIter finish, Object &obj, MemberFuncPtr func) | 
| template<class InIter, class Object, class MemberFuncPtr> | |
| void | polybori::for_each (InIter start, InIter finish, const Object &obj, MemberFuncPtr func) | 
| template<class Type, class Type1> | |
| const Type & | polybori::which (bool condition, const Type1 &value1, const Type &value) | 
| template<class Type, class Type1, class Type2> | |
| const Type & | polybori::which (bool cond1, const Type1 &value1, bool cond2, const Type2 &value2, const Type &value) | 
| template<class Type, class Type1, class Type2, class Type3> | |
| const Type & | polybori::which (bool cond1, const Type1 &value1, bool cond2, const Type2 &value2, bool cond3, const Type3 &value3, const Type &value) | 
| template<class IDType, class Iterator> | |
| bool | polybori::same_rings (const IDType &id, Iterator start, Iterator finish) | 
| template<class Iterator> | |
| bool | polybori::same_rings (Iterator start, Iterator finish) | 
 1.5.6