Presentation
GBLA is an open source (GPLv2) C library for linear algebra specialized for eliminating matrices generated during Gröbner basis computations in algorithms like F4 or F5.
GBLA is an open source (GPLv2) C library for linear algebra specialized for eliminating matrices generated during Gröbner basis computations in algorithms like F4 or F5.
Current stable source (version 0.2).
In order to use it, you can proceed as follows :tar xf gbla-x.y.z.tar.gz cd gbla-x.y.z ./autogen.sh ./configure make
The configure step can be customised. Help is provided with configure --help and can be used like configure CFLAGS="-march=native -03" to replace default "-g -O2".
If you need the tools :cd tools ; make ;
zcat mat1.gz | ./gbla -Computes the eliminations, uses 1 thread, outputs nothing, uses the old format, reads from the gunzipped stream mat1.gz.
zcat matrices/mat1.gbm.gz | ./gbla -n -v 1 -t 4 -Computes the eliminations, uses 4 threads, outputs minimal information, uses the new format, reads from the gunzipped stream matrices/mat1.gbm.gz.
./gbla -v 2 -t 32 -n matrices/mat1.gbmComputes the eliminations, uses 32 threads, outputs timings and information, uses the new format, reads from a matrix mat1 on disk.
./converter mat1 > mat1.gbmConverts a matrix in old format to a matrix in new format. A .gbm suffix is preferred for the new format.
zcat mat1.gz | ./converter -S -R - > mat1.gbmThis is the reading from stdin version. Also there is no sorting of the rows and no reversing.
./dump_matrix mat1Outputs basic information on matrix mat1 to stdout
./dump_matrix -n -l matrices/mat1.gbm > matrices/mat1.smsCreate a SMS file matrices/mat1.sms from new format matrix matrices/mat1.gbm.
zcat mat1.gz | ./dump_matrix -m - > matrices/mat1.txtPrints old-format matrix matrices/mat1.gz in Magma format on stdout.
The goal is to share a large database of matrices occurring in Gröbner basis computations (to date mainly F4 and F5 algorithm) for
benchmarking and testing purpose.
Our matrix database lists matrices in two formats, described in
[1]. The newer format matrices are suffixed by .gbm
and are preferred for downloading since they are an order of
magnitude smaller in disk space.
Both formats are usable in GBLA (don't forget the -n
option for using the newer format). The newer format produces
much lighter matrices; we list the other format for legacy
reasons.
Browse the Matrix Database (726 matrices, 327GB of downloads).
Old format | New format |
---|---|
b (32) | |
m (32) | m (32) |
n (32) | n (32) |
nnz (64) | nnz (64) |
p (32) | p (x) |
data (nnz * x) | rows (m * 32) |
cols (nnz * 32) | polmap (m * 32) |
rows (m * 32) | k (64) |
colid (k * 64) | |
polynb (32) | |
polynnz (64) | |
polyrow (polynb * 32) | |
polydata (polynz * 32) |
[1] | B. Boyer, C. Eder, J.-C. Faugère, S. Lachartre, and F. Martani Improved Parallel Gaussian Elimination for Gröbner Bases Computations in Finite Fields preprint (n/a) |
[2] | J.-C. Faugère and S. Lachartre. Parallel Gaussian Elimination for Gröbner bases computations in finite fields. In M. Moreno-Maza and J. L. Roch, editors, Proceedings of the 4th International Workshop on Parallel and Symbolic Computation, PASCO ’10, pages 89–97, New York, NY, USA, July 2010. ACM. pdf |
[3] | S. Lachartre. Algèbre linéaire dans la résolution de systèmes polynomiaux Applications en cryptologie. PhD thesis, Université Paris 6, 2008. n/a |
[4] | F. Martani. Faugère-Lachartre Parallel Gaussian Elimination for Gröbner Bases Computations Over Finite Fields. Master's Thesis, Sorbonne Univerités, UMPC, 2012. pdf |