31 gaussElem(
const fglmVector newv,
const fglmVector newp, number & newpdenom, number & newfac ) : v( newv ), p( newp ), pdenom( newpdenom ), fac( newfac )
37 #ifndef HAVE_EXPLICIT_CONSTR 40 void mac_gaussElem(
const fglmVector newv,
const fglmVector newp, number & newpdenom, number & newfac )
63 #ifndef HAVE_EXPLICIT_CONSTR 69 for ( k=
max; k > 0; k-- )
76 #ifndef HAVE_EXPLICIT_CONSTR 80 for ( k=
size; k > 0; k-- )
116 for ( k= 1; k <=
size; k++ ) {
122 temp=
nMult( fac2, pdenom );
126 temp=
nMult( pdenom, elems[k].pdenom );
132 number gcd = v.gcd();
136 number temp =
nMult( pdenom, gcd );
148 temp=
nDiv( pdenom, gcd );
185 isPivot[ pivotcol ]=
TRUE;
186 perm[
size]= pivotcol;
189 #ifndef HAVE_EXPLICIT_CONSTR
number getconstelem(int i) const
#define omFreeSize(addr, size)
bool pivot(const matrix aMat, const int r1, const int r2, const int c1, const int c2, int *bestR, int *bestC, const ring R)
This code computes a score for each non-zero matrix entry in aMat[r1..r2, c1..c2].
gaussElem(const fglmVector newv, const fglmVector newp, number &newpdenom, number &newfac)
fglmVector getDependence()
void nihilate(const number fac1, const number fac2, const fglmVector v)
static int max(int a, int b)
BOOLEAN reduce(fglmVector v)
void setelem(int i, number &n)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static FORCE_INLINE number n_SubringGcd(number a, number b, const coeffs r)