49 #define TIMING_EPR(t,msg) TIMING_END_AND_PRINT(t,msg);TIMING_RESET(t);
61 WerrorS(
"Unknown chosen resultant matrix type!");
64 Werror(
"One element of the ideal %s is constant!",
name);
67 Werror(
"Wrong number of elements in given ideal %s, should be %d resp. %d!",
71 Werror(
"The given ideal %s must be 0-dimensional!",
name);
74 Werror(
"The given ideal %s has to be homogeneous in the first ring variable!",
78 Werror(
"The given ideal %s has to reduced!",
name);
81 WerrorS(
"Ground field not implemented!");
100 if ( rmatrix ) numOfVars++;
105 if (
IDELEMS(theIdeal) != numOfVars )
110 poly
p = (theIdeal->m)[
k];
124 if ( state !=
mprOk ) mprPrintError( state,
"" );
147 poly u_resultant_det( ideal gls,
int imtype )
151 poly emptypoly=
pInit();
178 WerrorS(
"Unsuitable input ideal: Minor of resultant matrix is singular!");
virtual number getSubDet()
Base class for solving 0-dim poly systems using u-resultant.
resMatrixBase * accessResMat()
poly interpolateDense(const number subDetVal=NULL)
TIMING_START(fac_alg_resultant)
char name(const Variable &v)
void WerrorS(const char *s)
uResultant::resMatType determineMType(int imtype)
mprState mprIdealCheck(const ideal theIdeal, const char *name, uResultant::resMatType mtype, BOOLEAN rmatrix=false)
#define TIMING_EPR(t, msg)
TIMING_DEFINE_PRINT(mpr_overall) TIMING_DEFINE_PRINT(mpr_check) TIMING_DEFINE_PRINT(mpr_constr) TIMING_DEFINE_PRINT(mpr_ures) TIMING_DEFINE_PRINT(mpr_mures) TIMING_DEFINE_PRINT(mpr_arrange) TIMING_DEFINE_PRINT(mpr_solver) void mprPrintError(mprState state
#define nPrint(a)
only for debug, over any initalized currRing
BOOLEAN p_IsHomogeneous(poly p, const ring r)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Compatiblity layer for legacy polynomial operations (over currRing)
#define pIsConstant(p)
like above, except that Comp might be != 0
#define pInit()
allocates a new monomial and initializes everything to 0
void PrintS(const char *s)
void Werror(const char *fmt,...)
static BOOLEAN rField_is_R(const ring r)
static BOOLEAN rField_is_long_C(const ring r)
static BOOLEAN rField_is_Q_a(const ring r)
static BOOLEAN rField_is_Q(const ring r)
static BOOLEAN rField_is_long_R(const ring r)