PolyBoRi
Classes | Namespaces | Defines
pbori_defs.h File Reference
#include <cstddef>
#include <iostream>
#include "util.h"
#include <cudd.h>
#include "cacheopts.h"

Go to the source code of this file.

Classes

class  polybori::COrderEnums
 This struct contains type definitions and enumerations to be used for order codes. More...
class  polybori::CErrorEnums
 This struct contains type definitions and enumerations to be used for error codes. More...
class  polybori::CCompareEnums
 This struct contains type definitions and enumerations to be used for comparisons. More...
class  polybori::CAuxTypes
 This struct contains auxiliary type definitions. More...
class  polybori::CTypes
 This struct contains type definitions to be used in library classes. More...

Namespaces

namespace  polybori

Defines

#define PBORI_UNIQUE_SLOTS   CUDD_UNIQUE_SLOTS
#define PBORI_CACHE_SLOTS   CUDD_CACHE_SLOTS
#define PBORI_MAX_MEMORY   0
#define LIKELY(expression)   (expression)
 For optimizing if-branches.
#define UNLIKELY(expression)   (expression)
#define PBORINAME   polybori
 Name the project.
#define PBORI_DEVELOPER
 Define deverloper's mode.
#define BEGIN_NAMESPACE_PBORI   namespace PBORINAME {
 Start project's namespace.
#define END_NAMESPACE_PBORI   }
 Finish project's namespace.
#define USING_NAMESPACE_PBORI   using namespace PBORINAME;
 Use project's namespace.
#define PBORI   PBORINAME
 Access something in project's namespace using PBORI::
#define USING_PBORI   using PBORI
 Using something from project's namespace.
#define PBORI_BEGIN_NAMESPACE(sub_space)   namespace sub_space {
 Start some namespace.
#define PBORI_END_NAMESPACE   }
 Finish some namespace.
#define PBORI_TRACE_FUNC(text)
 Generate trace function if debugging.
#define PBORI_OSTREAM   std::ostream
 Get output stream type.
#define PBORI_NOT_IMPLEMENTED   throw PBORI::PBoRiError(PBORI::CTypes::not_implemented);
#define PBORI_ADD_BY_XOR
#define PBORI_LOWLEVEL_XOR
#define PBORI_USEDVARS_BY_IDX

Detailed Description

Author:
Alexander Dreyer
Date:
2006-03-06

This file defines some types, macros and other settings to be used with the polybori library.

Note:
Uses c++ namespace if PBORI_NO_NAMESPACES is undefined.
Copyright:
(c) 2006-2010 by The PolyBoRi Team

Define Documentation

#define BEGIN_NAMESPACE_PBORI   namespace PBORINAME {

Start project's namespace.

#define END_NAMESPACE_PBORI   }

Finish project's namespace.

#define LIKELY (   expression)    (expression)
#define PBORI   PBORINAME
#define PBORI_ADD_BY_XOR
#define PBORI_BEGIN_NAMESPACE (   sub_space)    namespace sub_space {

Start some namespace.

#define PBORI_CACHE_SLOTS   CUDD_CACHE_SLOTS
#define PBORI_DEVELOPER

Define deverloper's mode.

#define PBORI_END_NAMESPACE   }

Finish some namespace.

#define PBORI_LOWLEVEL_XOR
#define PBORI_MAX_MEMORY   0
#define PBORI_NOT_IMPLEMENTED   throw PBORI::PBoRiError(PBORI::CTypes::not_implemented);
#define PBORI_OSTREAM   std::ostream

Get output stream type.

#define PBORI_TRACE_FUNC (   text)

Generate trace function if debugging.

Referenced by polybori::BlockDegLexOrder::compare(), polybori::BlockDegRevLexAscOrder::compare(), polybori::BooleExponent::BooleExponent(), polybori::BooleExponent::get(), polybori::BooleExponent::~BooleExponent(), polybori::BooleExponent::reducibleBy(), polybori::BooleExponent::changeAssign(), polybori::BooleExponent::change(), polybori::BooleExponent::insertConst(), polybori::BooleExponent::insert(), polybori::BooleExponent::push_back(), polybori::BooleExponent::removeConst(), polybori::BooleExponent::remove(), polybori::BooleExponent::divide(), polybori::BooleExponent::compare(), polybori::BooleExponent::LCMDeg(), polybori::BooleExponent::GCD(), polybori::BooleExponent::LCM(), polybori::BooleExponent::multiply(), polybori::BooleExponent::multiplyFirst(), polybori::BooleExponent::multiples(), polybori::BooleExponent::divisors(), polybori::BooleExponent::print(), polybori::BooleMonomial::BooleMonomial(), polybori::BooleMonomial::reducibleBy(), polybori::BooleMonomial::change(), polybori::BooleMonomial::operator*=(), polybori::BooleMonomial::operator/=(), polybori::BooleMonomial::compare(), polybori::BooleMonomial::LCMDeg(), polybori::BooleMonomial::GCD(), polybori::BooleMonomial::GCDAssign(), polybori::BooleMonomial::LCM(), polybori::BooleMonomial::LCMAssign(), polybori::BooleMonomial::multiples(), polybori::BooleMonomial::exp(), polybori::BooleMonomial::firstVariable(), polybori::BoolePolynomial::BoolePolynomial(), polybori::BoolePolynomial::operator+=(), polybori::BoolePolynomial::operator*=(), polybori::BoolePolynomial::operator/=(), polybori::BoolePolynomial::operator%=(), polybori::BoolePolynomial::lead(), polybori::BoolePolynomial::lexLead(), polybori::BoolePolynomial::boundedLead(), polybori::BoolePolynomial::leadExp(), polybori::BoolePolynomial::boundedLeadExp(), polybori::BoolePolynomial::firstDivisors(), polybori::BoolePolynomial::leadStableHash(), polybori::BoolePolynomial::deg(), polybori::BoolePolynomial::leadDeg(), polybori::BoolePolynomial::lexLeadDeg(), polybori::BoolePolynomial::totalDeg(), polybori::BoolePolynomial::leadTotalDeg(), polybori::BoolePolynomial::gradedPart(), polybori::BoolePolynomial::nNodes(), polybori::BoolePolynomial::nUsedVariables(), polybori::BoolePolynomial::usedVariables(), polybori::BoolePolynomial::usedVariablesExp(), polybori::BoolePolynomial::length(), polybori::BoolePolynomial::print(), polybori::BoolePolynomial::firstBegin(), polybori::BoolePolynomial::firstEnd(), polybori::BoolePolynomial::firstTerm(), polybori::BoolePolynomial::degBegin(), polybori::BoolePolynomial::degEnd(), polybori::BoolePolynomial::orderedBegin(), polybori::BoolePolynomial::orderedEnd(), polybori::BoolePolynomial::orderedExpBegin(), polybori::BoolePolynomial::orderedExpEnd(), polybori::BoolePolynomial::begin(), polybori::BoolePolynomial::end(), polybori::BoolePolynomial::expBegin(), polybori::BoolePolynomial::expEnd(), polybori::BoolePolynomial::genericBegin(), polybori::BoolePolynomial::genericEnd(), polybori::BoolePolynomial::genericExpBegin(), polybori::BoolePolynomial::genericExpEnd(), polybori::BoolePolynomial::fetchTerms(), polybori::BoolePolynomial::terms(), polybori::BoolePolynomial::leadFirst(), polybori::BoolePolynomial::compare(), polybori::BoolePolyRing::BoolePolyRing(), polybori::BoolePolyRing::changeOrdering(), polybori::BoolePolyRing::activate(), polybori::BooleSet::BooleSet(), polybori::BooleSet::add(), polybori::BooleSet::owns(), polybori::BooleSet::begin(), polybori::BooleSet::end(), polybori::BooleSet::rbegin(), polybori::BooleSet::rend(), polybori::BooleSet::expBegin(), polybori::BooleSet::expEnd(), polybori::BooleSet::lastLexicographicalTerm(), polybori::BooleSet::firstDivisorsOf(), polybori::BooleSet::divisorsOf(), polybori::BooleSet::hasTermOfVariables(), polybori::BooleSet::usedVariables(), polybori::BooleSet::usedVariablesExp(), polybori::BooleSet::existAbstract(), polybori::BooleSet::print(), polybori::CCuddLastIter::CCuddLastIter(), polybori::CCuddLastIter::~CCuddLastIter(), polybori::CCuddLastIter::operator++(), polybori::CCuddLastIter::terminateConstant(), polybori::CCuddNavigator::operator*(), polybori::CCuddNavigator::isConstant(), polybori::CCuddNavigator::terminalValue(), polybori::CCuddNavigator::incrementThen(), polybori::CCuddNavigator::incrementElse(), polybori::CErrorInfo::CErrorInfo(), polybori::CErrorInfo::text(), polybori::DegLexOrder::compare(), polybori::DegLexOrder::lead(), polybori::DegLexOrder::leadExp(), polybori::DegRevLexAscOrder::compare(), polybori::DegRevLexAscOrder::lead(), polybori::DegRevLexAscOrder::leadExp(), polybori::LexOrder::compare(), polybori::LexOrder::lead(), polybori::LexOrder::leadExp(), polybori::PBoRiError::PBoRiError(), polybori::PBoRiError::~PBoRiError(), polybori::PBoRiError::code(), and polybori::PBoRiError::text().

#define PBORI_UNIQUE_SLOTS   CUDD_UNIQUE_SLOTS
#define PBORI_USEDVARS_BY_IDX
#define PBORINAME   polybori

Name the project.

#define UNLIKELY (   expression)    (expression)

Referenced by polybori::BooleMonomial::operator/=(), polybori::BoolePolynomial::operator/=(), polybori::BoolePolynomial::leadDeg(), polybori::BoolePolynomial::lexLeadDeg(), polybori::BooleSet::lastLexicographicalTerm(), polybori::BooleSet::change(), polybori::CApplyNodeFacade< DiagramType, DdNode * >::checkSameManager(), polybori::CBlockOrderingFacade< BlockDegRevLexAscOrder, block_dp_asc_tag >::appendBlock(), polybori::CCheckedIdx::CCheckedIdx(), polybori::CCuddDDFacade< BoolePolyRing, BooleSet >::checkAssumption(), polybori::CCuddInterface::getVar(), polybori::CCuddInterface::init(), polybori::CCuddInterface::checkedResult(), polybori::CIndexHandle::fromNode(), polybori::CErrorInfo::text(), polybori::COrderingBase::monom(), polybori::COrderingFacade< OrderType, OrderTag >::inSameBlockInternal(), polybori::CTermStackBase< NavigatorType, BaseType >::markedOne(), polybori::CTermStack< NavigatorType, Category, BaseType >::increment(), polybori::CTermStack< NavigatorType, Category, BaseType >::decrement(), polybori::CTermStack< NavigatorType, Category, BaseType >::terminate(), polybori::CVariableNames::operator[](), polybori::CVariableNames::set(), polybori::groebner::PairManager::nextSpoly(), polybori::groebner::PairManager::cleanTopByChainCriterion(), polybori::groebner::LiteralFactorization::LiteralFactorization(), polybori::groebner::red_tail_general(), polybori::groebner::red_tail_generic(), polybori::groebner::LLReduction::operator()(), polybori::groebner::do_plug_1(), polybori::groebner::ReductionStrategy::reducedNormalForm(), polybori::groebner::ReductionStrategy::headNormalForm(), polybori::dd_recursive_degree_lead(), polybori::dd_recursive_degree_leadexp(), and polybori::block_deg_lex_idx_compare().

#define USING_NAMESPACE_PBORI   using namespace PBORINAME;

Use project's namespace.

#define USING_PBORI   using PBORI

Using something from project's namespace.