PolyBoRi
groebner_defs.h
Go to the documentation of this file.
00001 /*
00002  *  groebner_defs.h
00003  *  PolyBoRi
00004  *
00005  *  Created by Michael Brickenstein on 19.04.06.
00006  *  Copyright 2006 The PolyBoRi Team. See LICENSE file.
00007  *
00008  */
00009 
00010 #include <polybori.h>
00011 #include <boost/integer.hpp>
00012 #ifndef PBORI_GB_DEFS_H
00013 #define PBORI_GB_DEFS_H
00014 #ifndef PBORI_NO_NAMESPACES
00015 #define BEGIN_NAMESPACE_PBORIGB namespace PBORINAME { namespace groebner{
00016 #define END_NAMESPACE_PBORIGB }} // end of namespace
00017 #define USING_NAMESPACE_PBORIGB using namespace PBORINAME::groebner;
00018 #else
00019 #endif
00020 
00021 // algorithmic variants
00022 #define EXP_FOR_PAIRS
00023 
00024 BEGIN_NAMESPACE_PBORIGB
00025 
00026 class GBTypes{
00027   typedef polybori::BoolePolynomial poly_type;
00028   typedef polybori::BooleMonomial monom_type;
00029 };
00030 typedef polybori::BoolePolynomial Polynomial;
00031 typedef polybori::BooleMonomial Monomial;
00032 typedef polybori::BooleVariable Variable;
00033 typedef polybori::BooleExponent Exponent;
00034 typedef std::vector<Polynomial> PolynomialVector;
00035 
00036 #ifdef PBORI_HAVE_LONG_LONG
00037 typedef long long wlen_type;
00038 #else
00039 typedef long wlen_type;
00040 #endif
00041 typedef long len_type;
00042 typedef int deg_type;
00043 
00044 typedef polybori::CTypes::idx_type idx_type;
00045 typedef polybori::BooleSet MonomialSet;
00046 END_NAMESPACE_PBORIGB
00047 
00048 #endif