![]() |
My Project
|
#include <string.h>
#include <stdlib.h>
#include "misc/auxiliary.h"
#include "misc/mylimits.h"
#include "factory/factory.h"
#include "reporter/reporter.h"
#include "coeffs/coeffs.h"
#include "coeffs/numbers.h"
#include "coeffs/longrat.h"
#include "coeffs/modulop.h"
#include "coeffs/gnumpfl.h"
#include "coeffs/gnumpc.h"
#include "coeffs/ffields.h"
#include "coeffs/shortfl.h"
#include "coeffs/ntupel.h"
#include "coeffs/flintcf_Qrat.h"
#include "coeffs/rmodulo2m.h"
#include "coeffs/rmodulon.h"
#include "coeffs/rintegers.h"
#include "polys/ext_fields/algext.h"
#include "polys/ext_fields/transext.h"
Go to the source code of this file.
Data Structures | |
struct | nFindCoeffByName_p |
Functions | |
void | nNew (number *d) |
static void | ndDelete (number *d, const coeffs) |
static number | ndAnn (number, const coeffs) |
static char * | ndCoeffString (const coeffs r) |
static void | ndCoeffWrite (const coeffs r, BOOLEAN) |
static char * | ndCoeffName (const coeffs r) |
static void | ndInpMult (number &a, number b, const coeffs r) |
void | ndInpAdd (number &a, number b, const coeffs r) |
static void | ndPower (number a, int i, number *res, const coeffs r) |
static number | ndInvers (number a, const coeffs r) |
static number | ndInvers_Ring (number a, const coeffs r) |
static BOOLEAN | ndIsUnit_Ring (number a, const coeffs r) |
static BOOLEAN | ndIsUnit_Field (number a, const coeffs r) |
static number | ndGetUnit_Ring (number, const coeffs r) |
static number | ndRandom (siRandProc p, number p1, number p2, const coeffs cf) |
static number | ndEucNorm (number a, const coeffs cf) |
static BOOLEAN | ndDBTest (number, const char *, const int, const coeffs) |
static number | ndFarey (number, number, const coeffs r) |
static number | ndXExtGcd (number a, number b, number *s, number *t, number *u, number *v, const coeffs r) |
static number | ndChineseRemainder (number *, number *, int, BOOLEAN, CFArray &, const coeffs r) |
number | ndReadFd (const ssiInfo *f, const coeffs r) |
static void | ndWriteFd (number a, const ssiInfo *f, const coeffs r) |
static int | ndParDeg (number n, const coeffs r) |
static number | ndParameter (const int, const coeffs r) |
BOOLEAN | n_IsZeroDivisor (number a, const coeffs r) |
Test whether a is a zero divisor in r i.e. not coprime with char. of r very inefficient implementation: should ONLY be used for debug stuff /tests. More... | |
void | ndNormalize (number &, const coeffs) |
static number | ndReturn0 (number, const coeffs r) |
number | ndGcd (number, number, const coeffs r) |
static number | ndIntMod (number, number, const coeffs r) |
static number | ndGetDenom (number &, const coeffs r) |
static number | ndGetNumerator (number &a, const coeffs r) |
static int | ndSize (number a, const coeffs r) |
static void | ndClearContent (ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs r) |
static void | ndClearDenominators (ICoeffsEnumerator &, number &d, const coeffs r) |
static number | ndCopy (number a, const coeffs) |
number | ndCopyMap (number a, const coeffs aRing, const coeffs r) |
static void | ndKillChar (coeffs) |
static void | ndSetChar (const coeffs) |
number | nd_Copy (number a, const coeffs r) |
static BOOLEAN | ndDivBy (number, number, const coeffs) |
static int | ndDivComp (number, number, const coeffs) |
static number | ndExtGcd (number, number, number *, number *, const coeffs r) |
CanonicalForm | ndConvSingNFactoryN (number, BOOLEAN, const coeffs) |
static number | ndConvFactoryNSingN (const CanonicalForm, const coeffs) |
[in, out] a bigint number >= 0 More... | |
static void | ndMPZ (mpz_t result, number &n, const coeffs r) |
Converts a non-negative bigint number into a GMP number. More... | |
static number | ndInitMPZ (mpz_t m, const coeffs r) |
static const char * | ndRead (const char *s, number *, const coeffs r) |
static nMapFunc | ndSetMap (const coeffs src, const coeffs dst) |
static BOOLEAN | ndCoeffIsEqual (const coeffs r, n_coeffType n, void *) |
static number | ndQuotRem (number a, number b, number *r, const coeffs R) |
coeffs | nInitChar (n_coeffType t, void *parameter) |
one-time initialisations for new coeffs in case of an error return NULL More... | |
void | nKillChar (coeffs r) |
undo all initialisations More... | |
n_coeffType | nRegister (n_coeffType n, cfInitCharProc p) |
void | nRegisterCfByName (cfInitCfByNameProc p, n_coeffType n) |
coeffs | nFindCoeffByName (char *cf_name) |
find an existing coeff by its "CoeffName" More... | |
void | n_Print (number &a, const coeffs r) |
print a number (BEWARE of string buffers!) mostly for debugging More... | |
char * | nEati (char *s, int *i, int m) |
divide by the first (leading) number and return it, i.e. make monic More... | |
char * | nEatLong (char *s, mpz_ptr i) |
extracts a long integer from s, returns the rest More... | |
Variables | |
VAR n_Procs_s * | cf_root =NULL |
STATIC_VAR n_coeffType | nLastCoeffs =n_CF |
VAR cfInitCharProc | nInitCharTableDefault [] |
STATIC_VAR cfInitCharProc * | nInitCharTable =nInitCharTableDefault |
VAR nFindCoeffByName_p | nFindCoeffByName_Root =NULL |
struct nFindCoeffByName_s |
Definition at line 607 of file numbers.cc.
Data Fields | ||
---|---|---|
n_coeffType | n | |
nFindCoeffByName_p | next | |
cfInitCfByNameProc | p |
Test whether a is a zero divisor in r i.e. not coprime with char. of r very inefficient implementation: should ONLY be used for debug stuff /tests.
Definition at line 176 of file numbers.cc.
print a number (BEWARE of string buffers!) mostly for debugging
Definition at line 646 of file numbers.cc.
Definition at line 295 of file numbers.cc.
|
static |
Definition at line 51 of file numbers.cc.
|
static |
Definition at line 150 of file numbers.cc.
|
static |
TODO: move to a separate implementation
Definition at line 198 of file numbers.cc.
|
static |
Definition at line 272 of file numbers.cc.
|
static |
Definition at line 340 of file numbers.cc.
Definition at line 60 of file numbers.cc.
Definition at line 52 of file numbers.cc.
Definition at line 56 of file numbers.cc.
CanonicalForm ndConvSingNFactoryN | ( | number | , |
BOOLEAN | , | ||
const | coeffs | ||
) |
Definition at line 303 of file numbers.cc.
|
static |
Definition at line 281 of file numbers.cc.
Definition at line 282 of file numbers.cc.
Definition at line 137 of file numbers.cc.
|
static |
Definition at line 50 of file numbers.cc.
Definition at line 298 of file numbers.cc.
|
static |
Definition at line 299 of file numbers.cc.
Definition at line 133 of file numbers.cc.
Definition at line 300 of file numbers.cc.
Definition at line 140 of file numbers.cc.
Definition at line 192 of file numbers.cc.
Definition at line 194 of file numbers.cc.
Definition at line 195 of file numbers.cc.
Definition at line 129 of file numbers.cc.
Definition at line 323 of file numbers.cc.
Definition at line 72 of file numbers.cc.
Definition at line 66 of file numbers.cc.
Definition at line 193 of file numbers.cc.
Definition at line 109 of file numbers.cc.
Definition at line 116 of file numbers.cc.
Definition at line 127 of file numbers.cc.
Definition at line 125 of file numbers.cc.
|
static |
Definition at line 292 of file numbers.cc.
Converts a non-negative bigint number into a GMP number.
Definition at line 318 of file numbers.cc.
void ndNormalize | ( | number & | , |
const | coeffs | ||
) |
Definition at line 190 of file numbers.cc.
Definition at line 171 of file numbers.cc.
Definition at line 166 of file numbers.cc.
Definition at line 347 of file numbers.cc.
|
static |
Definition at line 131 of file numbers.cc.
Definition at line 328 of file numbers.cc.
Definition at line 155 of file numbers.cc.
Definition at line 191 of file numbers.cc.
|
static |
Definition at line 293 of file numbers.cc.
Definition at line 333 of file numbers.cc.
Definition at line 196 of file numbers.cc.
Definition at line 161 of file numbers.cc.
|
static |
Definition at line 145 of file numbers.cc.
char * nEati | ( | char * | s, |
int * | i, | ||
int | m | ||
) |
divide by the first (leading) number and return it, i.e. make monic
does nothing (just returns a dummy one number) helper routine: read an int from a string (mod m), return a pointer to the rest
Definition at line 656 of file numbers.cc.
char * nEatLong | ( | char * | s, |
mpz_ptr | i | ||
) |
extracts a long integer from s, returns the rest
Definition at line 677 of file numbers.cc.
coeffs nFindCoeffByName | ( | char * | cf_name | ) |
find an existing coeff by its "CoeffName"
Definition at line 624 of file numbers.cc.
coeffs nInitChar | ( | n_coeffType | t, |
void * | parameter | ||
) |
one-time initialisations for new coeffs in case of an error return NULL
Definition at line 392 of file numbers.cc.
void nKillChar | ( | coeffs | r | ) |
undo all initialisations
Definition at line 547 of file numbers.cc.
void nNew | ( | number * | d | ) |
Definition at line 47 of file numbers.cc.
n_coeffType nRegister | ( | n_coeffType | n, |
cfInitCharProc | p | ||
) |
Definition at line 574 of file numbers.cc.
void nRegisterCfByName | ( | cfInitCfByNameProc | p, |
n_coeffType | n | ||
) |
Definition at line 615 of file numbers.cc.
Definition at line 45 of file numbers.cc.
Definition at line 614 of file numbers.cc.
STATIC_VAR cfInitCharProc* nInitCharTable =nInitCharTableDefault |
Definition at line 388 of file numbers.cc.
VAR cfInitCharProc nInitCharTableDefault[] |
Definition at line 355 of file numbers.cc.
STATIC_VAR n_coeffType nLastCoeffs =n_CF |
Definition at line 354 of file numbers.cc.