linbox-team / fflas-ffpack

FFLAS-FFPACK - Finite Field Linear Algebra Subroutines / Package
http://linbox-team.github.io/fflas-ffpack/
GNU Lesser General Public License v2.1
55 stars 22 forks source link
blas-libraries finite-fields linear-algebra

FFLAS-FFPACK: Finite Field Linear Algebra Subroutines/Package

CI Inria: Build Status

PURPOSE

The FFLAS-FFPACK library provides a set of basic routines for linear algebra over a finite field or the ring of integers with dense and sparse matrices.

It is inspired by the BLAS interface (Basic Linear Algebra Subprograms) and the LAPACK library for numerical linear algebra, and shares part of their design. Yet it differs in many aspects due to the specifities of computing over exact domains such as a finite fields and the field of rationals:

LICENSE

FFLAS-FFPACK is distributed unded the terms of the GNU LGPL v2.1 or later (see COPYING.LESSER).

REQUIREMENTS:

INSTALLATION

In brief:

Most commonly used options

Type ./configure --help to list all options available. Note that givaro is automatically detected by pkg-config, so you no longer need to pass a --with-givaro=... option. You may need to set the PKG_CONFIG_PATH environment variable to <givaro-prefix>/lib/pkgconfig if you have installed it in a non standard directory.

For example on a x86_64 architecture:

Then, simply run make; make autotune; make install; make check Note that running the autotune target is optional but recommended as it will tune up the thresholds of various algorithms to your specific target host. make check is also optional but recommended as a sanity check.

see INSTALL for further details.

Homebrew install on Mac OSX

Homebrew bottles for fflas-ffpack and givaro are made available by Macaulay2's tap. You can install them with the following steps:

brew tap Macaulay2/tap
brew install givaro
brew install fflas-ffpack

KNOWN BUGS

AVAILABILITY

from linbox-team/fflas-ffpack

AUTHORS

The FFLAS-FFPACK group (see AUTHORS file for a list of contributors).

Citing FFLAS-FFPACK

If your research depends on the FFLAS-FFPACK library, please consider citing the project as

@manual{fflas-ffpack,
title = {{FFLAS-FFPACK}: {F}inite {F}ield {L}inear {A}lgebra {S}ubroutines / {P}ackage},
author = {The FFLAS-FFPACK group},
edition = {v2.4.1},
year = {2019},
note = {\url{http://github.com/linbox-team/fflas-ffpack}}
}

Or you may also consider citing the related research article:

@article{DGP:2008,
author = {Jean-Guillaume Dumas and Pascal Giorgi and Cl{\'e}ment Pernet},
title = {Dense Linear Algebra over Word-Size Prime Fields: the FFLAS and FFPACK Packages},
journal = {ACM Trans. on Mathematical Software (TOMS)},
volume = {35},
number = {3},
year = {2008},
issn = {0098-3500},
pages = {1--42},
doi = {10.1145/1391989.1391992},
publisher = {ACM Press},
address = {New York, NY, USA}
}

Contact and discussion

For any bug report, feature or help request, please file an issue on github's issue tracker.

Please address any other request, suggestion and comment to the discussion group ffpack-devel.