22 puts(
"nforder_Register called");
44 if (
l->Typ()==r->
Typ())
81 if (r &&
b->basecoeffs() != r)
return FALSE;
90 if (r &&
b->cf != r)
return FALSE;
100 if (r && (*result)->order() != r)
return FALSE;
113 switch (arg->
Typ()) {
143 Print(
"Types are %d %d\n",
r1->Typ(),
r2->Typ());
218 if (
b->rows() != r)
return FALSE;
219 if (
b->cols() != c)
return FALSE;
223#define returnNumber(_res, _n, _R) \
225 number2 _r = (number2)omAlloc(sizeof(struct snumber2)); \
228 _res->rtyp = CNUMBER_CMD; \
240 for(
int i=0;
i<n;
i++) {
271 WerrorS(
"usage: IdealFromMat(order, basis matrix)");
277 WerrorS(
"3:usage: IdealFromMat(order, basis matrix)");
290 WerrorS(
"usage: EltFromMat(order, matrix)");
296 WerrorS(
"2:usage: EltFromMat(order, matrix)");
307 WerrorS(
"usage: Discriminant(order)");
320 WerrorS(
"usage: pMaximalOrder(order, int)");
358 WerrorS(
"usage: NFOrderSimplify(order)");
378 WerrorS(
"EltTrace(elt in order)");
397 WerrorS(
"EltNorm(elt in order)");
511 "nforder: orders in number fields");
BOOLEAN dimension(leftv res, leftv args)
void diagonalForm(bigintmat *A, bigintmat **S, bigintmat **T)
int setBlackboxStuff(blackbox *bb, const char *n)
define a new type
const char * getBlackboxName(const int t)
return the name to the type given by t (r/o)
coeffs basecoeffs() const
number elTrace(bigintmat *a)
coeffs basecoeffs() const
bigintmat * elRepMat(bigintmat *a)
number elNorm(bigintmat *a)
Class used for (list of) interpreter objects.
Coefficient rings, fields and other domains suitable for Singular polynomials.
@ n_Z
only used if HAVE_RINGS is defined
coeffs nInitChar(n_coeffType t, void *parameter)
one-time initialisations for new coeffs in case of an error return NULL
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
void WerrorS(const char *s)
void module_help_main(const char *newlib, const char *help)
The main handler for Singular numbers which are suitable for Singular polynomials.
nforder * onestep(nforder *o, number p, coeffs c)
nforder * pmaximal(nforder *o, number p)
number EltCreateMat(nforder *a, bigintmat *b)
BOOLEAN n_nfOrderInit(coeffs r, void *parameter)
EXTERN_VAR n_coeffType nforder_type
nforder_ideal * nf_idMult(nforder_ideal *A, nforder_ideal *B)
nforder_ideal * nf_idPower(nforder_ideal *A, int i)
nforder_ideal * nf_idAdd(nforder_ideal *A, nforder_ideal *B)
n_coeffType nRegister(n_coeffType n, cfInitCharProc p)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
void StringSetS(const char *st)
void StringAppendS(const char *st)