248 const char *sys_cmd=(
char *)(args->
Data());
253 if (strcmp(sys_cmd,
"nblocks") == 0)
275 r = (ring)
h->Data();
282 if(strcmp(sys_cmd,
"version")==0)
291 if(strcmp(sys_cmd,
"alarm")==0)
298 struct itimerval t,o;
299 memset(&t,0,
sizeof(t));
300 t.it_value.tv_sec =(unsigned)((
unsigned long)
h->Data());
301 setitimer(ITIMER_VIRTUAL,&t,&o);
310 if(strcmp(sys_cmd,
"cpu")==0)
313 #ifdef _SC_NPROCESSORS_ONLN 314 cpu=sysconf(_SC_NPROCESSORS_ONLN);
315 #elif defined(_SC_NPROCESSORS_CONF) 316 cpu=sysconf(_SC_NPROCESSORS_CONF);
318 res->data=(
void *)cpu;
324 if(strcmp(sys_cmd,
"executable")==0)
339 if(strcmp(sys_cmd,
"neworder")==0)
353 if(strcmp(sys_cmd,
"nc_hilb") == 0)
360 i = (ideal)
h->Data();
363 WerrorS(
"nc_Hilb:ideal expected");
368 lV = (int)(
long)
h->Data();
371 WerrorS(
"nc_Hilb:int expected");
377 if((
int)(long)
h->Data() == 1)
379 else if((
int)(long)
h->Data() == 2)
381 else if((
int)(long)
h->Data() == 3)
387 WerrorS(
"nc_Hilb:int 1,2 or 3 are expected");
395 if(strcmp(sys_cmd,
"sh")==0)
399 WerrorS(
"shell execution is disallowed in restricted mode");
405 res->data = (
void*)(long)
system((
char*)(
h->Data()));
412 if(strcmp(sys_cmd,
"reduce_bound")==0)
426 pid = (ideal)
h->CopyD();
431 ideal q = (ideal)
h->next->CopyD();
432 int bound = (int)(
long)
h->next->next->Data();
441 if(strcmp(sys_cmd,
"uname")==0)
449 if(strcmp(sys_cmd,
"with")==0)
459 #define TEST_FOR(A) if(strcmp(s,A)==0) res->data=(void *)1; else 460 char *
s=(
char *)
h->Data();
473 #ifdef TEST_MAC_ORDER 478 #ifdef HAVE_DYNAMIC_LOADING 501 if (strcmp(sys_cmd,
"browsers")==0)
511 if (strcmp(sys_cmd,
"pid")==0)
514 res->data=(
void *)(
long) getpid();
519 if (strcmp(sys_cmd,
"getenv")==0)
524 const char *
r=
getenv((
char *)
h->Data());
537 if (strcmp(sys_cmd,
"setenv")==0)
544 setenv((
char *)
h->Data(), (
char *)
h->next->Data(), 1);
554 WerrorS(
"setenv not supported on this platform");
560 if (strcmp(sys_cmd,
"Singular") == 0)
569 if (strcmp(sys_cmd,
"SingularLib") == 0)
579 if (strstr(sys_cmd,
"--") == sys_cmd)
581 if (strcmp(sys_cmd,
"--") == 0)
589 Werror(
"Unknown option %s", sys_cmd);
590 WerrorS(
"Use 'system(\"--\");' for listing of available options");
605 const char *
r=(
const char*)
feOptSpec[opt].value;
619 WerrorS(
"Need string or int argument to set option value");
622 const char* errormsg;
627 Werror(
"Need string argument to set value of option %s", sys_cmd);
631 if (errormsg !=
NULL)
632 Werror(
"Option '--%s=%d' %s", sys_cmd, (
int) ((
long)
h->Data()), errormsg);
637 if (errormsg !=
NULL)
638 Werror(
"Option '--%s=%s' %s", sys_cmd, (
char*)
h->Data(), errormsg);
645 if (strcmp(sys_cmd,
"HC")==0)
653 if(strcmp(sys_cmd,
"random")==0)
676 if (strcmp(sys_cmd,
"std_syz") == 0)
682 i1=(ideal)
h->CopyD();
688 i2=(int)((
long)
h->Data());
697 if (strcmp(sys_cmd,
"denom_list")==0)
706 if(strcmp(sys_cmd,
"complexNearZero")==0)
713 WerrorS(
"unsupported ground field!");
720 (int)((
long)(
h->next->Data())));
731 if(strcmp(sys_cmd,
"getPrecDigits")==0)
736 WerrorS(
"unsupported ground field!");
747 if(strcmp(sys_cmd,
"lduDecomp")==0)
755 lduDecomp(aMat, pMat, lMat, dMat, uMat,
l, u, prodLU);
766 res->data = (
char *)L;
776 if(strcmp(sys_cmd,
"lduSolve")==0)
810 poly l = (
poly)
h->next->next->next->next->Data();
811 poly u = (
poly)
h->next->next->next->next->next->Data();
812 poly lTimesU = (
poly)
h->next->next->next->next->next->next->Data();
813 matrix bVec = (
matrix)
h->next->next->next->next->next->next->next->Data();
817 Werror(
"first matrix (%d x %d) is not quadratic",
823 Werror(
"second matrix (%d x %d) is not quadratic",
829 Werror(
"third matrix (%d x %d) is not quadratic",
835 Werror(
"third matrix (%d x %d) and fourth matrix (%d x %d) %s",
842 Werror(
"fourth matrix (%d x %d) and vector (%d x 1) do not fit",
847 bVec, xVec, homogSolSpace);
870 if (strcmp(sys_cmd,
"shared") == 0)
872 #ifndef SI_COUNTEDREF_AUTOLOAD 879 else if (strcmp(sys_cmd,
"reference") == 0)
881 #ifndef SI_COUNTEDREF_AUTOLOAD 890 #ifdef HAVE_SIMPLEIPC 891 if (strcmp(sys_cmd,
"semaphore")==0)
897 v=(int)(
long)
h->next->next->Data();
904 WerrorS(
"Usage: system(\"semaphore\",<cmd>,int)");
911 if (strcmp(sys_cmd,
"reserve")==0)
919 res->data=(
void*)(
long)
p;
926 if (strcmp(sys_cmd,
"reservedLink")==0)
935 if (strcmp(sys_cmd,
"install")==0)
941 (int)(
long)
h->next->next->next->Data(),
948 if (strcmp(sys_cmd,
"newstruct")==0)
954 char *n=(
char*)
h->Data();
961 newstruct_desc desc=(newstruct_desc)bb->data;
965 else Werror(
"'%s' is not a newstruct",n);
967 else Werror(
"'%s' is not a blackbox object",n);
973 if (strcmp(sys_cmd,
"blackbox")==0)
981 if (strcmp(sys_cmd,
"absFact") == 0)
998 l->m[0].data=(
void *)
f;
1000 l->m[1].data=(
void *)
v;
1002 l->m[2].data=(
void*) mipos;
1004 l->m[3].data=(
void*) (
long) n;
1005 res->data=(
void *)
l;
1014 if (strcmp(sys_cmd,
"LLL") == 0)
1037 #if __FLINT_RELEASE >= 20500 1038 if (strcmp(sys_cmd,
"LLL_Flint") == 0)
1059 WerrorS(
"matrix,int or bigint,int expected");
1064 if(((
int)((
long)(
h->next->Data())) != 0) && (
int)((long)(
h->next->Data()) != 1))
1066 WerrorS(
"int is different from 0, 1");
1070 if((
long)(
h->next->Data()) == 0)
1085 if((
long)(
h->next->Data()) == 1)
1091 for(
int i = 1;
i<=
m->rows();
i++)
1096 m = singflint_LLL(
m,
T);
1109 for(
int i = 1;
i<=
m->rows();
i++)
1111 m = singflint_LLL(
m,
T);
1131 #ifdef HAVE_SHIFTBBA 1132 if (strcmp(sys_cmd,
"stest") == 0)
1139 int sh=(int)((
long)(
h->Data()));
1141 int uptodeg=(int)((
long)(
h->Data()));
1143 int lVblock=(int)((
long)(
h->Data()));
1146 WerrorS(
"negative shift for pLPshift");
1150 if (L+sh-1 > uptodeg)
1152 WerrorS(
"pLPshift: too big shift requested\n");
1164 #ifdef HAVE_SHIFTBBA 1165 if (strcmp(sys_cmd,
"btest") == 0)
1172 int lV=(int)((
long)(
h->Data()));
1182 #ifdef HAVE_SHIFTBBA 1183 if (strcmp(sys_cmd,
"shrinktest") == 0)
1190 int lV=(int)((
long)(
h->Data()));
1204 if(strcmp(sys_cmd,
"pcvLAddL")==0)
1209 if(strcmp(sys_cmd,
"pcvPMulL")==0)
1214 if(strcmp(sys_cmd,
"pcvMinDeg")==0)
1219 if(strcmp(sys_cmd,
"pcvP2CV")==0)
1224 if(strcmp(sys_cmd,
"pcvCV2P")==0)
1229 if(strcmp(sys_cmd,
"pcvDim")==0)
1234 if(strcmp(sys_cmd,
"pcvBasis")==0)
1241 #ifdef HAVE_EIGENVAL 1242 if(strcmp(sys_cmd,
"hessenberg")==0)
1249 #ifdef HAVE_EIGENVAL 1250 if(strcmp(sys_cmd,
"eigenvals")==0)
1257 #ifdef HAVE_EIGENVAL 1258 if(strcmp(sys_cmd,
"rowelim")==0)
1265 #ifdef HAVE_EIGENVAL 1266 if(strcmp(sys_cmd,
"rowcolswap")==0)
1274 if(strcmp(sys_cmd,
"gmsnf")==0)
1281 if(strcmp(sys_cmd,
"contributors") == 0)
1285 "Olaf Bachmann, Michael Brickenstein, Hubert Grassmann, Kai Krueger, Victor Levandovskyy, Wolfgang Neumann, Thomas Nuessler, Wilfred Pohl, Jens Schmidt, Mathias Schulze, Thomas Siebert, Ruediger Stobbe, Moritz Wenk, Tim Wichmann");
1290 #ifdef HAVE_SPECTRUM 1291 if(strcmp(sys_cmd,
"spectrum") == 0)
1305 if(((
long)
h->next->Data())==1L)
1311 if(strcmp(sys_cmd,
"semic") == 0)
1317 if (
h->next->next==
NULL)
1319 else if (
h->next->next->Typ()==
INT_CMD)
1326 if(strcmp(sys_cmd,
"spadd") == 0)
1337 if(strcmp(sys_cmd,
"spmul") == 0)
1349 #define HAVE_SHEAFCOH_TRICKS 1 1351 #ifdef HAVE_SHEAFCOH_TRICKS 1352 if(strcmp(sys_cmd,
"tensorModuleMult")==0)
1358 int m = (int)( (
long)
h->Data() );
1359 ideal
M = (ideal)
h->next->Data();
1370 if (strcmp(sys_cmd,
"twostd") == 0)
1375 I=(ideal)
h->CopyD();
1389 if (strcmp(sys_cmd,
"bracket") == 0)
1407 if (strcmp(sys_cmd,
"env")==0)
1411 ring
r = (ring)
h->Data();
1418 WerrorS(
"`system(\"env\",<ring>)` expected");
1426 if (strcmp(sys_cmd,
"opp")==0)
1430 ring
r=(ring)
h->Data();
1437 WerrorS(
"`system(\"opp\",<ring>)` expected");
1445 if (strcmp(sys_cmd,
"oppose")==0)
1448 && (
h->next!=
NULL))
1450 ring Rop = (ring)
h->Data();
1463 WerrorS(
"`system(\"oppose\",<ring>,<poly>)` expected");
1471 #ifdef HAVE_SHIFTBBA 1472 if (strcmp(sys_cmd,
"freegb") == 0)
1477 ideal I=(ideal)
h->CopyD();
1479 int uptodeg=(int)((
long)(
h->Data()));
1481 int lVblock=(int)((
long)(
h->Data()));
1500 if (strcmp(sys_cmd,
"walkNextWeight") == 0)
1507 Werror(
"system(\"walkNextWeight\" ...) intvecs not of length %d\n",
1511 res->data = (
void*) walkNextWeight(((
intvec*)
h->Data()),
1513 (ideal)
h->next->next->Data());
1514 if (
res->data ==
NULL ||
res->data == (
void*) 1L)
1530 if (strcmp(sys_cmd,
"walkInitials") == 0)
1534 WerrorS(
"system(\"walkInitials\", ideal) expected");
1537 res->data = (
void*) walkInitials((ideal)
h->Data());
1547 if (strcmp(sys_cmd,
"walkAddIntVec") == 0)
1553 res->data = (
intvec*) walkAddIntVec(arg1, arg2);
1562 #ifdef MwaklNextWeight 1563 if (strcmp(sys_cmd,
"MwalkNextWeight") == 0)
1570 Werror(
"system(\"MwalkNextWeight\" ...) intvecs not of length %d\n",
1576 ideal arg3 = (ideal)
h->next->next->Data();
1583 #endif //MWalkNextWeight 1587 if(strcmp(sys_cmd,
"Mivdp") == 0)
1591 WerrorS(
"system(\"Mivdp\", int) expected");
1594 if ((
int) ((
long)(
h->Data())) !=
currRing->N)
1596 Werror(
"system(\"Mivdp\" ...) intvecs not of length %d\n",
1600 int arg1 = (int) ((
long)(
h->Data()));
1610 if(strcmp(sys_cmd,
"Mivlp") == 0)
1614 WerrorS(
"system(\"Mivlp\", int) expected");
1617 if ((
int) ((
long)(
h->Data())) !=
currRing->N)
1619 Werror(
"system(\"Mivlp\" ...) intvecs not of length %d\n",
1623 int arg1 = (int) ((
long)(
h->Data()));
1634 if(strcmp(sys_cmd,
"MpDiv") == 0)
1651 if(strcmp(sys_cmd,
"MpMult") == 0)
1667 if (strcmp(sys_cmd,
"MivSame") == 0)
1688 res->data = (
void*)(
long)
MivSame(arg1, arg2);
1695 if (strcmp(sys_cmd,
"M3ivSame") == 0)
1718 res->data = (
void*)(
long)
M3ivSame(arg1, arg2, arg3);
1725 if(strcmp(sys_cmd,
"MwalkInitialForm") == 0)
1731 Werror(
"system \"MwalkInitialForm\"...) intvec not of length %d\n",
1735 ideal
id = (ideal)
h->Data();
1747 if(strcmp(sys_cmd,
"MivMatrixOrder") == 0)
1751 WerrorS(
"system(\"MivMatrixOrder\",intvec) expected");
1764 if(strcmp(sys_cmd,
"MivMatrixOrderdp") == 0)
1768 WerrorS(
"system(\"MivMatrixOrderdp\",intvec) expected");
1771 int arg1 = (int) ((
long)(
h->Data()));
1781 if(strcmp(sys_cmd,
"MPertVectors") == 0)
1785 ideal arg1 = (ideal)
h->Data();
1787 int arg3 = (int) ((
long)(
h->next->next->Data()));
1797 if(strcmp(sys_cmd,
"MPertVectorslp") == 0)
1801 ideal arg1 = (ideal)
h->Data();
1803 int arg3 = (int) ((
long)(
h->next->next->Data()));
1813 if(strcmp(sys_cmd,
"Mfpertvector") == 0)
1817 ideal arg1 = (ideal)
h->Data();
1828 if(strcmp(sys_cmd,
"MivUnit") == 0)
1832 int arg1 = (int) ((
long)(
h->Data()));
1842 if(strcmp(sys_cmd,
"MivWeightOrderlp") == 0)
1856 if(strcmp(sys_cmd,
"MivWeightOrderdp") == 0)
1860 WerrorS(
"system(\"MivWeightOrderdp\",intvec) expected");
1874 if(strcmp(sys_cmd,
"MivMatrixOrderlp") == 0)
1878 WerrorS(
"system(\"MivMatrixOrderlp\",int) expected");
1881 int arg1 = (int) ((
long)(
h->Data()));
1891 if (strcmp(sys_cmd,
"MkInterRedNextWeight") == 0)
1898 Werror(
"system(\"MkInterRedNextWeight\" ...) intvecs not of length %d\n",
1904 ideal arg3 = (ideal)
h->next->next->Data();
1914 #ifdef MPertNextWeight 1915 if (strcmp(sys_cmd,
"MPertNextWeight") == 0)
1921 Werror(
"system(\"MPertNextWeight\" ...) intvecs not of length %d\n",
1926 ideal arg2 = (ideal)
h->next->Data();
1927 int arg3 = (int)
h->next->next->Data();
1934 #endif //MPertNextWeight 1938 #ifdef Mivperttarget 1939 if (strcmp(sys_cmd,
"Mivperttarget") == 0)
1943 ideal arg1 = (ideal)
h->Data();
1944 int arg2 = (int)
h->next->Data();
1951 #endif //Mivperttarget 1955 if (strcmp(sys_cmd,
"Mwalk") == 0)
1962 Werror(
"system(\"Mwalk\" ...) intvecs not of length %d\n",
1966 ideal arg1 = (ideal)
h->CopyD();
1969 ring arg4 = (ring)
h->next->next->next->Data();
1970 int arg5 = (int) (
long)
h->next->next->next->next->Data();
1971 int arg6 = (int) (
long)
h->next->next->next->next->next->Data();
1972 ideal
result = (ideal)
Mwalk(arg1, arg2, arg3, arg4, arg5, arg6);
1982 if (strcmp(sys_cmd,
"Mwalk") == 0)
1991 Werror(
"system(\"Mwalk\" ...) intvecs not of length %d or %d\n",
1995 ideal arg1 = (ideal)
h->Data();
1998 ring arg4 = (ring)
h->next->next->next->Data();
1999 ideal
result = (ideal)
Mwalk(arg1, arg2, arg3,arg4);
2006 if (strcmp(sys_cmd,
"Mpwalk") == 0)
2010 if(((
intvec*)
h->next->next->next->Data())->length() !=
currRing->N &&
2013 Werror(
"system(\"Mpwalk\" ...) intvecs not of length %d\n",
currRing->N);
2016 ideal arg1 = (ideal)
h->Data();
2017 int arg2 = (int) (
long)
h->next->Data();
2018 int arg3 = (int) (
long)
h->next->next->Data();
2021 int arg6 = (int) (
long)
h->next->next->next->next->next->Data();
2022 int arg7 = (int) (
long)
h->next->next->next->next->next->next->Data();
2023 int arg8 = (int) (
long)
h->next->next->next->next->next->next->next->Data();
2024 ideal
result = (ideal)
Mpwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
2034 if (strcmp(sys_cmd,
"Mrwalk") == 0)
2043 Werror(
"system(\"Mrwalk\" ...) intvecs not of length %d or %d\n",
2047 ideal arg1 = (ideal)
h->Data();
2050 int arg4 = (int)(
long)
h->next->next->next->Data();
2051 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2052 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2053 int arg7 = (int)(
long)
h->next->next->next->next->next->next->Data();
2054 ideal
result = (ideal)
Mrwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7);
2063 if (strcmp(sys_cmd,
"MAltwalk1") == 0)
2067 if (((
intvec*)
h->next->next->next->Data())->length() !=
currRing->N &&
2070 Werror(
"system(\"MAltwalk1\" ...) intvecs not of length %d\n",
2074 ideal arg1 = (ideal)
h->Data();
2075 int arg2 = (int) ((
long)(
h->next->Data()));
2076 int arg3 = (int) ((
long)(
h->next->next->Data()));
2089 if (strcmp(sys_cmd,
"Mfwalk_alt") == 0)
2096 Werror(
"system(\"Mfwalk\" ...) intvecs not of length %d\n",
2100 ideal arg1 = (ideal)
h->Data();
2103 int arg4 = (int)
h->next->next->next->Data();
2104 ideal
result = (ideal) Mfwalk_alt(arg1, arg2, arg3, arg4);
2114 if (strcmp(sys_cmd,
"Mfwalk") == 0)
2121 Werror(
"system(\"Mfwalk\" ...) intvecs not of length %d\n",
2125 ideal arg1 = (ideal)
h->Data();
2128 int arg4 = (int)(
long)
h->next->next->next->Data();
2129 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2130 ideal
result = (ideal)
Mfwalk(arg1, arg2, arg3, arg4, arg5);
2139 if (strcmp(sys_cmd,
"Mfrwalk") == 0)
2156 Werror(
"system(\"Mfrwalk\" ...) intvecs not of length %d or %d\n",
2161 ideal arg1 = (ideal)
h->Data();
2164 int arg4 = (int)(
long)
h->next->next->next->Data();
2165 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2166 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2167 ideal
result = (ideal)
Mfrwalk(arg1, arg2, arg3, arg4, arg5, arg6);
2174 if (strcmp(sys_cmd,
"Mprwalk") == 0)
2183 Werror(
"system(\"Mrwalk\" ...) intvecs not of length %d or %d\n",
2187 ideal arg1 = (ideal)
h->Data();
2190 int arg4 = (int)(
long)
h->next->next->next->Data();
2191 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2192 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2193 int arg7 = (int)(
long)
h->next->next->next->next->next->next->Data();
2194 int arg8 = (int)(
long)
h->next->next->next->next->next->next->next->Data();
2195 int arg9 = (int)(
long)
h->next->next->next->next->next->next->next->next->Data();
2196 ideal
result = (ideal)
Mprwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
2206 if (strcmp(sys_cmd,
"TranMImprovwalk") == 0)
2213 Werror(
"system(\"TranMImprovwalk\" ...) intvecs not of length %d\n",
2217 ideal arg1 = (ideal)
h->Data();
2230 if (strcmp(sys_cmd,
"MAltwalk2") == 0)
2237 Werror(
"system(\"MAltwalk2\" ...) intvecs not of length %d\n",
2241 ideal arg1 = (ideal)
h->Data();
2253 if (strcmp(sys_cmd,
"TranMImprovwalk") == 0)
2260 Werror(
"system(\"TranMImprovwalk\" ...) intvecs not of length %d\n",
2264 ideal arg1 = (ideal)
h->Data();
2267 int arg4 = (int) ((
long)(
h->next->next->next->Data()));
2278 if (strcmp(sys_cmd,
"TranMrImprovwalk") == 0)
2283 h->next->next->next ==
NULL ||
h->next->next->next->Typ() !=
INT_CMD ||
2284 h->next->next->next ==
NULL ||
h->next->next->next->next->Typ() !=
INT_CMD ||
2285 h->next->next->next ==
NULL ||
h->next->next->next->next->next->Typ() !=
INT_CMD)
2287 WerrorS(
"system(\"TranMrImprovwalk\", ideal, intvec, intvec) expected");
2293 Werror(
"system(\"TranMrImprovwalk\" ...) intvecs not of length %d\n",
currRing->N);
2296 ideal arg1 = (ideal)
h->Data();
2299 int arg4 = (int)(
long)
h->next->next->next->Data();
2300 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2301 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2302 ideal
result = (ideal) TranMrImprovwalk(arg1, arg2, arg3, arg4, arg5, arg6);
2312 #ifndef MAKE_DISTRIBUTION
poly pOppose(ring Rop_src, poly p, const ring Rop_dst)
opposes a vector p from Rop to currRing (dst!)
const CanonicalForm int s
intvec * MivMatrixOrder(intvec *iv)
poly nc_p_Bracket_qq(poly p, const poly q, const ring r)
returns [p,q], destroys p
void factoryseed(int s)
random seed initializer
Class used for (list of) interpreter objects.
static CanonicalForm bound(const CFMatrix &M)
matrix singntl_LLL(matrix m, const ring s)
intvec * Mfpertvector(ideal G, intvec *ivtarget)
static void * feOptValue(feOptIndex opt)
matrix evRowElim(matrix M, int i, int j, int k)
ideal Mpwalk(ideal Go, int op_deg, int tp_deg, intvec *curr_weight, intvec *target_weight, int nP, int reduction, int printout)
used for all transcendental extensions, i.e., the top-most extension in an extension tower is transce...
intvec * MivWeightOrderlp(intvec *ivstart)
BOOLEAN semicProc3(leftv res, leftv u, leftv v, leftv w)
static char * feResource(feResourceConfig config, int warn)
lists pcvPMulL(poly p, lists l1)
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
ideal id_TensorModuleMult(const int m, const ideal M, const ring rRing)
void HilbertSeries_OrbitData(ideal S, int lV, bool IG_CASE, bool mgrad, bool odp)
BOOLEAN spectrumProc(leftv result, leftv first)
int MivSame(intvec *u, intvec *v)
intvec * MivWeightOrderdp(intvec *ivstart)
BOOLEAN spmulProc(leftv result, leftv first, leftv second)
const char * feSetOptValue(feOptIndex opt, char *optarg)
void WerrorS(const char *s)
gmp_complex numbers based on
bool complexNearZero(gmp_complex *c, int digits)
void lduDecomp(const matrix aMat, matrix &pMat, matrix &lMat, matrix &dMat, matrix &uMat, poly &l, poly &u, poly &lTimesU)
LU-decomposition of a given (m x n)-matrix with performing only those divisions that yield zero remai...
matrix evSwap(matrix M, int i, int j)
intvec * MPertVectorslp(ideal G, intvec *ivtarget, int pdeg)
void printBlackboxTypes()
list all defined type (for debugging)
void feStringAppendBrowsers(int warn)
ideal Mfwalk(ideal G, intvec *ivstart, intvec *ivtarget, int reduction, int printout)
poly p_Shrink(poly p, int lV, const ring r)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static int rBlocks(ring r)
ideal MAltwalk1(ideal Go, int op_deg, int tp_deg, intvec *curr_weight, intvec *target_weight)
int pcvDim(int d0, int d1)
void newstructShow(newstruct_desc d)
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
void StringSetS(const char *st)
#define pLPshift(p, sh, uptodeg, lV)
#define pmLastVblock(p, lV)
int M3ivSame(intvec *temp, intvec *u, intvec *v)
const char feNotImplemented[]
struct fe_option feOptSpec[]
intvec * MwalkNextWeight(intvec *curr_weight, intvec *target_weight, ideal G)
ideal Mwalk(ideal Go, intvec *orig_M, intvec *target_M, ring baseRing, int reduction, int printout)
intvec * MPertNextWeight(intvec *iva, ideal G, int deg)
int simpleipc_cmd(char *cmd, int id, int v)
poly pcvCV2P(poly cv, int d0, int d1)
intvec * Mivperttarget(ideal G, int ndeg)
BOOLEAN spectrumfProc(leftv result, leftv first)
lists pcvLAddL(lists l1, lists l2)
int pcvBasis(lists b, int i, poly m, int d, int n)
intvec * MPertVectors(ideal G, intvec *ivtarget, int pdeg)
poly kNFBound(ideal F, ideal Q, poly p, int bound, int syzComp, int lazyReduce)
ideal freegb(ideal I, int uptodeg, int lVblock)
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
int ssiReservePort(int clients)
static BOOLEAN rField_is_long_C(const ring r)
#define BIMATELEM(M, I, J)
INLINE_THIS void Init(int l=0)
const Variable & v
< [in] a sqrfree bivariate poly
matrix evHessenberg(matrix M)
#define pLastVblock(p, lV)
lists evEigenvals(matrix M)
static BOOLEAN rField_is_Ring(const ring r)
BOOLEAN semicProc(leftv res, leftv u, leftv v)
bool luSolveViaLDUDecomp(const matrix pMat, const matrix lMat, const matrix dMat, const matrix uMat, const poly l, const poly u, const poly lTimesU, const matrix bVec, matrix &xVec, matrix &H)
Solves the linear system A * x = b, where A is an (m x n)-matrix which is given by its LDU-decomposit...
ideal TranMImprovwalk(ideal G, intvec *curr_weight, intvec *target_tmp, int nP)
BOOLEAN iiCheckTypes(leftv args, const short *type_list, int report)
check a list of arguemys against a given field of types return TRUE if the types match return FALSE (...
static BOOLEAN rField_is_long_R(const ring r)
int blackboxIsCmd(const char *n, int &tok)
used by scanner: returns ROOT_DECL for known types (and the type number in tok)
intvec * MivMatrixOrderdp(int nV)
ideal MAltwalk2(ideal Go, intvec *curr_weight, intvec *target_weight)
ideal Mrwalk(ideal Go, intvec *orig_M, intvec *target_M, int weight_rad, int pert_deg, int reduction, int printout)
poly pcvP2CV(poly p, int d0, int d1)
char * omFindExec(const char *name, char *exec)
BOOLEAN spaddProc(leftv result, leftv first, leftv second)
ideal idXXX(ideal h1, int k)
ideal singclap_absFactorize(poly f, ideal &mipos, intvec **exps, int &numFactors, const ring r)
BOOLEAN newstruct_set_proc(const char *bbname, const char *func, int args, procinfov pr)
ideal Mprwalk(ideal Go, intvec *orig_M, intvec *target_M, int weight_rad, int op_deg, int tp_deg, int nP, int reduction, int printout)
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
lists gmsNF(ideal p, ideal g, matrix B, int D, int K)
feOptIndex feGetOptIndex(const char *name)
void countedref_reference_load()
Initialize blackbox types 'reference' and 'shared', or both.
char * singclap_neworder(ideal I, const ring r)
ideal MwalkInitialForm(ideal G, intvec *ivw)
ideal Mfrwalk(ideal G, intvec *ivstart, intvec *ivtarget, int weight_rad, int reduction, int printout)
#define IMATELEM(M, I, J)
void Werror(const char *fmt,...)
intvec * MivMatrixOrderlp(int nV)
void countedref_shared_load()
blackbox * getBlackboxStuff(const int t)
return the structure to the type given by t
intvec * MkInterRedNextWeight(intvec *iva, intvec *ivb, ideal G)
ideal twostd(ideal I)
Compute two-sided GB: