127 void normalizeRow(
unsigned long *row,
unsigned i);
129 void insertRow(
unsigned long* row);
136 int findSmallestNonpivot();
138 int findLargestNonpivot();
165 void vectorMatrixMult(
unsigned long*
vec,
unsigned long **mat,
unsigned **nonzeroIndices,
unsigned *nonzeroCounts,
unsigned long*
result,
unsigned n,
unsigned long p);
171 void rem(
unsigned long* a,
unsigned long* q,
unsigned long p,
int & dega,
int degq);
177 void quo(
unsigned long* a,
unsigned long* q,
unsigned long p,
int & dega,
int degq);
182 void mult(
unsigned long*
result,
unsigned long* a,
unsigned long*
b,
unsigned long p,
int dega,
int degb);
189 int gcd(
unsigned long*
g,
unsigned long* a,
unsigned long*
b,
unsigned long p,
int dega,
int degb);
197 int lcm(
unsigned long*
l,
unsigned long* a,
unsigned long*
b,
unsigned long p,
int dega,
int degb);
202 static inline unsigned long multMod(
unsigned long a,
unsigned long b,
unsigned long p)
205 #define ULONG64 (unsigned long long) 207 #define ULONG64 (unsigned long)
LinearDependencyMatrix(unsigned n, unsigned long p)
unsigned long modularInverse(long long x, long long p)
void normalizeTmp(unsigned i)
static unsigned long multMod(unsigned long a, unsigned long b, unsigned long p)
void vectorMatrixMult(unsigned long *vec, unsigned long **mat, unsigned **nonzeroIndices, unsigned *nonzeroCounts, unsigned long *result, unsigned n, unsigned long p)
void mult(unsigned long *result, unsigned long *a, unsigned long *b, unsigned long p, int dega, int degb)
bool findLinearDependency(unsigned long *newRow, unsigned long *dep)
void rem(unsigned long *a, unsigned long *q, unsigned long p, int °a, int degq)
friend class NewVectorMatrix
~LinearDependencyMatrix()
int gcd(unsigned long *g, unsigned long *a, unsigned long *b, unsigned long p, int dega, int degb)
void quo(unsigned long *a, unsigned long *q, unsigned long p, int °a, int degq)
unsigned long * computeMinimalPolynomial(unsigned long **matrix, unsigned n, unsigned long p)
int lcm(unsigned long *l, unsigned long *a, unsigned long *b, unsigned long p, int dega, int degb)
int firstNonzeroEntry(unsigned long *row)