You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
This directory contains an interface to the LiDIA library, version 1.3.1. It is already contained in LiDIA-1.3.1 and LiDIA-1.4a1, and is reproduced here only as a sample for the use of CLN.
LiDIA is available from ftp://ftp.informatik.th-darmstadt.de/pub/TI/systems/LiDIA (The LiDIA group has also a nice Web page.)
LiDIA has an abstract interface to the underlying long integer implementation. Using CLN instead of the default libI, lip or gmp has the following advantages:
- Maximum speed on all CPUs, since CLN is based on the highly optimized gmp-2.0.2.
- Very large integers profit from CLN's Sch�nhage-Strassen FFT multiplication (asymptotic bit complexity: O(N log N log log N)).
- Copying integers is fast: no copying is actually involved, only a reference count is manipulated.
- Small integers (absolute value < 2^29) are represented immediately, thus no memory allocation/deallocation is involved when dealing with small integers.
CLN does all this automatically.
INSTALLATION ------------
1. Build CLN.
2. Apply the first patch to LiDIA: $ cd .../LiDIA $ patch -p1 < .../cln/lidia-interface/LiDIA-patch1
3. Configure LiDIA as described in its manual.
4. Apply the second patch to LiDIA: $ cd .../LiDIA $ patch -p1 < .../cln/lidia-interface/LiDIA-patch2 You may have to do this by hand, if the patch fails.
5. Make two symbolic links $ ln -s .../cln/lidia-interface/interfaces/integers/cln \ .../LiDIA/src/interfaces/integers/cln $ ln -s .../cln/BUILDDIR/src .../LiDIA/src/kernel/integers/cln where .../cln/BUILDDIR is the directory in which you have built cln (i.e. there is a file .../cln/BUILDDIR/src/libcln.a).
6. Modify the definitions of the variables CLN_DIR and CLN_TARGETDIR in the file .../LiDIA/config/CONFIG : CLN_DIR must point to .../cln, CLN_TARGETDIR must point to .../cln/BUILDDIR.
7. Build LiDIA as described in its manual.
|