![]() |
My Project
|
#include "misc/auxiliary.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 diff 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 number | ntExactDiv (number a, number b, 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) |
static number | ntInitMPZ (mpz_t m, const coeffs r) |
static void | ntMPZ (mpz_t m, number &n, const coeffs r) |
BOOLEAN | ntInitChar (coeffs cf, void *infoStruct) |
Initialize the coeffs object. More... | |
Variables | |
VAR omBin | fractionObjectBin = omGetSpecBin(sizeof(fractionObject)) |
#define ADD_COMPLEXITY 1 |
complexity increase due to + and -
Definition at line 61 of file transext.cc.
#define BOUND_COMPLEXITY 10 |
maximum complexity of a number
Definition at line 64 of file transext.cc.
Definition at line 69 of file transext.cc.
#define DIFF_COMPLEXITY 2 |
complexity increase due to diff
Definition at line 63 of file transext.cc.
#define MULT_COMPLEXITY 2 |
complexity increase due to * and /
Definition at line 62 of file transext.cc.
Definition at line 86 of file transext.cc.
#define ntRing cf->extRing |
Definition at line 80 of file transext.cc.
Definition at line 76 of file transext.cc.
TRUE iff num. represents 1.
Definition at line 67 of file transext.cc.
#define TRANSEXT_PRIVATES |
Definition at line 33 of file transext.cc.
|
static |
modifies a
Definition at line 1391 of file transext.cc.
poly gcd_over_Q | ( | poly | f, |
poly | g, | ||
const ring | r | ||
) |
helper routine for calling singclap_gcd_r
Definition at line 275 of file transext.cc.
Definition at line 413 of file transext.cc.
forward declarations
Definition at line 1306 of file transext.cc.
Definition at line 292 of file transext.cc.
Definition at line 954 of file transext.cc.
|
static |
Definition at line 2479 of file transext.cc.
|
static |
Definition at line 2242 of file transext.cc.
|
static |
Definition at line 2335 of file transext.cc.
|
static |
Definition at line 1635 of file transext.cc.
Definition at line 856 of file transext.cc.
|
static |
Definition at line 2164 of file transext.cc.
|
static |
Definition at line 2176 of file transext.cc.
Definition at line 372 of file transext.cc.
Definition at line 2000 of file transext.cc.
Definition at line 1892 of file transext.cc.
< t != 0 ==> numerator(t) != 0
Definition at line 140 of file transext.cc.
Definition at line 313 of file transext.cc.
Definition at line 897 of file transext.cc.
Definition at line 1126 of file transext.cc.
simple tests
cheap test if gcd's have been cancelled in both numbers
Definition at line 326 of file transext.cc.
Definition at line 1627 of file transext.cc.
Definition at line 2509 of file transext.cc.
Definition at line 1738 of file transext.cc.
Definition at line 2007 of file transext.cc.
Definition at line 1921 of file transext.cc.
TODO: normalization of a!?
Definition at line 567 of file transext.cc.
TODO: normalization of a!?
Definition at line 506 of file transext.cc.
Definition at line 806 of file transext.cc.
Definition at line 796 of file transext.cc.
Definition at line 704 of file transext.cc.
Definition at line 725 of file transext.cc.
Initialize the coeffs object.
Definition at line 2544 of file transext.cc.
Definition at line 2519 of file transext.cc.
Definition at line 773 of file transext.cc.
Definition at line 1172 of file transext.cc.
Definition at line 678 of file transext.cc.
if m == var(i)/1 => return i,
Definition at line 2216 of file transext.cc.
Definition at line 306 of file transext.cc.
|
static |
Definition at line 2158 of file transext.cc.
Definition at line 1838 of file transext.cc.
Definition at line 2017 of file transext.cc.
Definition at line 1876 of file transext.cc.
Definition at line 2041 of file transext.cc.
Definition at line 1862 of file transext.cc.
Definition at line 2527 of file transext.cc.
Definition at line 1034 of file transext.cc.
Definition at line 1609 of file transext.cc.
|
static |
Definition at line 1102 of file transext.cc.
Definition at line 1657 of file transext.cc.
return the specified parameter as a number in the given trans.ext.
Definition at line 2194 of file transext.cc.
Definition at line 1238 of file transext.cc.
Definition at line 1599 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 2078 of file transext.cc.
Definition at line 1811 of file transext.cc.
Definition at line 1549 of file transext.cc.
Definition at line 1574 of file transext.cc.
VAR omBin fractionObjectBin = omGetSpecBin(sizeof(fractionObject)) |
Definition at line 89 of file transext.cc.