The LiDIA Web Site at Darmstadt
Copies of announcements:
Apparently-To: <NmbrThry@vm1.nodak.edu>
Approved-By: Victor Miller <victor@CCR-P.IDA.ORG>
Message-ID: <199604151556.RAA18833@voyager.cs.uni-sb.de>
Date: Mon, 15 Apr 1996 13:59:36 EDT
Reply-To: "LiDIA (Thomas P.)" <lidiaadm@cs.uni-sb.de>
Sender: Number Theory List <NMBRTHRY@vm1.nodak.edu>
From: "LiDIA (Thomas P.)" <lidiaadm@cs.uni-sb.de>
Subject: Announcement - LiDIA 1.2.1
To: Multiple recipients of list NMBRTHRY <NMBRTHRY@vm1.nodak.edu>
ANNOUNCEMENT
LiDIA
A library for computational number theory
Copyright (c) 1994, 1995, 1996 by the LiDIA Group - Version 1.2
Universit"at des Saarlandes
Fachbereich 14 - Informatik
Lehrstuhl Prof. Buchmann
Postfach 151150
D - 66041 Saarbr"ucken
-------------------------------------------------------------------
CONTENTS
@@@@@@@@
1) ABSTRACT
2) LiDIA GROUP
3) CONTENTS OF THIS RELEASE
3.1 What is new?
3.2 What is in work?
4) HOW TO GET AND INSTALL LiDIA
4.1) FTP procedure
4.2) Unpacking procedure
4.3) Installation procedure (short version)
4.4) Calling a test program
4.5) Installation procedure (long version)
5) NOTE
4.1) Send an email
4.2) Be a part of it
6) LiDIA GOES TO DARMSTADT
7) ACKNOWLEDGEMENTS
1) ABSTRACT
@@@@@@@@@@@
LiDIA is a *powerful C++ library* for computational number theory
which provides a collection of *highly optimized implementations*
of various multiprecision data types and time-intensive
algorithms. LiDIA is developed by the LiDIA Group, at the
Universit"at des Saarlandes and it is *free* for educational
purposes. The current version runs on
o alpha, sparc7, sparc8, mips, intel(paragon), hp, cray c90, rs6k
with the following compilers
o g++-2.6.x, g++-2.7.x, cfront-3.01, HP C++, MIPS C++, xlC, Sun's
acc, Watcom v.10, Borland-4.x
on the following operating systems
o SunOS, Solaris, OSF/1, OS/2, AIX-3.2.5, IRIX-5.2, Linux, FreeBSD,
HP-UX9.05, MacOS (*), Windows 95 (**)
supporting the object file formats
o a.out, ELF
(*) At the moment there is no automatic way to build LiDIA on
the Mac. We have built LiDIA manually using the CodeWarrior
C/C++ compiler, version 7. The corresponding project files
will be released soon.
(**) with some modifications (contact lidia@cs.uni-sb.de for more
information).
For a more detailed description of LiDIA's design and features we
refer to the manual.
2) LiDIA GROUP
@@@@@@@@@@@@@@
At the moment the LiDIA Group consists of the following people:
Werner Backes F-D Berger Ingrid Biehl
Johannes Buchmann John Cremona Sascha Demetrio
Thomas Denny Kurt Huwig Thorsten Lauer
Frank Lehmann Markus Maurer Oliver Morsch
Andreas M"uller Volker M"uller Stefan Neis
Thomas Papanikolaou Sachar Paulus Nigel Smart
Victor Shoup Thomas Sosnowski Patrick Theobald
Damian Weber Susanne Wetzel
Old Members
^^^^^^^^^^^
Oliver van Sprang Ren'e Weiskircher
3) CONTENTS OF THIS RELEASE
@@@@@@@@@@@@@@@@@@@@@@@@@@@
3.1) What is new?
^^^^^^^^^^^^^^^^^
The current version of LiDIA (1.2) is a major release. It follows
the beta-tested version 1.2.0b released on 26th of February 1996
by registered LiDIA users. Most of the work was done in extending
the package and in improving stability and performance.
o the factorization class now includes an implementation of the
self-initializing version of the multipolynomial quadratic sieve.
With this method LiDIA is now able to factor integers of size 75
digits (max). For example, a 50-digit number with two 25-digit
prime factors is now factored in 16 minutes on a sparc20.
o new template vectors and matrices have been included, unifying
matrices and lattices.
o new template implementation of Laurent power series and univariate
polynomials.
o a memory manager is now included providing 4 modi which can be
chosen at compile time: malloc (using the system's memory mana-
ger malloc/free), dentzer (using a buddy-algorithm combined with
free-list storage), boehm (Boehm's garbage collector) and default
(no memory manager at all).
3.2) What is in work?
^^^^^^^^^^^^^^^^^^^^^
o In beta testing
- Finite fields GF(2^n), GF(2^p)
- Generic multivariate rational function arithmetic
- Gr"obner bases
- Factoring in F_p[x] (Shoup's algorithms)
(pre-releases of these packages available on request)
o In work
- Porting of John Cremona's elliptic curve package
- Discrete logarithms using COS
- Symbolic computation package
- Invariants of number fields
- Counting points on elliptic curves over |F_p, p > 3
- Incoprorating PoSSo's Customizable Memory Manager into LiDIA
- LiDIA development environment (support for configuring, (remote)
control version, editing, compiling, running and debugging of
LiDIA programs)
4) HOW TO GET AND INSTALL LiDIA
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
4.1) FTP procedure
^^^^^^^^^^^^^^^^^^
LiDIA is available by anonymous ftp from
crypt1.cs.uni-sb.de:/pub/systems/LiDIA
ftp.cs.uni-sb.de:/pub/LiDIA
unix.hensa.ac.uk:/mirrors/LiDIA
If you have ncftp you can get LiDIA by simply typing
ncftp crypt1.cs.uni-sb.de:/pub/systems/LiDIA/LiDIA.tgz
else use the following ftp session. With > we denote the commands
you have to type in. // denotes a short explanation.
> ftp crypt1.cs.uni-sb.de // connect to the ftp server
> anonymous // your login name
> <complete email address> // your password is your email
// address. PLEASE give the
// correct email address.
> cd pub/systems/LiDIA // the directory where LiDIA
// resides
> binary // set binary mode for data
// transfer
> get README // get the README file
> get COPYRIGHT // get the COPYRIGHT file
> get LiDIA.tgz // get the package
> bye // disconnect
This session will get the files README, COPYRIGHT and LiDIA.tgz
and will place them in the current directory (from now on called
UNPACKDIR).
4.2) Unpacking procedure
^^^^^^^^^^^^^^^^^^^^^^^^
Now typing in
gunzip -c LiDIA.tgz | tar xvf -
will create a directory named LiDIA; in this directory the
following files/directories should exist:
UNPACKDIR/LiDIA:
Readme bugs/ doc/ lib/ makefile.os2
bin/ config/ include/ makefile src/
Readme ............................................... this file
bin ........... holds LiDIA's applications files (see make appl)
lib .................. holds LiDIA's library and thr primes file
config ...................... contains the configuration scripts
doc .......... contains LiDIA's documentation in various formats
include ............................ holds LiDIA's include files
makefile ............................. for UNIX, Linux, AIX, ...
makefile.os2 ..................................... for OS/2 only
src ............................................ LiDIA's sources
4.3) Installation procedure (short version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
In the UNPACKDIR/LiDIA directory type
STEP 1. make configure
and answer the questions of the `configure' script. You will
be asked for the installation path of LiDIA (this is by default
/usr/local). Please enter an existing path on which you have
write permission, since this is neccessary by the `make install'
command below. If your machine produces objects in the ELF format
you should also edit the file
LiDIA/config/CONFIG
and replace the line
ASFLAGS = -DUMMY
with
ASFLAGS = -DHAVE_ELF
Solaris users should also define -DSOLARIS after the default
CFLAGS and CXXFLAGS (if this is not already guessed by the confi-
gure script). After this type
STEP 2. make
to build the library and (optionally)
STEP 2a. make appl
to create the applications which test the classes and demonstrate
their use. Finally, if and only if you have not chosen the
current path as installation path, type
STEP 3. make install
to install the library of LiDIA (libLiDIA.a) and the include
files on your system. If you want to change the installation path
please rerun STEP 1 before calling `make install'. LiDIA's
library is installed by default on
/usr/local/lib/LiDIA/$host-cpu/$cpp/libLiDIA.a
where host-cpu is determined by the command `config.guess' of
the GNU software and $cpp is the C++ compiler used (in this way
you are allowed to create multiple libraries produced by
different compilers on the same machine). LiDIA's include files
are installed by default on
/usr/local/include/LiDIA
and finally LiDIA's binaries are installed on
/usr/local/bin/LiDIA/$host-cpu/$cpp
4.3) Calling a test program
^^^^^^^^^^^^^^^^^^^^^^^^^^^
To call a test program, change to the directory
UNPACKDIR/LiDIA/bin/$host-cpu/$cpp
by simply typing
cd UNPACKDIR/LiDIA/bin/$host-cpu/$cpp
The applications in this directory, try to test all functions of
the LiDIA classes. They are succesful, if they do not print an
error message.
4.4) Installation procedure (long version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Please read the chapter `Installing' in the manual
UNPACKDIR/LiDIA/doc/manual/lidiaman.ps
5) NOTE
@@@@@@@
5.1) Send an email
^^^^^^^^^^^^^^^^^^
After having installed LiDIA, please send us an email saying
that you have done so. This enables us to inform you about bugs,
bug fixes, new version, etc.
If you successfully installed LiDIA please tell us so If you had
no success at all and this is likely to be a bug in LiDIA,
(including incomplete / incorrect documentation), please report.
Note that we will probably not be able to reconstruct a bug
without a detailed description. The format suggested in the file
`bug_reports.form' in the LiDIA/bugs directory should be the
guide for all bug reports. Approved bugs will be included in the
file `bugs' which also resides in the LiDIA/bugs directory. You
can send your suggestions, enhancements, etc to
lidia@cs.uni-sb.de
Please, send bug reports (and fixes) to
lidia-bugs@cs.uni-sb.de
5.2) Be a part of it
^^^^^^^^^^^^^^^^^^^^
We would also appreciate all sorts of feedback, bug reports and
bug fixes, enhancements, contributions etc. At this point one
short note (answering the question posed frequently by LiDIA
users):
For programs contributed to LiDIA the copyright remains to the
author. However, once a program is contributed to LiDIA and is
released for the public with LiDIA it is not possible to remove
it from the package, since users may have built their work on top
of it. LiDIA's policy is to put the author's name in the manual,
the source code and in the announcement of the corresponding re-
lease. For more details, please read the file COPYRIGHT in the
main distribution directory.
6) LiDIA GOES TO DARMSTADT
@@@@@@@@@@@@@@@@@@@@@@@@@@
The LiDIA Group will move to Darmstadt (about 40km from Frankfurt)
by the end of the year, following Prof. J. Buchmann. Until the
movement is completed, the user support (a team of 6 programmers)
will remain in Saarbr"ucken.
We will inform you more precisely on this in about one month.
7) ACKNOWLEDGEMENTS
@@@@@@@@@@@@@@@@@@@
I would like to thank in the name of the LiDIA Group all users who
have up-loaded, installed and beta-tested LiDIA in this short a-
mount of time.
LiDIA profits from user contributions and various public domain
software packages: special thanks to Arjen Lenstra and Paul
Leyland for freelip-1.0, Ralf Dentzer for libI and the GNU
project for their superb software. LiDIA's development environment
uses GNU tools extensively.
Thanks also to Hans-J. Boehm and Alan J. Demers for the gc memory
manager.
Last but not least, I would like to thank my colleagues John
Cremona (Exeter University) and Nigel P. Smart (University of Kent
at Canterbury) for many useful comments and discussions.
Best to all of you,
Thomas Papanikolaou (TP) (papanik@cs.uni-sb.de)
-------------------------------------------------------------------
To remove yourself from this mailing list, send a message with the
subject of "unsubscribe" to lidia@cs.uni-sb.de. To obtain
additional information regarding this list and its archives, send a
message with the subject of "help" to lidiaadm@cs.uni-sb.de.
Apparently-To: <NmbrThry@vm1.nodak.edu>
Approved-By: Victor Miller <victor@CCR-P.IDA.ORG>
Message-ID: <9502231107.AA12659@crypt10.cs.uni-sb.de.cs.uni-sb.de>
Newsgroups: bit.listserv.nmbrthry
Date: Thu, 23 Feb 1995 09:36:46 EST
Reply-To: Thomas Papanikolaou <papanik@cs.uni-sb.de>
Sender: Number Theory List <NMBRTHRY%NDSUVM1.bitnet@UACSC2.ALBANY.EDU>
From: Thomas Papanikolaou <papanik@cs.uni-sb.de>
Subject: LiDIA Announcement
To: Multiple recipients of list NMBRTHRY
<NMBRTHRY%NDSUVM1.bitnet@UACSC2.ALBANY.EDU>
Dear Colleagues,
we are happy to announce the first version of
LiDIA
A library for computational number theory
Copyright (c) 1995 by the LiDIA Group - Version 1.0
Universit"at des Saarlandes
Fachbereich 14 - Informatik
Lehrstuhl Prof. Buchmann
Postfach 151150
D - 66041 Saarbr"ucken
CONTENTS
@@@@@@@@
1) ABSTRACT
2) LIDIA GROUP
3) CONTENTS OF THIS RELEASE
4) HOW TO GET AND INSTALL LiDIA
4.1) FTP procedure
4.2) Unpacking procedure
4.3) Installation procedure (short version)
4.4) Calling a test program
4.5) Installation procedure (long version)
5) NOTE
1) ABSTRACT
@@@@@@@@@@@
LiDIA is a C++ library for computational number theory which
provides a collection of highly optimized implementations of
various multiprecision data types and time-intensive algorithms.
LiDIA is developed by the LiDIA Group, at the Universit"at des
Saarlandes. The current version runs on
machine operating system base
-----------------------------------------------
sparc7 SunOS-4.1.2, 4.1.3 32 bit
sparc8 SunOS-4.1.3 32 bit
i386/i486 Linux-1.1.89, OS/2(*) 32 bit
Mips R4000 IRIX-5.2 32 bit
RS6000 AIX 32 bit
HP9000/7xx HP-UX9.05 32 bit
DEC alpha DEC OSF/1 64 bit
Macintosh (**) 32 bit
(*) Special OS/2 makefiles can be send on demand.
(**) At the moment there is no automatic way to build LiDIA on
the Mac. We have built LiDIA manually using the CodeWarrior
C/C++ compiler, version 4.5.
LiDIA can be compiled with both AT&T's cfront-3.0.1 and g++-2.4.5,
g++-2.5.8 and g++-2.6.x compilers.
For a more detailed description of LiDIA's design and features we
refer to the manual.
2) LiDIA GROUP
@@@@@@@@@@@@@@
At the moment the LiDIA-Group consists of the following people:
Werner Backes Oliver Morsch
Franz-Dieter Berger Andreas M"uller
Ingrid Biehl Volker M"uller
Johannes Buchmann Stefan Neis
Sascha Demetrio Thomas Papanikolaou
Thomas Denny Victor Shoup
Kurt Huwig Patrick Theobald
Thorsten Lauer Oliver van Sprang
Frank Lehmann Damian Weber
Christian Martini Ren'e Weiskircher
Markus Maurer Susanne Wetzel
3) CONTENTS OF THIS RELEASE
@@@@@@@@@@@@@@@@@@@@@@@@@@@
The current version of LiDIA (1.0a) contains the following multi-
precision data types:
bigint integer arithmetic
bigmod modular integer arithmetic
bigrational rational arithmetic
bigfloat real arithmetic (including Pi, E,
exp, log, sqrt, sin, cos, ...
bigcomplex complex arithmetic
Based on these types the following more elaborate classes are im-
plemented:
bigint_matrix linear algebra over the integers
lattice_basis lattice reduction algorithms (va-
riants of the LLL algorithm for
doubles, bigints and bigfloats).
lattice_gensys algorithms for finding lattices
from generating systems
rational_factorization arithmetic with factorizations of
integers (Trial Division, ECM).
4) HOW TO GET AND INSTALL LiDIA
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
4.1) FTP procedure
^^^^^^^^^^^^^^^^^^
LiDIA is available by anonymous ftp from
crypt1.cs.uni-sb.de:pub/systems/LiDIA
Here is a sample ftp session. With > we denote the commands you
have to type in. After // we give a short explanation.
> ftp crypt1.cs.uni-sb.de // connect to the ftp server
> anonymous // your login name
> <complete email address> // your password is your email
// address.
> cd pub/systems/LiDIA // the directory where LiDIA
// resides
> binary // set binary mode for data
// transfer
> get COPYRIGHT // get the COPYRIGHT file
> get LiDIA.tgz // get the package
> bye // disconnect
This session will get the files COPYRIGHT and LiDIA.tgz and will
place them in the current directory (from now on called
UNPACKDIR).
4.2) Unpacking procedure
^^^^^^^^^^^^^^^^^^^^^^^^
Now typing in
gunzip -c LiDIA.tgz | tar xvf -
will create a directory named LiDIA; in this directory the
following files/directories should exist:
UNPACKDIR/LiDIA:
Readme bugs/ doc/ lib/ src/
bin/ config/ include/ makefile*
4.3) Installation procedure (short version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
In the UNPACKDIR/LiDIA directory type
STEP 1. make configure
and answer the questions of the `configure' script. You will
be asked for the installation path of LiDIA (this is by default
the current directory). Please enter a path on which you have
write permission, since this is neccessary by the `make install'
command below. Then type
STEP 2. make
to build the library and (optionally)
STEP 2a. make appl
to create the applications which test the classes and demonstrate
their use. Finally, if and only if you have not chosen the
default installation path, type
STEP 3. make install
to install the library of LiDIA (libLiDIA.a) and the include
files on your system. If you want to change the installation path
please rerun STEP 1 before calling `make install'. LiDIA's
library is installed by default on
UNPACKDIR/LiDIA/lib/$ARCH/libLiDIA.a
where ARCH is determined by the command `uname -m'. LiDIA's
include files are installed by default on
UNPACKDIR/LiDIA/include
and finally LiDIA's binaries are installed on
UNPACKDIR/LiDIA/bin/$ARCH
4.3) Calling a test program
^^^^^^^^^^^^^^^^^^^^^^^^^^^
To call a test program, change to to the directory
UNPACKDIR/LiDIA/bin/$ARCH
by simply typing
cd UNPACKDIR/LiDIA/bin/$ARCH
The applications in this directory, try to test all functions of
the LiDIA classes. They are succesful, if they do not print an
error message.
4.4) Installation procedure (long version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Please read the chapter `Installing' in the manual
UNPACKDIR/LiDIA/doc/manual/lidiaman.ps
5) NOTE
@@@@@@@
After having installed LiDIA, please send us an email saying
that you have done so. This enables us to inform you about bugs,
bug fixes, new version, etc.
We would also appreciate all sorts of feedback, bug reports and
bug fixes, enhancements etc. If you successfully installed LiDIA
please tell us so. If you had no success at all and this is
likely to be a bug in LiDIA, (including incomplete/incorrect do-
cumentation), please report. Note that we will probably not be
able to reconstruct a bug without a detailed description. The
format suggested in the file `bug_reports.form' in the LiDIA/bugs
directory should be the guide for all bug reports. Approved
bugs will be included in the file `bugs' which also resides in
the LiDIA/bugs directory. You can send your suggestions, enhance-
ments, etc to
lidia@cs.uni-sb.de
Please, send bug reports (and fixes) to
lidia-bugs@cs.uni-sb.de
We will probably also set up a mailing list.
Ingrid Biehl
Johannes Buchmann
Thomas Papanikolaou (TP)