PolyBoRi
ChainVariableCriterion.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 //*****************************************************************************
14 //*****************************************************************************
15 
16 #ifndef polybori_groebner_ChainVariableCriterion_h_
17 #define polybori_groebner_ChainVariableCriterion_h_
18 
19 // include basic definitions
20 #include "groebner_defs.h"
21 #include "GroebnerStrategy.h"
22 
24 
31 public:
33  int i;
36  this->strat=&strat;
37  this->i=i;
38  this->v=v;
39  }
40  bool operator() (const Exponent& lmExp){
41  int index=strat->generators.index(lmExp);
42  //we know such an entry exists
43  if (index!=i){
44  //would be still true for i, but how should that happen
45  if ((strat->pairs.status.hasTRep(i,index)) &&(strat->generators[index].vPairCalculated.count(v)==1))
46  return true;
47  }
48  return false;
49  }
50 };
51 
53 
54 #endif /* polybori_ChainVariableCriterion_h_ */
int i
Definition: ChainVariableCriterion.h:33
This class is just a wrapper for using variables for storing indices as interim data structure for Bo...
Definition: BooleExponent.h:34
size_type index(const KeyType &key) const
Retrieve index associated to key.
Definition: PolyEntryVector.h:99
#define END_NAMESPACE_PBORIGB
Definition: groebner_defs.h:16
const GroebnerStrategy * strat
connect via pairs
Definition: ChainVariableCriterion.h:32
ChainVariableCriterion(const GroebnerStrategy &strat, int i, idx_type v)
Definition: ChainVariableCriterion.h:35
#define BEGIN_NAMESPACE_PBORIGB
Definition: groebner_defs.h:15
PairStatusSet status
Definition: PairManager.h:75
ReductionStrategy generators
Definition: GroebnerStrategy.h:204
idx_type v
Definition: ChainVariableCriterion.h:34
This class defines ChainVariableCriterion.
Definition: ChainVariableCriterion.h:29
This class defines GroebnerStrategy.
Definition: GroebnerStrategy.h:41
bool hasTRep(int ia, int ja) const
Definition: PairStatusSet.h:33
PairManagerWithStrategy< strategy_type > pairs
For compatibility reasons make this a public member.
Definition: PairManagerFacade.h:95
polybori::CTypes::idx_type idx_type
Definition: groebner_defs.h:44