![]() |
My Project
UNKNOWN_GIT_VERSION
|
#include "misc/auxiliary.h"
#include "omalloc/omalloc.h"
#include "factory/factory.h"
#include "reporter/reporter.h"
#include "coeffs/coeffs.h"
#include "coeffs/numbers.h"
#include "coeffs/longrat.h"
#include "polys/monomials/ring.h"
#include "polys/monomials/p_polys.h"
#include "polys/simpleideals.h"
#include "polys/clapsing.h"
#include "polys/clapconv.h"
#include "polys/prCopy.h"
#include "transext.h"
#include "algext.h"
#include "polys/PolyEnumerator.h"
Go to the source code of this file.
Data Structures | |
struct | NTNumConverter |
Macros | |
#define | TRANSEXT_PRIVATES |
#define | ADD_COMPLEXITY 1 |
complexity increase due to + and - More... | |
#define | MULT_COMPLEXITY 2 |
complexity increase due to * and / More... | |
#define | DIFF_COMPLEXITY 2 |
complexity increase due to * and / More... | |
#define | BOUND_COMPLEXITY 10 |
maximum complexity of a number More... | |
#define | NUMIS1(f) (p_IsOne(NUM(f), cf->extRing)) |
TRUE iff num. represents 1. More... | |
#define | COM(f) (f)->complexity |
#define | ntTest(a) n_Test(a, cf) |
#define | ntRing cf->extRing |
#define | ntCoeffs cf->extRing->cf |
Functions | |
static BOOLEAN | ntDBTest (number a, const char *f, const int l, const coeffs r) |
static void | heuristicGcdCancellation (number a, const coeffs cf) |
forward declarations More... | |
static void | definiteGcdCancellation (number a, const coeffs cf, BOOLEAN simpleTestsHaveAlreadyBeenPerformed) |
modifies a More... | |
poly | gcd_over_Q (poly f, poly g, const ring r) |
helper routine for calling singclap_gcd_r More... | |
static coeffs | nCoeff_bottom (const coeffs r, int &height) |
static BOOLEAN | ntIsZero (number a, const coeffs cf) |
static void | ntDelete (number *a, const coeffs cf) |
static BOOLEAN | ntEqual (number a, number b, const coeffs cf) |
static number | ntCopy (number a, const coeffs cf) |
static void | handleNestedFractionsOverQ (fraction f, const coeffs cf) |
static number | ntGetNumerator (number &a, const coeffs cf) |
TODO: normalization of a!? More... | |
static number | ntGetDenom (number &a, const coeffs cf) |
TODO: normalization of a!? More... | |
static BOOLEAN | ntIsOne (number a, const coeffs cf) |
static BOOLEAN | ntIsMOne (number a, const coeffs cf) |
static number | ntNeg (number a, const coeffs cf) |
this is in-place, modifies a More... | |
number | ntInit (long i, const coeffs cf) |
number | ntInit (poly p, const coeffs cf) |
static long | ntInt (number &a, const coeffs cf) |
static BOOLEAN | ntGreaterZero (number a, const coeffs cf) |
static BOOLEAN | ntGreater (number a, number b, const coeffs cf) |
static void | ntCoeffWrite (const coeffs cf, BOOLEAN details) |
number | ntDiff (number a, number d, const coeffs cf) |
static number | ntAdd (number a, number b, const coeffs cf) |
static number | ntSub (number a, number b, const coeffs cf) |
static number | ntMult (number a, number b, const coeffs cf) |
static void | ntNormalizeDen (fraction result, const ring R) |
static number | ntDiv (number a, number b, const coeffs cf) |
static number | ntInvers (number a, const coeffs cf) |
static void | ntPower (number a, int exp, number *b, const coeffs cf) |
static void | ntWriteLong (number a, const coeffs cf) |
static void | ntWriteShort (number a, const coeffs cf) |
static const char * | ntRead (const char *s, number *a, const coeffs cf) |
static void | ntNormalize (number &a, const coeffs cf) |
static BOOLEAN | ntCoeffIsEqual (const coeffs cf, n_coeffType n, void *param) |
static number | ntNormalizeHelper (number a, number b, const coeffs cf) |
static number | ntGcd (number a, number b, const coeffs cf) |
static int | ntSize (number a, const coeffs cf) |
static number | ntMap00 (number a, const coeffs src, const coeffs dst) |
static number | ntMapZ0 (number a, const coeffs src, const coeffs dst) |
static number | ntMapP0 (number a, const coeffs src, const coeffs dst) |
static number | ntCopyMap (number a, const coeffs cf, const coeffs dst) |
static number | ntGenMap (number a, const coeffs cf, const coeffs dst) |
static number | ntCopyAlg (number a, const coeffs cf, const coeffs dst) |
static number | ntGenAlg (number a, const coeffs cf, const coeffs dst) |
static number | ntMap0P (number a, const coeffs src, const coeffs dst) |
static number | ntMapPP (number a, const coeffs src, const coeffs dst) |
static number | ntMapUP (number a, const coeffs src, const coeffs dst) |
nMapFunc | ntSetMap (const coeffs src, const coeffs dst) |
Get a mapping function from src into the domain of this type (n_transExt) More... | |
static void | ntKillChar (coeffs cf) |
static number | ntConvFactoryNSingN (const CanonicalForm n, const coeffs cf) |
static CanonicalForm | ntConvSingNFactoryN (number n, BOOLEAN, const coeffs cf) |
static int | ntParDeg (number a, const coeffs cf) |
static number | ntParameter (const int iParameter, const coeffs cf) |
return the specified parameter as a number in the given trans.ext. More... | |
int | ntIsParam (number m, const coeffs cf) |
if m == var(i)/1 => return i, More... | |
static void | ntClearContent (ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf) |
static void | ntClearDenominators (ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf) |
static number | ntChineseRemainder (number *x, number *q, int rl, BOOLEAN, CFArray &inv_cache, const coeffs cf) |
static number | ntFarey (number p, number n, const coeffs cf) |
BOOLEAN | ntInitChar (coeffs cf, void *infoStruct) |
Initialize the coeffs object. More... | |
Variables | |
omBin | fractionObjectBin = omGetSpecBin(sizeof(fractionObject)) |
#define ADD_COMPLEXITY 1 |
complexity increase due to + and -
Definition at line 62 of file transext.cc.
#define BOUND_COMPLEXITY 10 |
maximum complexity of a number
Definition at line 65 of file transext.cc.
Definition at line 70 of file transext.cc.
#define DIFF_COMPLEXITY 2 |
complexity increase due to * and /
Definition at line 64 of file transext.cc.
#define MULT_COMPLEXITY 2 |
complexity increase due to * and /
Definition at line 63 of file transext.cc.
Definition at line 87 of file transext.cc.
#define ntRing cf->extRing |
Definition at line 81 of file transext.cc.
Definition at line 77 of file transext.cc.
TRUE iff num. represents 1.
Definition at line 68 of file transext.cc.
#define TRANSEXT_PRIVATES |
Definition at line 33 of file transext.cc.
|
static |
modifies a
Definition at line 1395 of file transext.cc.
poly gcd_over_Q | ( | poly | f, |
poly | g, | ||
const ring | r | ||
) |
Definition at line 414 of file transext.cc.
forward declarations
Definition at line 1310 of file transext.cc.
Definition at line 293 of file transext.cc.
Definition at line 955 of file transext.cc.
|
static |
Definition at line 2476 of file transext.cc.
|
static |
Definition at line 2239 of file transext.cc.
|
static |
Definition at line 2332 of file transext.cc.
|
static |
Definition at line 1632 of file transext.cc.
Definition at line 857 of file transext.cc.
|
static |
Definition at line 2161 of file transext.cc.
|
static |
Definition at line 2173 of file transext.cc.
Definition at line 373 of file transext.cc.
Definition at line 1997 of file transext.cc.
Definition at line 1889 of file transext.cc.
< t != 0 ==> numerator(t) != 0
Definition at line 141 of file transext.cc.
Definition at line 314 of file transext.cc.
Definition at line 898 of file transext.cc.
Definition at line 1130 of file transext.cc.
simple tests
cheap test if gcd's have been cancelled in both numbers
Definition at line 327 of file transext.cc.
Definition at line 2506 of file transext.cc.
Definition at line 1735 of file transext.cc.
Definition at line 2004 of file transext.cc.
Definition at line 1918 of file transext.cc.
TODO: normalization of a!?
Definition at line 568 of file transext.cc.
TODO: normalization of a!?
Definition at line 507 of file transext.cc.
Definition at line 807 of file transext.cc.
Definition at line 797 of file transext.cc.
Definition at line 705 of file transext.cc.
Definition at line 726 of file transext.cc.
Initialize the coeffs object.
Definition at line 2516 of file transext.cc.
Definition at line 774 of file transext.cc.
Definition at line 1176 of file transext.cc.
Definition at line 679 of file transext.cc.
Definition at line 670 of file transext.cc.
if m == var(i)/1 => return i,
Definition at line 2213 of file transext.cc.
Definition at line 307 of file transext.cc.
|
static |
Definition at line 2156 of file transext.cc.
Definition at line 1835 of file transext.cc.
Definition at line 2014 of file transext.cc.
Definition at line 1873 of file transext.cc.
Definition at line 2038 of file transext.cc.
Definition at line 2053 of file transext.cc.
Definition at line 1859 of file transext.cc.
Definition at line 1035 of file transext.cc.
Definition at line 1613 of file transext.cc.
|
static |
Definition at line 1106 of file transext.cc.
Definition at line 1654 of file transext.cc.
return the specified parameter as a number in the given trans.ext.
Definition at line 2191 of file transext.cc.
Definition at line 2182 of file transext.cc.
Definition at line 1242 of file transext.cc.
Definition at line 1603 of file transext.cc.
Get a mapping function from src into the domain of this type (n_transExt)
Q or Z --> Q(T)
Z --> K(T)
Z/p --> Q(T)
Q --> Z/p(T)
Z/p --> Z/p(T)
Z/u --> Z/p(T)
Z/p --> Z/p(T)
K(T') --> K(T)
K(T') --> K'(T)
K(T') --> K(T)
K(T') --> K'(T)
default
Definition at line 2075 of file transext.cc.
Definition at line 1808 of file transext.cc.
Definition at line 996 of file transext.cc.
Definition at line 1553 of file transext.cc.
Definition at line 1578 of file transext.cc.
omBin fractionObjectBin = omGetSpecBin(sizeof(fractionObject)) |
Definition at line 90 of file transext.cc.