105 coeffs C = O->basecoeffs();
150 t2 =
new bigintmat(O->getDim(), O->getDim(), C);
151 t2->
copySubmatInto(r, 1, O->getDim()+1, O->getDim(), O->getDim(), 1,1);
174 coeffs C = O->basecoeffs();
179 *rep =
new bigintmat(O->getDim(), O->getDim(), C);
180 for(
int i=0;
i<O->getDim();
i++) {
212 t1 =
new bigintmat(O->getDim(), O->getDim(), C);
void concatcol(bigintmat *a, bigintmat *b)
static FORCE_INLINE number n_Gcd(number a, number b, const coeffs r)
in Z: return the gcd of 'a' and 'b' in Z/nZ, Z/2^kZ: computed as in the case Z in Z/pZ...
const CanonicalForm int s
nforder_ideal()
0 Konstruktoren/Destruktoren ///
number det()
det (via LaPlace in general, hnf for euc. rings)
void simplifyContentDen(number *den)
ensures that Gcd(den, content)=1 enden hier wieder
void setMinTransfer(number a, number b)
nforder_ideal * nf_idMult(nforder_ideal *A, nforder_ideal *B)
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
nforder_ideal * nf_idInit(int i, coeffs O)
void getColRange(int j, int no, bigintmat *a)
copies the no-columns staring by j (so j...j+no-1) into the pre-allocated a
void setNormTransfer(number a, number b)
void Write()
IO: writes the matrix into the current internal string buffer which must be started/ allocated before...
bigintmat * elRepMat(bigintmat *a)
static FORCE_INLINE number n_Mult(number a, number b, const coeffs r)
return the product of 'a' and 'b', i.e., a*b
nforder_ideal * nf_idPower(nforder_ideal *A, int i)
Coefficient rings, fields and other domains suitable for Singular polynomials.
void copySubmatInto(bigintmat *, int sr, int sc, int nr, int nc, int tr, int tc)
copy the submatrix of b, staring at (a,b) having n rows, m cols into the given matrix at pos...
bigintmat * bimMult(bigintmat *a, bigintmat *b)
The main handler for Singular numbers which are suitable for Singular polynomials.
void StringSetS(const char *st)
void StringAppendS(const char *st)
bool skalmult(number b, coeffs c)
Multipliziert zur Matrix den Skalar b hinzu.
static FORCE_INLINE void n_Write(number n, const coeffs r, const BOOLEAN bShortOut=TRUE)
coeffs basecoeffs() const
void setBasisDenTransfer(number a)
void hnf()
transforms INPLACE to HNF
void PrintS(const char *s)
void getcol(int j, bigintmat *a)
copies the j-th column into the matrix a - which needs to be pre-allocated with the correct size...
bigintmat * modhnf(number p, coeffs c)
computes HNF(this | p*I)
static FORCE_INLINE void n_Power(number a, int b, number *res, const coeffs r)
fill res with the power a^b
static FORCE_INLINE number n_Copy(number n, const coeffs r)
return a copy of 'n'
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
nforder_ideal * nf_idAdd(nforder_ideal *A, nforder_ideal *B)
number get(int i, int j) const
get a copy of an entry. NOTE: starts at [1,1]
void Werror(const char *fmt,...)
void one()
Macht Matrix (Falls quadratisch) zu Einheitsmatrix.