BoolePolynomial.h File Reference
`#include <vector>`
`#include <map>`
`#include <algorithm>`
`#include <polybori/BoolePolyRing.h>`
`#include <polybori/routines/pbori_func.h>`
`#include <polybori/common/tags.h>`
`#include <polybori/BooleSet.h>`
`#include <polybori/iterators/CTermIter.h>`
`#include <polybori/iterators/CGenericIter.h>`
`#include <polybori/iterators/CBidirectTermIter.h>`
`#include <polybori/BooleConstant.h>`

Go to the source code of this file.

## Classes

class | polybori::CIndirectIter< IteratorType, MonomType >
class | polybori::COrderedIter< IteratorType, MonomType >
class | polybori::CDelayedTermIter< class, class, class, class >
class | polybori::CGenericIter< OrderType, NavigatorType, MonomType >
class | polybori::CExpIter< NavigatorType, ExpType >
class | polybori::BoolePolynomial
| This class wraps the underlying decicion diagram type and defines the necessary operations. More...

## Namespaces

| polybori

## Constant Groups

| polybori

## Macros

#define | PBORI_RHS_MULT(type)
| Multiplication with other left-hand side type. More...
#define | PBORI_LHS_MULT(type)
| Multiplication with other left-hand side type. More...

## Functions

BoolePolynomial | polybori::operator+ (const BoolePolynomial &lhs, const BoolePolynomial &rhs)
| Addition operation. More...
BoolePolynomial | polybori::operator+ (const BoolePolynomial &lhs, BooleConstant rhs)
| Addition operation. More...
BoolePolynomial | polybori::operator+ (BooleConstant lhs, const BoolePolynomial &rhs)
| Addition operation. More...
template<class RHSType >
BoolePolynomial | polybori::operator- (const BoolePolynomial &lhs, const RHSType &rhs)
| Subtraction operation. More...
BoolePolynomial | polybori::operator- (const BooleConstant &lhs, const BoolePolynomial &rhs)
| Subtraction operation with constant right-hand-side. More...
BoolePolynomial | polybori::operator* (const BoolePolynomial &lhs, const BoolePolynomial &rhs)
BoolePolynomial | polybori::operator* (const BoolePolynomial &lhs, const BooleMonomial &rhs)
BoolePolynomial | polybori::operator* (const BoolePolynomial &lhs, const BooleExponent &rhs)
BoolePolynomial | polybori::operator* (const BoolePolynomial &lhs, const BooleConstant &rhs)
BoolePolynomial | polybori::operator* (const BooleMonomial &lhs, const BoolePolynomial &rhs)
BoolePolynomial | polybori::operator* (const BooleExponent &lhs, const BoolePolynomial &rhs)
BoolePolynomial | polybori::operator* (const BooleConstant &lhs, const BoolePolynomial &rhs)
template<class RHSType >
BoolePolynomial | polybori::operator/ (const BoolePolynomial &lhs, const RHSType &rhs)
| Division by monomial (skipping remainder) More...
template<class RHSType >
BoolePolynomial | polybori::operator% (const BoolePolynomial &lhs, const RHSType &rhs)
| Modulus monomial (division remainder) More...
BoolePolynomial::bool_type | polybori::operator== (BoolePolynomial::bool_type lhs, const BoolePolynomial &rhs)
| Equality check (with constant lhs) More...
BoolePolynomial::bool_type | polybori::operator!= (BoolePolynomial::bool_type lhs, const BoolePolynomial &rhs)
| Nonquality check (with constant lhs) More...
BoolePolynomial::ostream_type & | polybori::operator<< (BoolePolynomial::ostream_type &, const BoolePolynomial &)
| Stream output operator. More...

## Detailed Description

Author
  Alexander Dreyer

Date
  2006-03-10

This file carries the definition of class `BoolePolynomial`, which can be used to access the boolean polynomials with respect to the polynomial ring, which was active on initialization time.

Copyright:
  (c) 2006-2010 by The PolyBoRi Team

## Macro Definition Documentation

#define PBORI_LHS_MULT | ( |  | type) |  |

Value:
inline BoolePolynomial \
operator*(const type& lhs, const BoolePolynomial& rhs) { return rhs * lhs; }

Multiplication with other left-hand side type.

#define PBORI_RHS_MULT | ( |  | type) |  |

Value:
inline BoolePolynomial \
operator*(const BoolePolynomial& lhs, const type& rhs) { \
return BoolePolynomial(lhs) *= rhs; }

Multiplication with other left-hand side type.