polybori::groebner::LiteralFactorization Class Reference

`#include <LiteralFactorization.h>`

## Public Types

typedef LiteralFactorizationIterator | const_iterator
typedef std::map< idx_type, int > | map_type
typedef std::map< idx_type, idx_type > | var2var_map_type

## Public Member Functions

| LiteralFactorization (const Polynomial &)
bool | occursAsLeadOfFactor (idx_type v) const
bool | trivial () const
bool | is11Factorization () const
bool | is00Factorization () const
const_iterator | begin ()
const_iterator | end ()

## Public Attributes

map_type | factors
Polynomial | rest
deg_type | lmDeg
var2var_map_type | var2var_map

## Member Typedef Documentation

typedef LiteralFactorizationIterator polybori::groebner::LiteralFactorization::const_iterator

typedef std::map<idx_type, int> polybori::groebner::LiteralFactorization::map_type

typedef std::map<idx_type, idx_type> polybori::groebner::LiteralFactorization::var2var_map_type

## Constructor & Destructor Documentation

polybori::groebner::LiteralFactorization::LiteralFactorization | ( | const Polynomial & | p) |  |

References polybori::BooleExponent::begin(), polybori::BooleSet::change(), polybori::COrderingBase::compare(), end(), polybori::BooleExponent::end(), factors, polybori::CCompareEnums::greater_than, polybori::CCuddDDFacade< RingType, DiagramType >::isZero(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::leadDeg(), polybori::BoolePolynomial::leadExp(), polybori::BooleSet::length(), lmDeg, polybori::BoolePolyRing::ordering(), PBORI_ASSERT, PBORI_UNLIKELY, rest, polybori::CCuddDDFacade< RingType, DiagramType >::ring(), polybori::BoolePolynomial::ring(), polybori::BoolePolynomial::usedVariablesExp(), and var2var_map.

## Member Function Documentation

LiteralFactorization::const_iterator polybori::groebner::LiteralFactorization::begin | ( | ) |  |

References factors, and var2var_map.

Referenced by polybori::groebner::easy_linear_factors().

LiteralFactorization::const_iterator polybori::groebner::LiteralFactorization::end | ( | ) |  |

References factors, and var2var_map.

Referenced by polybori::groebner::easy_linear_factors(), and LiteralFactorization().

bool polybori::groebner::LiteralFactorization::is00Factorization | ( | ) |  | const

References factors, lmDeg, and polybori::groebner::maps_to_one().

Referenced by polybori::groebner::LeadingTerms00::isCompatible(), and polybori::groebner::ReductionTerms::related().

bool polybori::groebner::LiteralFactorization::is11Factorization | ( | ) |  | const

References factors, lmDeg, and polybori::groebner::maps_to_zero().

Referenced by polybori::groebner::LeadingTerms11::isCompatible(), and polybori::groebner::ReductionTerms::related().

bool polybori::groebner::LiteralFactorization::occursAsLeadOfFactor | ( | idx_type | v) |  | const

References polybori::BooleExponent::begin(), factors, polybori::BoolePolynomial::leadDeg(), polybori::BoolePolynomial::leadExp(), rest, and var2var_map.

Referenced by polybori::groebner::GroebnerStrategy::addVariablePairs().

bool polybori::groebner::LiteralFactorization::trivial | ( | ) |  | const

References factors, polybori::BoolePolynomial::isOne(), rest, and var2var_map.

Referenced by polybori::groebner::GroebnerStrategy::addNonTrivialImplicationsDelayed().

## Member Data Documentation

map_type polybori::groebner::LiteralFactorization::factors

Referenced by polybori::groebner::GroebnerStrategy::addNonTrivialImplicationsDelayed(), begin(), polybori::groebner::common_literal_factors_deg(), end(), is00Factorization(), is11Factorization(), LiteralFactorization(), polybori::groebner::multiply_with_literal_factors(), occursAsLeadOfFactor(), polybori::groebner::GroebnerStrategy::treatVariablePairs(), and trivial().

deg_type polybori::groebner::LiteralFactorization::lmDeg

Referenced by is00Factorization(), is11Factorization(), and LiteralFactorization().

Polynomial polybori::groebner::LiteralFactorization::rest

Referenced by polybori::groebner::GroebnerStrategy::addGeneratorTrySplit(), polybori::groebner::GroebnerStrategy::addNonTrivialImplicationsDelayed(), polybori::groebner::common_literal_factors_deg(), LiteralFactorization(), occursAsLeadOfFactor(), polybori::groebner::GroebnerStrategy::treatVariablePairs(), and trivial().

var2var_map_type polybori::groebner::LiteralFactorization::var2var_map

Referenced by polybori::groebner::GroebnerStrategy::addNonTrivialImplicationsDelayed(), begin(), polybori::groebner::common_literal_factors_deg(), end(), LiteralFactorization(), polybori::groebner::multiply_with_literal_factors(), occursAsLeadOfFactor(), polybori::groebner::GroebnerStrategy::treatVariablePairs(), and trivial().

The documentation for this class was generated from the following files:

- LiteralFactorization.h
- LiteralFactorization.cc