233 const char *sys_cmd=(
char *)(args->
Data());
238 if (strcmp(sys_cmd,
"nblocks") == 0)
260 r = (ring)
h->Data();
267 if(strcmp(sys_cmd,
"version")==0)
275 if(strcmp(sys_cmd,
"alarm")==0)
282 struct itimerval t,o;
283 memset(&t,0,
sizeof(t));
284 t.it_value.tv_sec =(unsigned)((
unsigned long)
h->Data());
285 setitimer(ITIMER_VIRTUAL,&t,&o);
293 if(strcmp(sys_cmd,
"content")==0)
298 poly
p=(poly)
h->CopyD();
312 if(strcmp(sys_cmd,
"cpu")==0)
315 #ifdef _SC_NPROCESSORS_ONLN
316 cpu=sysconf(_SC_NPROCESSORS_ONLN);
317 #elif defined(_SC_NPROCESSORS_CONF)
318 cpu=sysconf(_SC_NPROCESSORS_CONF);
320 res->data=(
void *)cpu;
326 if(strcmp(sys_cmd,
"executable")==0)
341 if(strcmp(sys_cmd,
"flatten")==0)
354 if(strcmp(sys_cmd,
"unflatten")==0)
367 if(strcmp(sys_cmd,
"neworder")==0)
381 if(strcmp(sys_cmd,
"nc_hilb") == 0)
389 i = (ideal)
h->Data();
392 WerrorS(
"nc_Hilb:ideal expected");
397 lV = (int)(
long)
h->Data();
400 WerrorS(
"nc_Hilb:int expected");
406 if((
int)(
long)
h->Data() == 1)
408 else if((
int)(
long)
h->Data() == 2)
413 trunDegHs = (int)(
long)
h->Data();
418 WerrorS(
"nc_Hilb:int 1,2, total degree for the truncation, and a string for printing the details are expected");
427 if(strcmp(sys_cmd,
"verifyGB")==0)
431 WerrorS(
"system(\"verifyGB\",<ideal>,..) expects a commutative ring");
436 WerrorS(
"expected system(\"verifyGB\",<ideal>,..)");
439 ideal F=(ideal)
h->Data();
456 if(strcmp(sys_cmd,
"rcolon") == 0)
461 ideal
i = (ideal)
h->Data();
463 poly
w=(poly)
h->Data();
465 int lV = (int)(
long)
h->Data();
476 if(strcmp(sys_cmd,
"sh")==0)
480 WerrorS(
"shell execution is disallowed in restricted mode");
486 res->data = (
void*)(
long)
system((
char*)(
h->Data()));
493 if(strcmp(sys_cmd,
"reduce_bound")==0)
503 p = (poly)
h->CopyD();
507 pid = (ideal)
h->CopyD();
512 ideal q = (ideal)
h->next->CopyD();
513 int bound = (int)(
long)
h->next->next->Data();
522 if(strcmp(sys_cmd,
"uname")==0)
530 if(strcmp(sys_cmd,
"with")==0)
540 #define TEST_FOR(A) if(strcmp(s,A)==0) res->data=(void *)1; else
541 char *
s=(
char *)
h->Data();
554 #ifdef TEST_MAC_ORDER
559 #ifdef HAVE_DYNAMIC_LOADING
582 if (strcmp(sys_cmd,
"browsers")==0)
592 if (strcmp(sys_cmd,
"pid")==0)
595 res->data=(
void *)(
long) getpid();
600 if (strcmp(sys_cmd,
"getenv")==0)
605 const char *r=
getenv((
char *)
h->Data());
618 if (strcmp(sys_cmd,
"setenv")==0)
625 setenv((
char *)
h->Data(), (
char *)
h->next->Data(), 1);
635 WerrorS(
"setenv not supported on this platform");
641 if (strcmp(sys_cmd,
"Singular") == 0)
650 if (strcmp(sys_cmd,
"SingularLib") == 0)
659 if (strcmp(sys_cmd,
"SingularBin") == 0)
663 if (r ==
NULL) r=
"/usr/local";
666 #define SINGULAR_PROCS_DIR "/libexec/singular/MOD"
669 if ((strstr(r,
".libs/..")==
NULL)
670 &&(strstr(r,
"Singular/..")==
NULL))
674 if (access(
s,X_OK)==0)
681 strcpy(
s,LIBEXEC_DIR);
682 if (access(
s,X_OK)==0)
705 res->data = (
void*)
s;
710 if (strstr(sys_cmd,
"--") == sys_cmd)
712 if (strcmp(sys_cmd,
"--") == 0)
720 Werror(
"Unknown option %s", sys_cmd);
721 WerrorS(
"Use 'system(\"--\");' for listing of available options");
736 const char *r=(
const char*)
feOptSpec[opt].value;
750 WerrorS(
"Need string or int argument to set option value");
753 const char* errormsg;
758 Werror(
"Need string argument to set value of option %s", sys_cmd);
762 if (errormsg !=
NULL)
763 Werror(
"Option '--%s=%d' %s", sys_cmd, (
int) ((
long)
h->Data()), errormsg);
768 if (errormsg !=
NULL)
769 Werror(
"Option '--%s=%s' %s", sys_cmd, (
char*)
h->Data(), errormsg);
776 if (strcmp(sys_cmd,
"HC")==0)
784 if(strcmp(sys_cmd,
"random")==0)
807 if (strcmp(sys_cmd,
"denom_list")==0)
816 if(strcmp(sys_cmd,
"complexNearZero")==0)
823 WerrorS(
"unsupported ground field!");
830 (int)((
long)(
h->next->Data())));
841 if(strcmp(sys_cmd,
"getPrecDigits")==0)
846 WerrorS(
"unsupported ground field!");
857 if(strcmp(sys_cmd,
"lduDecomp")==0)
864 poly
l; poly u; poly prodLU;
865 lduDecomp(aMat, pMat, lMat, dMat, uMat,
l, u, prodLU);
876 res->data = (
char *)L;
886 if(strcmp(sys_cmd,
"lduSolve")==0)
920 poly
l = (poly)
h->next->next->next->next->Data();
921 poly u = (poly)
h->next->next->next->next->next->Data();
922 poly lTimesU = (poly)
h->next->next->next->next->next->next->Data();
923 matrix bVec = (
matrix)
h->next->next->next->next->next->next->next->Data();
927 Werror(
"first matrix (%d x %d) is not quadratic",
933 Werror(
"second matrix (%d x %d) is not quadratic",
939 Werror(
"third matrix (%d x %d) is not quadratic",
945 Werror(
"third matrix (%d x %d) and fourth matrix (%d x %d) %s",
952 Werror(
"fourth matrix (%d x %d) and vector (%d x 1) do not fit",
957 bVec, xVec, homogSolSpace);
980 if (strcmp(sys_cmd,
"shared") == 0)
982 #ifndef SI_COUNTEDREF_AUTOLOAD
989 else if (strcmp(sys_cmd,
"reference") == 0)
991 #ifndef SI_COUNTEDREF_AUTOLOAD
1000 #ifdef HAVE_SIMPLEIPC
1001 if (strcmp(sys_cmd,
"semaphore")==0)
1006 if ((
h->next->next!=
NULL)&& (
h->next->next->Typ()==
INT_CMD))
1007 v=(int)(
long)
h->next->next->Data();
1014 WerrorS(
"Usage: system(\"semaphore\",<cmd>,int)");
1021 if (strcmp(sys_cmd,
"reserve")==0)
1029 res->data=(
void*)(
long)
p;
1036 if (strcmp(sys_cmd,
"reservedLink")==0)
1045 if (strcmp(sys_cmd,
"install")==0)
1051 (
int)(
long)
h->next->next->next->Data(),
1058 if (strcmp(sys_cmd,
"newstruct")==0)
1064 char *n=(
char*)
h->Data();
1071 newstruct_desc desc=(newstruct_desc)bb->data;
1075 else Werror(
"'%s' is not a newstruct",n);
1077 else Werror(
"'%s' is not a blackbox object",n);
1083 if (strcmp(sys_cmd,
"blackbox")==0)
1090 #if defined(HAVE_FLINT) || defined(HAVE_NTL)
1091 if (strcmp(sys_cmd,
"absFact") == 0)
1108 l->m[0].data=(
void *)
f;
1110 l->m[1].data=(
void *)
v;
1112 l->m[2].data=(
void*) mipos;
1114 l->m[3].data=(
void*) (
long) n;
1115 res->data=(
void *)
l;
1124 if (strcmp(sys_cmd,
"LLL") == 0)
1147 #if __FLINT_RELEASE >= 20500
1148 if (strcmp(sys_cmd,
"LLL_Flint") == 0)
1169 WerrorS(
"matrix,int or bigint,int expected");
1174 if(((
int)((
long)(
h->next->Data())) != 0) && (
int)((
long)(
h->next->Data()) != 1))
1176 WerrorS(
"int is different from 0, 1");
1180 if((
long)(
h->next->Data()) == 0)
1195 if((
long)(
h->next->Data()) == 1)
1201 for(
int i = 1;
i<=
m->rows();
i++)
1219 for(
int i = 1;
i<=
m->rows();
i++)
1242 if(strcmp(sys_cmd,
"rref")==0)
1254 WerrorS(
"expected system(\"rref\",<matrix>)");
1262 if(strcmp(sys_cmd,
"pcvLAddL")==0)
1267 if(strcmp(sys_cmd,
"pcvPMulL")==0)
1272 if(strcmp(sys_cmd,
"pcvMinDeg")==0)
1277 if(strcmp(sys_cmd,
"pcvP2CV")==0)
1282 if(strcmp(sys_cmd,
"pcvCV2P")==0)
1287 if(strcmp(sys_cmd,
"pcvDim")==0)
1292 if(strcmp(sys_cmd,
"pcvBasis")==0)
1299 #ifdef HAVE_EIGENVAL
1300 if(strcmp(sys_cmd,
"hessenberg")==0)
1307 #ifdef HAVE_EIGENVAL
1308 if(strcmp(sys_cmd,
"eigenvals")==0)
1315 #ifdef HAVE_EIGENVAL
1316 if(strcmp(sys_cmd,
"rowelim")==0)
1323 #ifdef HAVE_EIGENVAL
1324 if(strcmp(sys_cmd,
"rowcolswap")==0)
1332 if(strcmp(sys_cmd,
"gmsnf")==0)
1339 if(strcmp(sys_cmd,
"contributors") == 0)
1343 "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");
1348 #ifdef HAVE_SPECTRUM
1349 if(strcmp(sys_cmd,
"spectrum") == 0)
1363 if(((
long)
h->next->Data())==1L)
1369 if(strcmp(sys_cmd,
"semic") == 0)
1375 if (
h->next->next==
NULL)
1377 else if (
h->next->next->Typ()==
INT_CMD)
1384 if(strcmp(sys_cmd,
"spadd") == 0)
1395 if(strcmp(sys_cmd,
"spmul") == 0)
1407 #define HAVE_SHEAFCOH_TRICKS 1
1409 #ifdef HAVE_SHEAFCOH_TRICKS
1410 if(strcmp(sys_cmd,
"tensorModuleMult")==0)
1416 int m = (int)( (
long)
h->Data() );
1417 ideal
M = (ideal)
h->next->Data();
1428 if (strcmp(sys_cmd,
"twostd") == 0)
1433 I=(ideal)
h->CopyD();
1447 if (strcmp(sys_cmd,
"bracket") == 0)
1452 poly
p=(poly)
h->CopyD();
1454 poly q=(poly)
h->Data();
1465 if (strcmp(sys_cmd,
"env")==0)
1469 ring r = (ring)
h->Data();
1476 WerrorS(
"`system(\"env\",<ring>)` expected");
1484 if (strcmp(sys_cmd,
"opp")==0)
1488 ring r=(ring)
h->Data();
1495 WerrorS(
"`system(\"opp\",<ring>)` expected");
1503 if (strcmp(sys_cmd,
"oppose")==0)
1506 && (
h->next!=
NULL))
1508 ring Rop = (ring)
h->Data();
1521 WerrorS(
"`system(\"oppose\",<ring>,<poly>)` expected");
1531 if (strcmp(sys_cmd,
"walkNextWeight") == 0)
1538 Werror(
"system(\"walkNextWeight\" ...) intvecs not of length %d\n",
1542 res->data = (
void*) walkNextWeight(((
intvec*)
h->Data()),
1544 (ideal)
h->next->next->Data());
1545 if (
res->data ==
NULL ||
res->data == (
void*) 1L)
1561 if (strcmp(sys_cmd,
"walkInitials") == 0)
1565 WerrorS(
"system(\"walkInitials\", ideal) expected");
1568 res->data = (
void*) walkInitials((ideal)
h->Data());
1578 if (strcmp(sys_cmd,
"walkAddIntVec") == 0)
1584 res->data = (
intvec*) walkAddIntVec(arg1, arg2);
1593 #ifdef MwaklNextWeight
1594 if (strcmp(sys_cmd,
"MwalkNextWeight") == 0)
1601 Werror(
"system(\"MwalkNextWeight\" ...) intvecs not of length %d\n",
1607 ideal arg3 = (ideal)
h->next->next->Data();
1618 if(strcmp(sys_cmd,
"Mivdp") == 0)
1622 WerrorS(
"system(\"Mivdp\", int) expected");
1625 if ((
int) ((
long)(
h->Data())) !=
currRing->N)
1627 Werror(
"system(\"Mivdp\" ...) intvecs not of length %d\n",
1631 int arg1 = (int) ((
long)(
h->Data()));
1641 if(strcmp(sys_cmd,
"Mivlp") == 0)
1645 WerrorS(
"system(\"Mivlp\", int) expected");
1648 if ((
int) ((
long)(
h->Data())) !=
currRing->N)
1650 Werror(
"system(\"Mivlp\" ...) intvecs not of length %d\n",
1654 int arg1 = (int) ((
long)(
h->Data()));
1665 if(strcmp(sys_cmd,
"MpDiv") == 0)
1669 poly arg1 = (poly)
h->Data();
1670 poly arg2 = (poly)
h->next->Data();
1671 poly
result = MpDiv(arg1, arg2);
1682 if(strcmp(sys_cmd,
"MpMult") == 0)
1686 poly arg1 = (poly)
h->Data();
1687 poly arg2 = (poly)
h->next->Data();
1688 poly
result = MpMult(arg1, arg2);
1698 if (strcmp(sys_cmd,
"MivSame") == 0)
1719 res->data = (
void*)(
long)
MivSame(arg1, arg2);
1726 if (strcmp(sys_cmd,
"M3ivSame") == 0)
1749 res->data = (
void*)(
long)
M3ivSame(arg1, arg2, arg3);
1756 if(strcmp(sys_cmd,
"MwalkInitialForm") == 0)
1762 Werror(
"system \"MwalkInitialForm\"...) intvec not of length %d\n",
1766 ideal
id = (ideal)
h->Data();
1778 if(strcmp(sys_cmd,
"MivMatrixOrder") == 0)
1782 WerrorS(
"system(\"MivMatrixOrder\",intvec) expected");
1795 if(strcmp(sys_cmd,
"MivMatrixOrderdp") == 0)
1799 WerrorS(
"system(\"MivMatrixOrderdp\",intvec) expected");
1802 int arg1 = (int) ((
long)(
h->Data()));
1812 if(strcmp(sys_cmd,
"MPertVectors") == 0)
1816 ideal arg1 = (ideal)
h->Data();
1818 int arg3 = (int) ((
long)(
h->next->next->Data()));
1828 if(strcmp(sys_cmd,
"MPertVectorslp") == 0)
1832 ideal arg1 = (ideal)
h->Data();
1834 int arg3 = (int) ((
long)(
h->next->next->Data()));
1844 if(strcmp(sys_cmd,
"Mfpertvector") == 0)
1848 ideal arg1 = (ideal)
h->Data();
1859 if(strcmp(sys_cmd,
"MivUnit") == 0)
1863 int arg1 = (int) ((
long)(
h->Data()));
1873 if(strcmp(sys_cmd,
"MivWeightOrderlp") == 0)
1887 if(strcmp(sys_cmd,
"MivWeightOrderdp") == 0)
1891 WerrorS(
"system(\"MivWeightOrderdp\",intvec) expected");
1905 if(strcmp(sys_cmd,
"MivMatrixOrderlp") == 0)
1909 WerrorS(
"system(\"MivMatrixOrderlp\",int) expected");
1912 int arg1 = (int) ((
long)(
h->Data()));
1922 if (strcmp(sys_cmd,
"MkInterRedNextWeight") == 0)
1929 Werror(
"system(\"MkInterRedNextWeight\" ...) intvecs not of length %d\n",
1935 ideal arg3 = (ideal)
h->next->next->Data();
1945 #ifdef MPertNextWeight
1946 if (strcmp(sys_cmd,
"MPertNextWeight") == 0)
1952 Werror(
"system(\"MPertNextWeight\" ...) intvecs not of length %d\n",
1957 ideal arg2 = (ideal)
h->next->Data();
1958 int arg3 = (int)
h->next->next->Data();
1969 #ifdef Mivperttarget
1970 if (strcmp(sys_cmd,
"Mivperttarget") == 0)
1974 ideal arg1 = (ideal)
h->Data();
1975 int arg2 = (int)
h->next->Data();
1986 if (strcmp(sys_cmd,
"Mwalk") == 0)
1993 Werror(
"system(\"Mwalk\" ...) intvecs not of length %d\n",
1997 ideal arg1 = (ideal)
h->CopyD();
2000 ring arg4 = (ring)
h->next->next->next->Data();
2001 int arg5 = (int) (
long)
h->next->next->next->next->Data();
2002 int arg6 = (int) (
long)
h->next->next->next->next->next->Data();
2003 ideal
result = (ideal)
Mwalk(arg1, arg2, arg3, arg4, arg5, arg6);
2013 if (strcmp(sys_cmd,
"Mwalk") == 0)
2022 Werror(
"system(\"Mwalk\" ...) intvecs not of length %d or %d\n",
2026 ideal arg1 = (ideal)
h->Data();
2029 ring arg4 = (ring)
h->next->next->next->Data();
2030 ideal
result = (ideal)
Mwalk(arg1, arg2, arg3,arg4);
2037 if (strcmp(sys_cmd,
"Mpwalk") == 0)
2044 Werror(
"system(\"Mpwalk\" ...) intvecs not of length %d\n",
currRing->N);
2047 ideal arg1 = (ideal)
h->Data();
2048 int arg2 = (int) (
long)
h->next->Data();
2049 int arg3 = (int) (
long)
h->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 int arg8 = (int) (
long)
h->next->next->next->next->next->next->next->Data();
2055 ideal
result = (ideal)
Mpwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
2065 if (strcmp(sys_cmd,
"Mrwalk") == 0)
2074 Werror(
"system(\"Mrwalk\" ...) intvecs not of length %d or %d\n",
2078 ideal arg1 = (ideal)
h->Data();
2081 int arg4 = (int)(
long)
h->next->next->next->Data();
2082 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2083 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2084 int arg7 = (int)(
long)
h->next->next->next->next->next->next->Data();
2085 ideal
result = (ideal)
Mrwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7);
2094 if (strcmp(sys_cmd,
"MAltwalk1") == 0)
2101 Werror(
"system(\"MAltwalk1\" ...) intvecs not of length %d\n",
2105 ideal arg1 = (ideal)
h->Data();
2106 int arg2 = (int) ((
long)(
h->next->Data()));
2107 int arg3 = (int) ((
long)(
h->next->next->Data()));
2120 if (strcmp(sys_cmd,
"Mfwalk_alt") == 0)
2127 Werror(
"system(\"Mfwalk\" ...) intvecs not of length %d\n",
2131 ideal arg1 = (ideal)
h->Data();
2134 int arg4 = (int)
h->next->next->next->Data();
2135 ideal
result = (ideal) Mfwalk_alt(arg1, arg2, arg3, arg4);
2145 if (strcmp(sys_cmd,
"Mfwalk") == 0)
2152 Werror(
"system(\"Mfwalk\" ...) intvecs not of length %d\n",
2156 ideal arg1 = (ideal)
h->Data();
2159 int arg4 = (int)(
long)
h->next->next->next->Data();
2160 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2161 ideal
result = (ideal)
Mfwalk(arg1, arg2, arg3, arg4, arg5);
2170 if (strcmp(sys_cmd,
"Mfrwalk") == 0)
2187 Werror(
"system(\"Mfrwalk\" ...) intvecs not of length %d or %d\n",
2192 ideal arg1 = (ideal)
h->Data();
2195 int arg4 = (int)(
long)
h->next->next->next->Data();
2196 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2197 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2198 ideal
result = (ideal)
Mfrwalk(arg1, arg2, arg3, arg4, arg5, arg6);
2205 if (strcmp(sys_cmd,
"Mprwalk") == 0)
2214 Werror(
"system(\"Mrwalk\" ...) intvecs not of length %d or %d\n",
2218 ideal arg1 = (ideal)
h->Data();
2221 int arg4 = (int)(
long)
h->next->next->next->Data();
2222 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2223 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2224 int arg7 = (int)(
long)
h->next->next->next->next->next->next->Data();
2225 int arg8 = (int)(
long)
h->next->next->next->next->next->next->next->Data();
2226 int arg9 = (int)(
long)
h->next->next->next->next->next->next->next->next->Data();
2227 ideal
result = (ideal)
Mprwalk(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
2237 if (strcmp(sys_cmd,
"TranMImprovwalk") == 0)
2244 Werror(
"system(\"TranMImprovwalk\" ...) intvecs not of length %d\n",
2248 ideal arg1 = (ideal)
h->Data();
2261 if (strcmp(sys_cmd,
"MAltwalk2") == 0)
2268 Werror(
"system(\"MAltwalk2\" ...) intvecs not of length %d\n",
2272 ideal arg1 = (ideal)
h->Data();
2284 if (strcmp(sys_cmd,
"TranMImprovwalk") == 0)
2291 Werror(
"system(\"TranMImprovwalk\" ...) intvecs not of length %d\n",
2295 ideal arg1 = (ideal)
h->Data();
2298 int arg4 = (int) ((
long)(
h->next->next->next->Data()));
2309 if (strcmp(sys_cmd,
"TranMrImprovwalk") == 0)
2314 h->next->next->next ==
NULL ||
h->next->next->next->Typ() !=
INT_CMD ||
2315 h->next->next->next ==
NULL ||
h->next->next->next->next->Typ() !=
INT_CMD ||
2316 h->next->next->next ==
NULL ||
h->next->next->next->next->next->Typ() !=
INT_CMD)
2318 WerrorS(
"system(\"TranMrImprovwalk\", ideal, intvec, intvec) expected");
2324 Werror(
"system(\"TranMrImprovwalk\" ...) intvecs not of length %d\n",
currRing->N);
2327 ideal arg1 = (ideal)
h->Data();
2330 int arg4 = (int)(
long)
h->next->next->next->Data();
2331 int arg5 = (int)(
long)
h->next->next->next->next->Data();
2332 int arg6 = (int)(
long)
h->next->next->next->next->next->Data();
2333 ideal
result = (ideal) TranMrImprovwalk(arg1, arg2, arg3, arg4, arg5, arg6);
2343 #ifndef MAKE_DISTRIBUTION
static int si_max(const int a, const int b)
#define BIMATELEM(M, I, J)
blackbox * getBlackboxStuff(const int t)
return the structure to the type given by t
int blackboxIsCmd(const char *n, int &tok)
used by scanner: returns ROOT_DECL for known types (and the type number in tok)
void printBlackboxTypes()
list all defined type (for debugging)
static CanonicalForm bound(const CFMatrix &M)
void factoryseed(int s)
random seed initializer
char * singclap_neworder(ideal I, const ring r)
matrix singntl_LLL(matrix m, const ring s)
ideal singclap_absFactorize(poly f, ideal &mipos, intvec **exps, int &numFactors, const ring r)
gmp_complex numbers based on
@ n_transExt
used for all transcendental extensions, i.e., the top-most extension in an extension tower is transce...
static FORCE_INLINE BOOLEAN nCoeff_is_Ring(const coeffs r)
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
void countedref_reference_load()
Initialize blackbox types 'reference' and 'shared', or both.
void countedref_shared_load()
matrix evRowElim(matrix M, int i, int j, int k)
matrix evHessenberg(matrix M)
matrix evSwap(matrix M, int i, int j)
lists evEigenvals(matrix M)
const char * feSetOptValue(feOptIndex opt, char *optarg)
feOptIndex feGetOptIndex(const char *name)
EXTERN_VAR struct fe_option feOptSpec[]
static char * feResource(feResourceConfig config, int warn)
void feStringAppendBrowsers(int warn)
bigintmat * singflint_LLL(bigintmat *A, bigintmat *T)
matrix singflint_rref(matrix m, const ring R)
lists gmsNF(ideal p, ideal g, matrix B, int D, int K)
void HilbertSeries_OrbitData(ideal S, int lV, bool IG_CASE, bool mgrad, bool odp, int trunDegHs)
ideal RightColonOperation(ideal S, poly w, int lV)
ideal id_TensorModuleMult(const int m, const ideal M, const ring rRing)
static BOOLEAN length(leftv result, leftv arg)
#define IMATELEM(M, I, J)
BOOLEAN spaddProc(leftv result, leftv first, leftv second)
BOOLEAN semicProc3(leftv res, leftv u, leftv v, leftv w)
BOOLEAN spectrumfProc(leftv result, leftv first)
BOOLEAN spmulProc(leftv result, leftv first, leftv second)
BOOLEAN spectrumProc(leftv result, leftv first)
BOOLEAN semicProc(leftv res, leftv u, leftv v)
poly kNFBound(ideal F, ideal Q, poly p, int bound, int syzComp, int lazyReduce)
BOOLEAN kVerify2(ideal F, ideal Q)
BOOLEAN kVerify1(ideal F, ideal Q)
poly pOppose(ring Rop_src, poly p, const ring Rop_dst)
opposes a vector p from Rop to currRing (dst!)
poly nc_p_Bracket_qq(poly p, const poly q, const ring r)
returns [p,q], destroys p
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...
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...
ideal sm_UnFlatten(ideal a, int col, const ring R)
ideal sm_Flatten(ideal a, const ring R)
EXTERN_VAR size_t gmp_output_digits
bool complexNearZero(gmp_complex *c, int digits)
ideal twostd(ideal I)
Compute two-sided GB:
void newstructShow(newstruct_desc d)
BOOLEAN newstruct_set_proc(const char *bbname, const char *func, int args, procinfov pr)
char * omFindExec(const char *name, char *exec)
void p_Content(poly ph, const ring r)
poly p_Cleardenom(poly p, const ring r)
poly pcvP2CV(poly p, int d0, int d1)
int pcvBasis(lists b, int i, poly m, int d, int n)
int pcvDim(int d0, int d1)
lists pcvPMulL(poly p, lists l1)
poly pcvCV2P(poly cv, int d0, int d1)
lists pcvLAddL(lists l1, lists l2)
void StringSetS(const char *st)
static int rBlocks(ring r)
static BOOLEAN rField_is_long_C(const ring r)
static BOOLEAN rIsNCRing(const ring r)
#define rField_is_Ring(R)
int simpleipc_cmd(char *cmd, int id, int v)
int ssiReservePort(int clients)
int M3ivSame(intvec *temp, intvec *u, intvec *v)
intvec * MivMatrixOrderlp(int nV)
intvec * MivMatrixOrder(intvec *iv)
intvec * MkInterRedNextWeight(intvec *iva, intvec *ivb, ideal G)
intvec * Mfpertvector(ideal G, intvec *ivtarget)
ideal TranMImprovwalk(ideal G, intvec *curr_weight, intvec *target_tmp, int nP)
ideal Mfwalk(ideal G, intvec *ivstart, intvec *ivtarget, int reduction, int printout)
intvec * MPertVectors(ideal G, intvec *ivtarget, int pdeg)
intvec * MPertVectorslp(ideal G, intvec *ivtarget, int pdeg)
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)
intvec * MivWeightOrderdp(intvec *ivstart)
intvec * MivMatrixOrderdp(int nV)
intvec * MivWeightOrderlp(intvec *ivstart)
ideal MAltwalk2(ideal Go, intvec *curr_weight, intvec *target_weight)
ideal MAltwalk1(ideal Go, int op_deg, int tp_deg, 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)
ideal Mfrwalk(ideal G, intvec *ivstart, intvec *ivtarget, int weight_rad, int reduction, int printout)
ideal Mwalk(ideal Go, intvec *orig_M, intvec *target_M, ring baseRing, int reduction, int printout)
ideal Mpwalk(ideal Go, int op_deg, int tp_deg, intvec *curr_weight, intvec *target_weight, int nP, int reduction, int printout)
int MivSame(intvec *u, intvec *v)
ideal MwalkInitialForm(ideal G, intvec *ivw)
intvec * MPertNextWeight(intvec *iva, ideal G, int deg)
intvec * MwalkNextWeight(intvec *curr_weight, intvec *target_weight, ideal G)
intvec * Mivperttarget(ideal G, int ndeg)