// ideal.cc // implementation of some general ideal functions #ifndef IDEAL_CC #define IDEAL_CC #include #include "ideal.h" ///////////////////////////////////////////////////////////////////////////// ////////////////// private member functions ///////////////////////////////// ///////////////////////////////////////////////////////////////////////////// ///////////// subset_tree data structure //////////////////////////////////// #ifdef SUPPORT_DRIVEN_METHODS_EXTENDED void ideal::create_subset_tree() { for(int i=0;i(const BigInt &)SHRT_MAX) || ((A.H)[j][k]<(const BigInt &)SHRT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Pottier_ideal(matrix&, const " "term_ordering&):\n" "LLL-reduced kernel basis does not fit into the used " "basic data type int."<(const BigInt&)INT_MAX) || ((A.H)[j][k]<(const BigInt&)INT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Pottier_ideal(matrix&, const " "term_ordering&):\n" "LLL-reduced kernel basis does not fit into the used " "basic data type int."<(const BigInt&)LONG_MAX) || ((A.H)[j][k]<(const BigInt&)LONG_MIN)) { cerr<<"\nWARNING: ideal& ideal::Pottier_ideal(matrix&, const " "term_ordering&):\n" "LLL-reduced kernel basis does not fit into the used " "basic data type long."<(const BigInt &)SHRT_MAX) || ((A.H)[j][k]<(const BigInt &)SHRT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Hosten_Sturmfels_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type int."<(const BigInt&)INT_MAX) || ((A.H)[j][k]<(const BigInt&)INT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Hosten_Sturmfels_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type int."<(const BigInt&)LONG_MAX) || ((A.H)[j][k]<(const BigInt&)LONG_MIN)) { cerr<<"\nWARNING: ideal& ideal::Hosten_Sturmfels_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type long."<0) { for(int i=0;i<_w.number_of_weighted_variables();i++) if((_w[i]!=0) && (i!=F[0])) ordering_okay=FALSE; } if(ordering_okay==FALSE) cerr<<"\nWARNING: ideal& ideal::DiBiase_Urbanke_ideal(matrix&, const " "term_ordering&):\nargument term ordering might be inappropriate"<(const BigInt &)SHRT_MAX) || ((A.H)[j][k]<(const BigInt &)SHRT_MIN)) { cerr<<"\nWARNING: ideal& ideal::DiBiase_Urbanke_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type int."<(const BigInt&)INT_MAX) || ((A.H)[j][k]<(const BigInt&)INT_MIN)) { cerr<<"\nWARNING: ideal& ideal::DiBiase_Urbanke_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type int."<(const BigInt&)LONG_MAX) || ((A.H)[j][k]<(const BigInt&)LONG_MIN)) { cerr<<"\nWARNING: ideal& ideal::DiBiase_Urbanke_ideal(matrix&, const " "term_ordering&):\nLLL-reduced kernel basis does not fit " "into the used basic data type long."<(const BigInt &)SHRT_MAX) || ((A.H)[j][k]<(const BigInt &)SHRT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Bigatti_LaScala_Robbiano_ideal" "(matrix&, const term_ordering&):\nLLL-reduced kernel basis does " "not fit into the used basic data type int."<(const BigInt&)INT_MAX) || ((A.H)[j][k]<(const BigInt&)INT_MIN)) { cerr<<"\nWARNING: ideal& ideal::Bigatti_LaScala_Robbiano_ideal" "(matrix&, const term_ordering&):\nLLL-reduced kernel basis does " "not fit into the used basic data type int."<(const BigInt&)LONG_MAX) || ((A.H)[j][k]<(const BigInt&)LONG_MIN)) { cerr<<"\nWARNING: ideal& ideal::Bigatti_LaScala_Robbiano_ideal" "(matrix&, const term_ordering&):\nLLL-reduced kernel basis does " "not fit into the used basic data type long."<>generator[j]; if(!input) // input failure, set "error flag" { cerr<<"\nWARNING: ideal::ideal(ifstream&, const term_ordering&, " "const int&): \ninput failure when reading generator "<