 |
My Project
debian-1:4.1.1-p2+ds-4
|
Go to the documentation of this file.
26 #define STICKYPROT(msg) if (BTEST1(OPT_PROT)) Print(msg)
27 #define PROT2(msg,arg)
28 #define STICKYPROT2(msg,arg) if (BTEST1(OPT_PROT)) Print(msg,arg)
29 #define fglmASSERT(ignore1,ignore2)
46 fglmASSERT (
N >= 0,
"illegal Vector representation");
52 for(
int i =
N - 1;
i >= 0;
i--)
60 for(
int i =
N - 1;
i >= 0;
i--)
71 elems_clone = (number *)
omAlloc (
N *
sizeof (number));
72 for(
int i =
N - 1;
i >= 0;
i--)
104 for(
k =
N;
k > 0;
k--)
115 for(
k =
N;
k > 0;
k--)
131 number temp =
elems[
i - 1];
172 rep =
v.rep->copyObject ();
181 #ifndef HAVE_EXPLICIT_CONSTR
184 rep =
v.rep->copyObject ();
187 void fglmVector::mac_constr_i (
int size)
192 void fglmVector::clearelems ()
223 int vsize =
v.size ();
225 fglmASSERT (vsize <= rep->
size (),
"v has to be smaller oder equal");
228 for(
i = vsize;
i > 0;
i--)
231 term2 =
nMult (fac2,
v.rep->getconstelem (
i));
245 for(
i = vsize;
i > 0;
i--)
248 term2 =
nMult (fac2,
v.rep->getconstelem (
i));
249 newelems[
i - 1] =
nSub (term1, term2);
268 rep =
v.rep->copyObject ();
293 return !(*
this ==
v);
320 newelems = (number *)
omAlloc (n *
sizeof (number));
321 for(
i = n;
i > 0;
i--)
342 newelems = (number *)
omAlloc (n *
sizeof (number));
343 for(
i = n;
i > 0;
i--)
358 temp = (number *)
omAlloc (
s *
sizeof (number));
359 for(
i =
s;
i > 0;
i--)
366 for(
i =
s;
i > 0;
i--)
379 temp = (number *)
omAlloc (
s *
sizeof (number));
380 for(
i =
s;
i > 0;
i--)
390 for(
i =
s;
i > 0;
i--)
404 for(
i =
v.size ();
i > 0;
i--)
406 n =
nCopy (
v.getconstelem (
i));
471 theGcd =
nCopy (current);
484 while(
i > 0 && !gcdIsOne)
505 number theLcm =
nInit (1);
fglmVector & operator-=(const fglmVector &)
#define fglmASSERT(ignore1, ignore2)
number getconstelem(int i) const
fglmVectorRep * copyObject()
fglmVector & operator*=(const number &)
void setelem(int i, number n)
fglmVector & operator/=(const number &)
fglmVector operator+(const fglmVector &lhs, const fglmVector &rhs)
static FORCE_INLINE number n_NormalizeHelper(number a, number b, const coeffs r)
assume that r is a quotient field (otherwise, return 1) for arguments (a1/a2,b1/b2) return (lcm(a1,...
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
fglmVector operator-(const fglmVector &v)
number ejectelem(int i, number n)
void setelem(int i, number &n)
fglmVector & operator=(const fglmVector &v)
#define omFreeSize(addr, size)
fglmVector & operator+=(const fglmVector &)
int numNonZeroElems() const
int operator==(const fglmVector &)
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
void nihilate(const number fac1, const number fac2, const fglmVector v)
fglmVector operator*(const fglmVector &v, const number n)
fglmVectorRep * clone() const
int operator!=(const fglmVector &)
number getconstelem(int i) const
static FORCE_INLINE number n_SubringGcd(number a, number b, const coeffs r)
const Variable & v
< [in] a sqrfree bivariate poly
const CanonicalForm int s
int numNonZeroElems() const