16 #ifndef polybori_groebner_CheckChainCriterion_h_
17 #define polybori_groebner_CheckChainCriterion_h_
29 template <
class StrategyType>
35 m_strategy(strategy), m_status(status) {}
48 return m_status.hasTRep(ij.
i, ij.
j) ||
49 checkPairCriteria(exp, ij.
i, ij.
j);
53 return m_strategy.checkVariableCriteria(vp.
i, vp.
v);
57 if (m_strategy.checkPairCriteria(exp, i, j)) {
58 m_status.setToHasTRep(i, j);
65 strategy_type& m_strategy;
const IJPairData & ijPair() const
Definition: PairE.h:85
This class is just a wrapper for using variables for storing indices as interim data structure for Bo...
Definition: BooleExponent.h:34
idx_type v
Definition: VariablePairData.h:31
#define END_NAMESPACE_PBORIGB
Definition: groebner_defs.h:16
This class defines IJPairData.
Definition: IJPairData.h:28
bool compute(const VariablePairData &vp)
Definition: CheckChainCriterion.h:52
int i
Definition: VariablePairData.h:30
This class defines VariablePairData.
Definition: VariablePairData.h:28
Exponent lm
Definition: PairE.h:40
#define BEGIN_NAMESPACE_PBORIGB
Definition: groebner_defs.h:15
This class defines PairE.
Definition: PairE.h:28
const VariablePairData & variablePair() const
Definition: PairE.h:90
This class defines CheckChainCriterion.
Definition: CheckChainCriterion.h:30
int getType() const
Definition: PairE.h:32
bool checkPairCriteria(const Exponent &exp, int i, int j)
Definition: CheckChainCriterion.h:56
int i
Definition: IJPairData.h:30
bool compute(const IJPairData &ij, const Exponent &exp)
Definition: CheckChainCriterion.h:47
bool operator()(const Pair ¤t)
Clean up current and return whether it has a T-representation.
Definition: CheckChainCriterion.h:38
This class defines PairStatusSet.
Definition: PairStatusSet.h:30
CheckChainCriterion(strategy_type &strategy, PairStatusSet &status)
Definition: CheckChainCriterion.h:34
StrategyType strategy_type
Definition: CheckChainCriterion.h:32
int j
Definition: IJPairData.h:31