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 00022 BEGIN_NAMESPACE_PBORIGB 00023 00024 class GBTypes{ 00025 typedef polybori::BoolePolynomial poly_type; 00026 typedef polybori::BooleMonomial monom_type; 00027 }; 00028 typedef polybori::BoolePolynomial Polynomial; 00029 typedef polybori::BooleMonomial Monomial; 00030 typedef polybori::BooleVariable Variable; 00031 typedef polybori::BooleExponent Exponent; 00032 typedef std::vector<Polynomial> PolynomialVector; 00033 /*typedef boost::int_fast_t<64> wlen_type; 00034 typedef boost::int_fast_t<32> len_type; 00035 typedef boost::int_fast_t<16> deg_type;*/ 00036 typedef long long wlen_type; 00037 typedef long len_type; 00038 typedef int deg_type; 00039 typedef polybori::CTypes::idx_type idx_type; 00040 typedef polybori::BooleSet MonomialSet; 00041 END_NAMESPACE_PBORIGB 00042 00043 #endif