![]() |
Go to the source code of this file.
Data Structures | |
struct | sro_dp |
struct | sro_wp |
struct | sro_am |
struct | sro_wp64 |
struct | sro_cp |
struct | sro_syzcomp |
struct | sro_syz |
struct | sro_ISTemp |
struct | sro_IS |
struct | sro_ord |
struct | const_ring |
union | sro_ord.data |
Macros | |
#define | rHasGlobalOrdering_currRing() rHasGlobalOrdering(currRing) |
#define | rHasLocalOrMixedOrdering_currRing() rHasLocalOrMixedOrdering(currRing) |
#define | rTest(r) rDBTest(r, __FILE__, __LINE__) |
Typedefs | |
typedef idrec * | idhdl |
typedef struct p_Procs_s | p_Procs_s |
typedef kBucket * | kBucket_pt |
typedef long(* | pLDegProc) (poly p, int *length, ring r) |
typedef long(* | pFDegProc) (poly p, ring r) |
typedef void(* | p_SetmProc) (poly p, const ring r) |
typedef poly(* | pShallowCopyDeleteProc) (poly s_p, ring source_r, ring dest_r, omBin dest_bin) |
returns a poly from dest_r which is a ShallowCopy of s_p from source_r assumes that source_r->N == dest_r->N and that orderings are the same More... | |
typedef skStrategy * | kStrategy |
typedef poly(* | NF_Proc) (ideal, ideal, poly, int, int, const ring _currRing) |
typedef ideal(* | BBA_Proc) (const ideal, const ideal, const intvec *, const intvec *, kStrategy strat, const ring) |
Enumerations | |
enum | ro_typ { ro_dp, ro_wp, ro_am, ro_wp64, ro_wp_neg, ro_cp, ro_syzcomp, ro_syz, ro_isTemp, ro_is, ro_none } |
enum | rRingOrder_t { ringorder_no = 0, ringorder_a, ringorder_a64, ringorder_c, ringorder_C, ringorder_M, ringorder_S, ringorder_s, ringorder_lp, ringorder_dp, ringorder_rp, ringorder_Dp, ringorder_wp, ringorder_Wp, ringorder_ls, ringorder_ds, ringorder_Ds, ringorder_ws, ringorder_Ws, ringorder_am, ringorder_L, ringorder_aa, ringorder_rs, ringorder_IS, ringorder_unspec } |
order stuff More... | |
enum | rOrderType_t { rOrderType_General = 0, rOrderType_CompExp, rOrderType_ExpComp, rOrderType_Exp, rOrderType_Syz, rOrderType_Schreyer, rOrderType_Syz2dpc, rOrderType_ExpNoComp } |
Functions | |
ring | rDefault (int ch, int N, char **n) |
ring | rDefault (const coeffs cf, int N, char **n, const rRingOrder_t o=ringorder_lp) |
ring | rDefault (int ch, int N, char **n, int ord_size, int *ord, int *block0, int *block1, int **wvhdl=NULL) |
ring | rDefault (const coeffs cf, int N, char **n, int ord_size, int *ord, int *block0, int *block1, int **wvhdl=NULL) |
int | r_IsRingVar (const char *n, char **names, int N) |
void | rWrite (ring r, BOOLEAN details=FALSE) |
ring | rCopy (ring r) |
ring | rCopy0 (const ring r, BOOLEAN copy_qideal=TRUE, BOOLEAN copy_ordering=TRUE) |
ring | rCopy0AndAddA (ring r, int64vec *wv64, BOOLEAN copy_qideal=TRUE, BOOLEAN copy_ordering=TRUE) |
ring | rOpposite (ring r) |
ring | rEnvelope (ring r) |
static BOOLEAN | rIsPluralRing (const ring r) |
we must always have this test! More... | |
static BOOLEAN | rIsRatGRing (const ring r) |
void | rChangeSComps (int *currComponents, long *currShiftedComponents, int length, ring r) |
void | rGetSComps (int **currComponents, long **currShiftedComponents, int *length, ring r) |
const char * | rSimpleOrdStr (int ord) |
int | rOrderName (char *ordername) |
char * | rOrdStr (ring r) |
char * | rVarStr (ring r) |
char * | rCharStr (ring r) |
TODO: make it a virtual method of coeffs, together with: Decompose & Compose, rParameter & rPar. More... | |
char * | rString (ring r) |
int | rChar (ring r) |
char * | rParStr (ring r) |
int | rSum (ring r1, ring r2, ring &sum) |
int | rSumInternal (ring r1, ring r2, ring &sum, BOOLEAN vartest, BOOLEAN dp_dp) |
returns -1 for not compatible, 1 for compatible (and sum) dp_dp:0: block ordering, 1: dp,dp, 2: aa(...),dp vartest: check for name conflicts More... | |
BOOLEAN | rEqual (ring r1, ring r2, BOOLEAN qr=TRUE) |
returns TRUE, if r1 equals r2 FALSE, otherwise Equality is determined componentwise, if qr == 1, then qrideal equality is tested, as well More... | |
BOOLEAN | rSamePolyRep (ring r1, ring r2) |
returns TRUE, if r1 and r2 represents the monomials in the same way FALSE, otherwise this is an analogue to rEqual but not so strict More... | |
void | rUnComplete (ring r) |
BOOLEAN | rRing_is_Homog (ring r) |
BOOLEAN | rRing_has_CompLastBlock (ring r) |
static BOOLEAN | rField_is_Ring_2toM (const ring r) |
static BOOLEAN | rField_is_Ring_ModN (const ring r) |
static BOOLEAN | rField_is_Ring_PtoM (const ring r) |
static BOOLEAN | rField_is_Ring_Z (const ring r) |
static BOOLEAN | rField_is_Ring (const ring r) |
static BOOLEAN | rField_is_Domain (const ring r) |
static BOOLEAN | rField_has_Units (const ring r) |
static BOOLEAN | rField_is_Zp (const ring r) |
static BOOLEAN | rField_is_Zp (const ring r, int p) |
static BOOLEAN | rField_is_Q (const ring r) |
static BOOLEAN | rField_is_Z (const ring r) |
static BOOLEAN | rField_is_numeric (const ring r) |
static BOOLEAN | rField_is_R (const ring r) |
static BOOLEAN | rField_is_GF (const ring r) |
static BOOLEAN | rField_is_GF (const ring r, int q) |
static BOOLEAN | rField_is_Zp_a (const ring r) |
static BOOLEAN | rField_is_Zp_a (const ring r, int p) |
static BOOLEAN | rField_is_Q_a (const ring r) |
static BOOLEAN | rField_is_long_R (const ring r) |
static BOOLEAN | rField_is_long_C (const ring r) |
static BOOLEAN | rField_has_simple_inverse (const ring r) |
static BOOLEAN | rField_has_simple_Alloc (const ring r) |
Z/p, GF(p,n), R: nCopy, nNew, nDelete are dummies. More... | |
n_coeffType | rFieldType (const ring r) |
BOOLEAN | rComplete (ring r, int force=0) |
this needs to be called whenever a new ring is created: new fields in ring are created (like VarOffset), unless they already exist with force == 1, new fields are always created (overwritten), even if they exist More... | |
void | p_SetGlobals (const ring r, BOOLEAN complete=TRUE) |
set all properties of a new ring - also called by rComplete More... | |
static int | rBlocks (ring r) |
static char * | rRingVar (short i, const ring r) |
static BOOLEAN | rShortOut (const ring r) |
static BOOLEAN | rCanShortOut (const ring r) |
static short | rVar (const ring r) |
#define rVar(r) (r->N) More... | |
static int | rPar (const ring r) |
(r->cf->P) More... | |
static char const ** | rParameter (const ring r) |
(r->cf->parameter) More... | |
static number | n_Param (const short iParameter, const ring r) |
return the specified parameter as a (new!) number in the given polynomial ring, or NULL if invalid parameters (as variables) begin with 1! More... | |
int | n_IsParam (number m, const ring r) |
if m == var(i)/1 => return i, More... | |
static int | rInternalChar (const ring r) |
static BOOLEAN | rMinpolyIsNULL (const ring r) |
Tests whether '(r->cf->minpoly) == NULL'. More... | |
static BOOLEAN | rIsSyzIndexRing (const ring r) |
static int | rGetCurrSyzLimit (const ring r) |
void | rSetSyzComp (int k, const ring r) |
ring | rAssure_HasComp (const ring r) |
ring | rAssure_SyzOrder (const ring r, BOOLEAN complete) |
ring | rAssure_SyzComp (const ring r, BOOLEAN complete=TRUE) |
ring | rAssure_dp_S (const ring r) |
ring | rAssure_dp_C (const ring r) |
ring | rAssure_C_dp (const ring r) |
ring | rAssure_c_dp (const ring r) |
ring | rAssure_CompLastBlock (const ring r, BOOLEAN complete=TRUE) |
makes sure that c/C ordering is last ordering More... | |
ring | rAssure_SyzComp_CompLastBlock (const ring r, BOOLEAN complete=TRUE) |
makes sure that c/C ordering is last ordering and SyzIndex is first More... | |
ring | rAssure_TDeg (const ring r, int start_var, int end_var, int &pos) |
int | rGetMaxSyzComp (int i, const ring r) |
return the max-comonent wchich has syzIndex i Assume: i<= syzIndex_limit More... | |
BOOLEAN | rHasSimpleOrder (const ring r) |
BOOLEAN | rHas_c_Ordering (const ring r) |
BOOLEAN | rHasSimpleLexOrder (const ring r) |
returns TRUE, if simple lp or ls ordering More... | |
BOOLEAN | rHasGlobalOrdering (const ring r) |
BOOLEAN | rHasLocalOrMixedOrdering (const ring r) |
BOOLEAN | rHasMixedOrdering (const ring r) |
BOOLEAN | rOrd_is_Totaldegree_Ordering (const ring r) |
BOOLEAN | rOrd_SetCompRequiresSetm (const ring r) |
return TRUE if p_SetComp requires p_Setm More... | |
rOrderType_t | rGetOrderType (ring r) |
BOOLEAN | rIsPolyVar (int i, const ring r) |
returns TRUE if var(i) belongs to p-block More... | |
static BOOLEAN | rOrd_is_Comp_dp (const ring r) |
BOOLEAN | rDBTest (ring r, const char *fn, const int l) |
ring | rModifyRing (ring r, BOOLEAN omit_degree, BOOLEAN omit_comp, unsigned long exp_limit) |
ring | rModifyRing_Wp (ring r, int *weights) |
construct Wp, C ring More... | |
void | rModify_a_to_A (ring r) |
void | rKillModifiedRing (ring r) |
void | rKillModified_Wp_Ring (ring r) |
ring | rModifyRing_Simple (ring r, BOOLEAN omit_degree, BOOLEAN omit_comp, unsigned long exp_limit, BOOLEAN &simple) |
void | rKillModifiedRing_Simple (ring r) |
void | rDebugPrint (const ring r) |
void | p_DebugPrint (poly p, const ring r) |
int64 * | rGetWeightVec (const ring r) |
void | rSetWeightVec (ring r, int64 *wv) |
poly | rGetVar (const int varIndex, const ring r) |
BOOLEAN | rSetISReference (const ring r, const ideal F, const int i=0, const int p=0) |
Changes r by setting induced ordering parameters: limit and reference leading terms F belong to r, we will DO a copy! We will use it AS IS! returns true is everything was allright! More... | |
int | rGetISPos (const int p, const ring r) |
return the position of the p^th IS block order block in r->typ[]... More... | |
BOOLEAN | rCheckIV (const intvec *iv) |
int | rTypeOfMatrixOrder (const intvec *order) |
void | rDelete (ring r) |
unconditionally deletes fields in r More... | |
Variables | |
omBin | sip_sring_bin |
struct sro_wp |
struct sro_am |
struct sro_wp64 |
struct sro_syzcomp |
struct sro_syz |
struct sro_ISTemp |
struct sro_IS |
struct sro_ord |
union sro_ord.data |
#define rHasGlobalOrdering_currRing | ( | ) | rHasGlobalOrdering(currRing) |
#define rHasLocalOrMixedOrdering_currRing | ( | ) | rHasLocalOrMixedOrdering(currRing) |
typedef kBucket* kBucket_pt |
typedef skStrategy* kStrategy |
enum ro_typ |
enum rOrderType_t |
Definition at line 105 of file ring.h.
enum rRingOrder_t |
order stuff
Definition at line 75 of file ring.h.
if m == var(i)/1 => return i,
if m == var(i)/1 => return i,
Definition at line 5603 of file ring.cc.
return the specified parameter as a (new!) number in the given polynomial ring, or NULL if invalid parameters (as variables) begin with 1!
Definition at line 643 of file ring.h.
Definition at line 4203 of file ring.cc.
ring rAssure_C_dp | ( | const ring | r | ) |
Definition at line 4853 of file ring.cc.
ring rAssure_c_dp | ( | const ring | r | ) |
Definition at line 4858 of file ring.cc.
makes sure that c/C ordering is last ordering
Definition at line 4577 of file ring.cc.
ring rAssure_dp_C | ( | const ring | r | ) |
Definition at line 4848 of file ring.cc.
ring rAssure_dp_S | ( | const ring | r | ) |
Definition at line 4843 of file ring.cc.
ring rAssure_HasComp | ( | const ring | r | ) |
Definition at line 4522 of file ring.cc.
Definition at line 4349 of file ring.cc.
makes sure that c/C ordering is last ordering and SyzIndex is first
? rChangeCurrRing(new_r);
Definition at line 4632 of file ring.cc.
ring rAssure_TDeg | ( | const ring | r, |
int | start_var, | ||
int | end_var, | ||
int & | pos | ||
) |
Definition at line 4430 of file ring.cc.
void rChangeSComps | ( | int * | currComponents, |
long * | currShiftedComponents, | ||
int | length, | ||
ring | r | ||
) |
Definition at line 4319 of file ring.cc.
char* rCharStr | ( | ring | r | ) |
TODO: make it a virtual method of coeffs, together with: Decompose & Compose, rParameter & rPar.
Definition at line 618 of file ring.cc.
BOOLEAN rComplete | ( | ring | r, |
int | force = 0 |
||
) |
this needs to be called whenever a new ring is created: new fields in ring are created (like VarOffset), unless they already exist with force == 1, new fields are always created (overwritten), even if they exist
Definition at line 3351 of file ring.cc.
ring rCopy | ( | ring | r | ) |
Definition at line 1612 of file ring.cc.
Definition at line 1321 of file ring.cc.
ring rCopy0AndAddA | ( | ring | r, |
int64vec * | wv64, | ||
BOOLEAN | copy_qideal = TRUE , |
||
BOOLEAN | copy_ordering = TRUE |
||
) |
Definition at line 1460 of file ring.cc.
Definition at line 1950 of file ring.cc.
void rDebugPrint | ( | const ring | r | ) |
Definition at line 3998 of file ring.cc.
ring rDefault | ( | int | ch, |
int | N, | ||
char ** | n | ||
) |
Definition at line 165 of file ring.cc.
ring rDefault | ( | const coeffs | cf, |
int | N, | ||
char ** | n, | ||
const rRingOrder_t | o = ringorder_lp |
||
) |
Definition at line 148 of file ring.cc.
ring rDefault | ( | int | ch, |
int | N, | ||
char ** | n, | ||
int | ord_size, | ||
int * | ord, | ||
int * | block0, | ||
int * | block1, | ||
int ** | wvhdl = NULL |
||
) |
Definition at line 140 of file ring.cc.
ring rDefault | ( | const coeffs | cf, |
int | N, | ||
char ** | n, | ||
int | ord_size, | ||
int * | ord, | ||
int * | block0, | ||
int * | block1, | ||
int ** | wvhdl = NULL |
||
) |
Definition at line 113 of file ring.cc.
void rDelete | ( | ring | r | ) |
unconditionally deletes fields in r
Definition at line 448 of file ring.cc.
returns TRUE, if r1 equals r2 FALSE, otherwise Equality is determined componentwise, if qr == 1, then qrideal equality is tested, as well
Definition at line 1627 of file ring.cc.
Z/p, GF(p,n), R: nCopy, nNew, nDelete are dummies.
Definition at line 544 of file ring.h.
Definition at line 540 of file ring.h.
Definition at line 483 of file ring.h.
Definition at line 480 of file ring.h.
Definition at line 537 of file ring.h.
Definition at line 534 of file ring.h.
Definition at line 507 of file ring.h.
Definition at line 465 of file ring.h.
Definition at line 468 of file ring.h.
Definition at line 471 of file ring.h.
Definition at line 474 of file ring.h.
Definition at line 495 of file ring.h.
n_coeffType rFieldType | ( | const ring | r | ) |
Definition at line 5075 of file ring.cc.
|
inlinestatic |
int rGetMaxSyzComp | ( | int | i, |
const ring | r | ||
) |
rOrderType_t rGetOrderType | ( | ring | r | ) |
Definition at line 1716 of file ring.cc.
void rGetSComps | ( | int ** | currComponents, |
long ** | currShiftedComponents, | ||
int * | length, | ||
ring | r | ||
) |
Definition at line 4328 of file ring.cc.
Definition at line 5593 of file ring.cc.
|
inlinestatic |
returns TRUE if var(i) belongs to p-block
Tests whether '(r->cf->minpoly) == NULL'.
Definition at line 690 of file ring.h.
< How many induced ordering block do we have?
Definition at line 2596 of file ring.cc.
ring rModifyRing_Simple | ( | ring | r, |
BOOLEAN | omit_degree, | ||
BOOLEAN | omit_comp, | ||
unsigned long | exp_limit, | ||
BOOLEAN & | simple | ||
) |
Definition at line 2891 of file ring.cc.
ring rModifyRing_Wp | ( | ring | r, |
int * | weights | ||
) |
construct Wp, C ring
Definition at line 2843 of file ring.cc.
ring rOpposite | ( | ring | r | ) |
Definition at line 5150 of file ring.cc.
Definition at line 1889 of file ring.cc.
return TRUE if p_SetComp requires p_Setm
Definition at line 1869 of file ring.cc.
int rOrderName | ( | char * | ordername | ) |
Definition at line 508 of file ring.cc.
char* rOrdStr | ( | ring | r | ) |
|
inlinestatic |
(r->cf->P)
Definition at line 590 of file ring.h.
(r->cf->parameter)
Definition at line 616 of file ring.h.
BOOLEAN rRing_has_CompLastBlock | ( | ring | r | ) |
BOOLEAN rSamePolyRep | ( | ring | r1, |
ring | r2 | ||
) |
Changes r by setting induced ordering parameters: limit and reference leading terms F belong to r, we will DO a copy! We will use it AS IS! returns true is everything was allright!
Definition at line 4900 of file ring.cc.
void rSetSyzComp | ( | int | k, |
const ring | r | ||
) |
char* rString | ( | ring | r | ) |
Definition at line 644 of file ring.cc.
int rSum | ( | ring | r1, |
ring | r2, | ||
ring & | sum | ||
) |
Definition at line 1302 of file ring.cc.
returns -1 for not compatible, 1 for compatible (and sum) dp_dp:0: block ordering, 1: dp,dp, 2: aa(...),dp vartest: check for name conflicts
Definition at line 722 of file ring.cc.
void rUnComplete | ( | ring | r | ) |
Definition at line 3846 of file ring.cc.
|
inlinestatic |
Definition at line 236 of file ring.cc.