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_ */