Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/defeo/faast
Fast Arithmetic in Artin-Schreier Towers
https://github.com/defeo/faast
Last synced: about 4 hours ago
JSON representation
Fast Arithmetic in Artin-Schreier Towers
- Host: GitHub
- URL: https://github.com/defeo/faast
- Owner: defeo
- License: gpl-2.0
- Created: 2013-04-15T14:54:46.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-06-03T19:04:49.000Z (over 11 years ago)
- Last Synced: 2024-04-15T03:04:10.996Z (7 months ago)
- Language: C++
- Size: 977 KB
- Stars: 5
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: ChangeLog.md
- License: COPYING
Awesome Lists containing this project
README
Copyright (C) 2009-2013 Luca De Feo and Eric Schost.
FAAST is an open-source C++ library providing strongly object-oriented
data structures and high-performance algorithms for elements and
polynomials in Artin-Schreier towers over finite fields.The latest stable version of FAAST is available at
https://github.com/defeo/FAAST/archive/latest.zip.You can grab the latest sources from the GitHub repo at
https://github.com/defeo/FAAST.The API documentation is available at http://defeo.github.io/FAAST,
or can be downloaded from
https://github.com/defeo/FAAST/archive/gh-pages.zip.Copying Conditions:
===================FAAST is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your
option) any later version.FAAST is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.You should have received a copy of the GNU General Public License
along with FAAST; see the file COPYING. If not, write to the Free
Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.Installing Instructions:
========================Requirements
------------FAAST is built on top of Victor Shoup's NTL, you can download it at
http://www.shoup.net/NTL/. Only NTL 5.x is supported, work to port the
library to NTL 6 is ongoing.There's a few libraries that affect how NTL works. GMP is a
multiprecision arithmetic library that can be used by NTL to represent
large integers. Even though it is not expected to affect the overall
performances of FAAST, compiling NTL with GMP is still the recommended
method. GMP can be downloaded at http://gmplib.org/.gf2x is a library for multiplying polynomials over the binary
field. If you work on characteristic 2 fields and you are interested
in performance, then we recommend that you install gf2x and compile
NTL with support for it. gf2x can be downloaded at
http://gforge.inria.fr/projects/gf2x/.Instructions on how to compile NTL with support for GMP and/or gf2x
can be found at http://www.shoup.net/ntl/doc/tour.html.Compling
--------To compile FAAST, simply type
unzip FAAST-xxx.zip
cd FAAST-xxx/
./configure
make
make checkDuring the configure script FAAST checks for the presence of NTL,
GMP and gf2x; checks for GMP and gf2x are optional and can be disabled
through `--disable-ntl-static`. If NTL has been built as a shared library,
passing `--disable-ntl-static` might speed up the compilation.Notice that you might have to specify the paths to NTL, GMP
or gf2x if they are installed in some exotic directory; see `configure --help`.Installing
----------To install FAAST, from the compilation directory type
su
make installThe library will be installed to a default location, you can
change this by giving a different `--prefix` to the configure script.Generating the API docs
-----------------------The latest API docs are available online at
http://defeo.github.io/FAAST, or can be downloaded from
https://github.com/defeo/FAAST/archive/gh-pages.zip.If you wish, you can generate from your source pacakge. You must have
installed the doxygen documentation system for this. You can download
doxygen at http://www.doxygen.org/. You will also need LaTeX and
Xy-pic to generate some formulae, graphs and two logos.Once doxygen is installed, you can generate the documentation by typing
make doc
This creates a directory doc/html containing the documentation. You
can edit the file `doxy.conf` to enable more options and output formats,
refer to the doxygen manual.If you are interested in understanding the internals of FAAST, you can
generate a more detailed documentation by typingmake doc-dev
This creates a directory doc-dev/html containing the documentation.