PolyBoRi
TimesVariableSubstitution.h
Go to the documentation of this file.
00001 // -*- c++ -*-
00002 //*****************************************************************************
00014 //*****************************************************************************
00015 
00016 #ifndef polybori_groebner_TimesVariableSubstitution_h_
00017 #define polybori_groebner_TimesVariableSubstitution_h_
00018 
00019 // include basic definitions
00020 #include "groebner_defs.h"
00021 
00022 BEGIN_NAMESPACE_PBORIGB
00023 
00031 class TimesVariableSubstitution {
00032 public:
00033   template <class PairType>
00034   Polynomial operator()(const Polynomial& lhs, const PairType& rhs) const {
00035     return lhs * (lhs.ring().variable(rhs.first) +
00036                   lhs.ring().variable(rhs.second));
00037   }
00038 };
00039 
00040 
00041 END_NAMESPACE_PBORIGB
00042 
00043 #endif /* polybori_groebner_TimesVariableSubstitution_h_ */