 |
My Project
debian-1:4.1.2-p1+ds-2
|
Go to the source code of this file.
|
static BOOLEAN | jjECHO (leftv, leftv a) |
|
static BOOLEAN | jjPRINTLEVEL (leftv, leftv a) |
|
static BOOLEAN | jjCOLMAX (leftv, leftv a) |
|
static BOOLEAN | jjTIMER (leftv, leftv a) |
|
static BOOLEAN | jjRTIMER (leftv, leftv a) |
|
static BOOLEAN | jjMAXDEG (leftv, leftv a) |
|
static BOOLEAN | jjMAXMULT (leftv, leftv a) |
|
static BOOLEAN | jjTRACE (leftv, leftv a) |
|
static BOOLEAN | jjSHORTOUT (leftv, leftv a) |
|
static void | jjMINPOLY_red (idhdl h) |
|
static BOOLEAN | jjMINPOLY (leftv, leftv a) |
|
static BOOLEAN | jjNOETHER (leftv, leftv a) |
|
static void | jiAssignAttr (leftv l, leftv r) |
|
static BOOLEAN | jiA_INT (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_NUMBER (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_BIGINT (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_LIST_RES (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_LIST (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_POLY (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_1x1INTMAT (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_1x1MATRIX (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_STRING (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_PROC (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_INTVEC (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_BIGINTMAT (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_BUCKET (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_IDEAL (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_RESOLUTION (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_MODUL_P (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_IDEAL_M (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_IDEAL_Mo (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_LINK (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_MAP (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_MAP_ID (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_QRING (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_RING (leftv res, leftv a, Subexpr e) |
|
static BOOLEAN | jiA_PACKAGE (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiA_DEF (leftv res, leftv, Subexpr) |
|
static BOOLEAN | jiA_CRING (leftv res, leftv a, Subexpr) |
|
static BOOLEAN | jiAssign_1 (leftv l, leftv r, BOOLEAN toplevel) |
|
static BOOLEAN | iiAssign_sys (leftv l, leftv r) |
|
static BOOLEAN | jiA_INTVEC_L (leftv l, leftv r) |
|
static BOOLEAN | jiA_VECTOR_L (leftv l, leftv r) |
|
static BOOLEAN | jjA_L_LIST (leftv l, leftv r) |
|
static BOOLEAN | jjA_L_INTVEC (leftv l, leftv r, intvec *iv) |
|
static BOOLEAN | jjA_L_BIGINTMAT (leftv l, leftv r, bigintmat *bim) |
|
static BOOLEAN | jjA_L_STRING (leftv l, leftv r) |
|
static BOOLEAN | jiA_MATRIX_L (leftv l, leftv r) |
|
static BOOLEAN | jiA_STRING_L (leftv l, leftv r) |
|
static BOOLEAN | jiAssign_list (leftv l, leftv r) |
|
static BOOLEAN | jiAssign_rec (leftv l, leftv r) |
|
BOOLEAN | iiAssign (leftv l, leftv r, BOOLEAN toplevel) |
|
void | jjNormalizeQRingId (leftv I) |
|
void | jjNormalizeQRingP (poly &p) |
|
BOOLEAN | jjIMPORTFROM (leftv, leftv u, leftv v) |
|
◆ IPASSIGN
◆ NULL_VAL
◆ TRANSEXT_PRIVATES
#define TRANSEXT_PRIVATES |
◆ iiAssign()
Definition at line 1829 of file ipassign.cc.
1833 int ll=
l->listLength();
1840 Werror(
"`%s` is read-only",
l->Name());
1850 else if (
l->attribute!=
NULL)
1878 if(bb->blackbox_CheckAssign(bb,
l,r))
return TRUE;
1881 if((!
b) && (like_lists==2))
1905 #ifdef BLACKBOX_DEVEL
1906 Print(
"bb-assign: bb=%lx\n",bb);
1908 return (bb==
NULL) || bb->blackbox_Assign(
l,r);
1996 Werror(
"length of lists in assignment does not match (l:%d,r:%d)",
2031 WerrorS(
"expected ring-name");
2037 WerrorS(
"expected image ideal");
2057 char *pr=((
map)olm)->preimage;
2074 Warn(
"expression list length(%d) does not match matrix size(%d)",el,
num);
2130 for(
k=0;
k<
j;
k++,
i++)
2156 if (module_assign) lm->
rank=rk;
2157 else if (map_assign) ((
map)lm)->preimage=pr;
2175 Werror(
"cannot assign to %s",
l->Fullname());
◆ iiAssign_sys()
◆ jiA_1x1INTMAT()
◆ jiA_1x1MATRIX()
◆ jiA_BIGINT()
Definition at line 575 of file ipassign.cc.
589 Werror(
"index[%d] must be positive",
i+1);
595 WerrorS(
"only one index given");
600 int c=e->next->start;
601 if ((
i>=iv->
rows())||(c<1)||(c>iv->
cols()))
603 Werror(
"wrong range [%d,%d] in bigintmat %s(%d,%d)",
i+1,c,
res->Name(),iv->
rows(),iv->
cols());
◆ jiA_BIGINTMAT()
◆ jiA_BUCKET()
◆ jiA_CRING()
◆ jiA_DEF()
◆ jiA_IDEAL()
◆ jiA_IDEAL_M()
◆ jiA_IDEAL_Mo()
Definition at line 887 of file ipassign.cc.
893 Werror(
"rank of module is %ld in assignment to ideal",
m->rank);
◆ jiA_INT()
Definition at line 347 of file ipassign.cc.
360 Werror(
"index[%d] must be positive",
i+1);
369 (*iv1)[
i]=(int)((
long)(a->
Data()));
373 res->data=(
void *)ivn;
376 (*iv)[
i]=(int)((
long)(a->
Data()));
380 int c=e->next->start;
381 if ((
i>=iv->
rows())||(c<1)||(c>iv->
cols()))
383 Werror(
"wrong range [%d,%d] in intmat %s(%d,%d)",
i+1,c,
res->Name(),iv->
rows(),iv->
cols());
◆ jiA_INTVEC()
◆ jiA_INTVEC_L()
◆ jiA_LINK()
◆ jiA_LIST()
◆ jiA_LIST_RES()
Definition at line 615 of file ipassign.cc.
620 int add_row_shift = 0;
622 if (weights!=
NULL) add_row_shift=weights->
min_in();
◆ jiA_MAP()
◆ jiA_MAP_ID()
◆ jiA_MATRIX_L()
Definition at line 1626 of file ipassign.cc.
1637 memset(&t,0,
sizeof(
sleftv));
1643 while ((
i<mxn )&&(
l!=
NULL))
1669 WarnS(
"list length mismatch in assign (l>r)");
1676 WarnS(
"list length mismatch in assign (l<r)");
◆ jiA_MODUL_P()
◆ jiA_NUMBER()
◆ jiA_PACKAGE()
◆ jiA_POLY()
◆ jiA_PROC()
Definition at line 771 of file ipassign.cc.
775 const char *procname,
int line,
◆ jiA_QRING()
Definition at line 952 of file ipassign.cc.
962 ring old_ring=(ring)
res->Data();
965 ideal
id = (ideal)a->
Data();
979 if (
qr->cf != newcf )
993 int *perm = (
int *)
omAlloc0((
qr->N+1)*
sizeof(int));
1036 Warn(
"%s is no twosided standard basis",a->
Name());
◆ jiA_RESOLUTION()
◆ jiA_RING()
◆ jiA_STRING()
Definition at line 749 of file ipassign.cc.
754 void* tmp =
res->data;
761 char *
s=(
char *)
res->data;
762 if ((e->start>0)&&(e->start<=(int)strlen(
s)))
763 s[e->start-1]=(char)(*((
char *)a->
Data()));
766 Werror(
"string index %d out of range 1..%d",e->start,(
int)strlen(
s));
◆ jiA_STRING_L()
◆ jiA_VECTOR_L()
◆ jiAssign_1()
Definition at line 1115 of file ipassign.cc.
1135 WarnS(
"right side is not a datum, assignment ignored");
1162 else if (
l->name!=
NULL)
1191 WerrorS(
"error in assign: left side is not an l-value");
1197 #ifdef BLACKBOX_DEVEL
1198 Print(
"bb-assign: bb=%lx\n",bb);
1200 return (bb==
NULL) || bb->blackbox_Assign(
l,r);
1265 Werror(
"`%s`(%s) = `%s` is not supported",
1268 Werror(
"`%s` = `%s` is not supported"
1277 Werror(
"expected `%s` = `%s`"
◆ jiAssign_list()
Definition at line 1738 of file ipassign.cc.
1741 int i=
l->e->start-1;
1744 Werror(
"index[%d] must be positive",
i+1);
1747 if(
l->attribute!=
NULL)
1769 memset(&(li->
m[li->
nr+1]),0,(
i-li->
nr)*
sizeof(
sleftv));
1779 memset(&tmp,0,
sizeof(
sleftv));
1782 && (ld->
Typ()!=r->
Typ()))
1787 memcpy(ld,&tmp,
sizeof(
sleftv));
1789 else if ((ld->
e==
NULL)
1797 memcpy(ld,&tmp,
sizeof(
sleftv));
1802 if (
l->e!=
NULL)
l->e->next=ld->
e;
◆ jiAssign_rec()
◆ jiAssignAttr()
◆ jjA_L_BIGINTMAT()
Definition at line 1543 of file ipassign.cc.
1556 Warn(
"expression list length(%d) does not match bigintmat size(%d x %d)",
1569 bim->
set(
i++, (number)(hh->
Data()));
◆ jjA_L_INTVEC()
Definition at line 1494 of file ipassign.cc.
1506 Warn(
"expression list length(%d) does not match intmat size(%d)",
1513 (*iv)[
i++] = (int)((
long)(hh->
Data()));
1522 (*iv)[
i++] = (*ivv)[ll++];
◆ jjA_L_LIST()
◆ jjA_L_STRING()
◆ jjCOLMAX()
◆ jjECHO()
◆ jjIMPORTFROM()
Definition at line 2233 of file ipassign.cc.
2238 char *vn=(
char *)
v->Name();
2245 WarnS(
"source and destination packages are identical");
2257 memset(&h_expr,0,
sizeof(h_expr));
2261 return iiAssign(&tmp_expr,&h_expr);
2265 Werror(
"`%s` not found in `%s`",
v->Name(), u->
Name());
◆ jjMAXDEG()
◆ jjMAXMULT()
◆ jjMINPOLY()
Definition at line 171 of file ipassign.cc.
177 WarnS(
"Set minpoly over non-transcendental ground field to 0?!");
186 WarnS(
"Trying to set minpoly over non-transcendental ground field...");
189 WerrorS(
"cannot set minpoly for these coeffients");
196 WerrorS(
"only univarite minpoly allowed");
203 redefine_from_algext=(
currRing->cf->extRing->qideal!=
NULL);
208 WarnS(
"no minpoly allowed if there are local objects belonging to the basering: ");
229 WarnS(
"minpoly is already 0...");
233 WarnS(
"cannot set minpoly to 0 / alg. extension?");
241 Warn(
"killing a local object due to minpoly change: %s",
IDID(
currRing->idroot));
254 WerrorS(
"Could not construct the alg. extension: minpoly==0");
259 if (!redefine_from_algext && (DEN((fraction)(
p)) !=
NULL))
261 poly n=DEN((fraction)(
p));
264 WarnS(
"denominator must be constant - ignoring it");
267 DEN((fraction)(
p))=
NULL;
270 if (redefine_from_algext) q->m[0]=(poly)
p;
271 else q->m[0] = NUM((fraction)
p);
275 PrintS(
"\nTrying to conver the currRing into an algebraic field: ");
276 PrintS(
"Ground poly. ring: \n");
278 PrintS(
"\nGiven MinPOLY: ");
285 if (!redefine_from_algext)
288 NUM((fractionObject *)
p) =
NULL;
295 WerrorS(
"Could not construct the alg. extension: llegal minpoly?");
◆ jjMINPOLY_red()
static void jjMINPOLY_red |
( |
idhdl |
h | ) |
|
|
static |
◆ jjNOETHER()
◆ jjNormalizeQRingId()
void jjNormalizeQRingId |
( |
leftv |
I | ) |
|
◆ jjNormalizeQRingP()
void jjNormalizeQRingP |
( |
poly & |
p | ) |
|
◆ jjPRINTLEVEL()
◆ jjRTIMER()
◆ jjSHORTOUT()
Definition at line 103 of file ipassign.cc.
120 cf->extRing->ShortOut = shortOut;
122 cf =
cf->extRing->cf;
◆ jjTIMER()
◆ jjTRACE()
BOOLEAN iiConvert(int inputType, int outputType, int index, leftv input, leftv output, const struct sConvertTypes *dConvertTypes)
static int si_min(const int a, const int b)
int idElem(const ideal F)
count non-zero elements
static ideal idVec2Ideal(poly vec)
static BOOLEAN jiAssign_1(leftv l, leftv r, BOOLEAN toplevel)
const struct sValAssign dAssign[]
#define pGetComp(p)
Component.
static BOOLEAN jiA_INTVEC_L(leftv l, leftv r)
#define idDelete(H)
delete an ideal
void * idrecDataInit(int t)
static void jiAssignAttr(leftv l, leftv r)
#define MATELEM(mat, i, j)
1-based access to matrix
void sBucketDestroyAdd(sBucket_pt bucket, poly *p, int *length)
void pEnlargeSet(poly **p, int l, int increment)
CanonicalForm map(const CanonicalForm &primElem, const Variable &alpha, const CanonicalForm &F, const Variable &beta)
map from to such that is mapped onto
VAR omBin fractionObjectBin
int iiDeclCommand(leftv sy, leftv name, int lev, int t, idhdl *root, BOOLEAN isring, BOOLEAN init_b)
static BOOLEAN length(leftv result, leftv arg)
static BOOLEAN jjA_L_STRING(leftv l, leftv r)
static BOOLEAN jjA_L_INTVEC(leftv l, leftv r, intvec *iv)
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
#define SMATELEM(A, i, j, R)
coeffs basecoeffs() const
coeffs nInitChar(n_coeffType t, void *parameter)
one-time initialisations for new coeffs in case of an error return NULL
void id_Shift(ideal M, int s, const ring r)
static FORCE_INLINE BOOLEAN n_IsZero(number n, const coeffs r)
TRUE iff 'n' represents the zero element.
static BOOLEAN jiA_POLY(leftv res, leftv a, Subexpr e)
Class used for (list of) interpreter objects.
static BOOLEAN jiA_VECTOR_L(leftv l, leftv r)
static FORCE_INLINE void n_Normalize(number &n, const coeffs r)
inplace-normalization of n; produces some canonical representation of n;
static void jjMINPOLY_red(idhdl h)
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
EXTERN_VAR omBin sleftv_bin
static short rVar(const ring r)
#define rVar(r) (r->N)
#define TEST_V_ASSIGN_NONE
void id_Delete(ideal *h, ring r)
deletes an ideal/module/matrix
struct for passing initialization parameters to naInitChar
poly p_PermPoly(poly p, const int *perm, const ring oldRing, const ring dst, nMapFunc nMap, const int *par_perm, int OldPar, BOOLEAN use_mult)
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
static BOOLEAN jiAssign_list(leftv l, leftv r)
void PrintS(const char *s)
static FORCE_INLINE BOOLEAN nCoeff_is_algExt(const coeffs r)
TRUE iff r represents an algebraic extension field.
void set(int i, int j, number n, const coeffs C=NULL)
replace an entry with a copy (delete old + copy new!). NOTE: starts at [1,1]
void killhdl2(idhdl h, idhdl *ih, ring r)
static BOOLEAN iiAssign_sys(leftv l, leftv r)
BOOLEAN slInit(si_link l, char *istr)
void idSkipZeroes(ideal ide)
gives an ideal/module the minimal possible size
static BOOLEAN rField_is_Ring(const ring r)
BOOLEAN lRingDependend(lists L)
BOOLEAN piKill(procinfov pi)
void p_Write(poly p, ring lmRing, ring tailRing)
static BOOLEAN jiA_STRING_L(leftv l, leftv r)
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
void killhdl(idhdl h, package proot)
void ipMoveId(idhdl tomove)
int iiTestConvert(int inputType, int outputType)
static FORCE_INLINE BOOLEAN nCoeff_is_Extension(const coeffs r)
void CleanUp(ring r=currRing)
poly kNF(ideal F, ideal Q, poly p, int syzComp, int lazyReduce)
static FORCE_INLINE BOOLEAN nCoeff_is_transExt(const coeffs r)
TRUE iff r represents a transcendental extension field.
matrix mpNew(int r, int c)
create a r x c zero-matrix
poly p_MinPolyNormalize(poly p, const ring r)
void jjNormalizeQRingId(leftv I)
int exprlist_length(leftv v)
void rDelete(ring r)
unconditionally deletes fields in r
#define IMATELEM(M, I, J)
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int, long pos, BOOLEAN pstatic)
static void p_Delete(poly *p, const ring r)
void rWrite(ring r, BOOLEAN details)
const struct sValAssign_sys dAssign_sys[]
static int si_max(const int a, const int b)
static BOOLEAN jjA_L_BIGINTMAT(leftv l, leftv r, bigintmat *bim)
void * atGet(idhdl root, const char *name, int t, void *defaultReturnValue)
void Werror(const char *fmt,...)
#define omreallocSize(addr, o_size, size)
ideal idInit(int idsize, int rank)
initialise an ideal / module
BOOLEAN assumeStdFlag(leftv h)
void WerrorS(const char *s)
VAR char my_yylinebuf[80]
#define BIMATELEM(M, I, J)
static si_link slCopy(si_link l)
static BOOLEAN jiA_MATRIX_L(leftv l, leftv r)
void slCleanUp(si_link l)
const Variable & v
< [in] a sqrfree bivariate poly
INLINE_THIS void Init(int l=0)
static BOOLEAN jjA_L_LIST(leftv l, leftv r)
static BOOLEAN p_IsConstantPoly(const poly p, const ring r)
#define idSimpleAdd(A, B)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
const CanonicalForm int s
const char * Tok2Cmdname(int tok)
static BOOLEAN jiAssign_rec(leftv l, leftv r)
void jjNormalizeQRingP(poly &p)
bool nc_SetupQuotient(ring rGR, const ring rG=NULL, bool bCopy=false)
static FORCE_INLINE nMapFunc n_SetMap(const coeffs src, const coeffs dst)
set the mapping function pointers for translating numbers from src to dst
lists syConvRes(syStrategy syzstr, BOOLEAN toDel, int add_row_shift)
static bool rIsSCA(const ring r)
#define omFreeBin(addr, bin)
blackbox * getBlackboxStuff(const int t)
return the structure to the type given by t
BOOLEAN iiAssign(leftv l, leftv r, BOOLEAN toplevel)
static FORCE_INLINE coeffs n_CoeffRingQuot1(number c, const coeffs r)
intvec * ivAdd(intvec *a, intvec *b)
void syKillComputation(syStrategy syzstr, ring r=currRing)
void id_Normalize(ideal I, const ring r)
normialize all polys in id
void nKillChar(coeffs r)
undo all initialisations
#define idPosConstant(I)
index of generator with leading term in ground ring (if any); otherwise -1
ideal idrCopyR(ideal id, ring src_r, ring dest_r)
used for all algebraic extensions, i.e., the top-most extension in an extension tower is algebraic
void Clean(ring r=currRing)