Obsolete page
Please use to get latests releases.
Source files
- ZMAKE: A C tool that should be able to compile ZEN and ZENFACT on every computer with a POSIX compliant ANSI-C compiler.
- ZEN: The complete library. Includes all of the
modules below.
- ZEN engine (sys, Zbn, Zeg, Zed, Zer, Zext,
Zep, prgm): The engine of the library. Contains the big integers
routines, the extensions routines, and the modular operations for
unlimited sized integers. Also, contains compilation tools and some
test programs.
- Zeps: The modular operations for small
integers fitting in a computer word.
- Ze2: The characteristic 2
operations. Provides fast operations in finite fields
GF(2m).
- Zetab: Tabulated rings. Allows tabulation
of the operations in small rings (cardinality less than 256).
- Zelog: Tabulated fields. Allows
tabulation of the operations in small finite fields (cardinality less
than 65536), using a generator of the field.
- Zem: Montgomery representation of modular
finite fields. Can be used with every odd modulus.
- Zec: Chinese remainder representation of a
composed extension. Can be used as soon as a factorisation of the
modulus (integer or polynomial) is known.
- Zef: Provides basic operations on
fractions. All the other operations (polynomials, matrices, etc...)
can be used over Q but without any warranty of efficiency. Can
be used with unset denominators in order to perform operations on
relative integers.
- ZENFACT:
A library built on top of ZEN that provides operations on integers and polynomials such as pseudo-prime tests and factorization of polynomials.
Since version 3.0, we no more provide separate packages.
Version |
File |
Date and size |
3.0r4 |
|
06/11/2004 11:49 647339 octets (environ 4 mn avec un modem 56K)
|
3.0r0 |
|
06/11/2004 11:49 654391 octets (environ 4 mn avec un modem 56K)
|
Patches
Beginning with version 3.0, we will now provide patches for zen between major releases. These patches may introduce (but also hopefully correct) some bugs. This will allow us to introduce new functionnalities more rapidly.
Original version |
Patched version |
Patch file |
Change log |
Date and size |
3.0r0 |
3.0r1 |
|
Apply this patch using the following command:
gzip -d < ZEN-3.0patch0-1.gz | patch -p0 -E
Changelog:
Comments in zmake files to be more explicit.
Including __FILE__ and __LINE__ in malloc functions call when DebuggingMalloc is enabled.
Modifying ZBNReadFromString and ZBNPrintToString so as to be able to deal with basis from 2 to 36 (instead of 16) and new test for this feature in zbntest.
A few compilation warnings fixed
Fixing compilation bug in zenfact : flag ZEN_NO_TEST was not set in optimized mode.
Left TODO: Bibliography should be updated in zenfact.
Left TODO: we must find a way to see in zmake if bounds-checking is enabled or not. Feature disabled in defines.h because bounds-checking is not part of a standard gcc distribution.
Added patch files generation tool using CVS (zen/makepatch) and suppressed zenfact/VERSION and zmake/VERSION files to avoid confusion between patch files.
|
Nov 06th, 2004 11:49 9315 bytes |
3.0r1 |
3.0r2 |
|
Apply this patch using the following command:
gzip -d < ZEN-3.0patch1-2.gz | patch -p0 -E
Changelog:
Patching a small problem of compilation when optimizing and profiling features were enabled.
|
Nov 06th, 2004 11:49 863 bytes |
3.0r2 |
3.0r3 |
|
Apply this patch using the following command:
gzip -d < ZEN-3.0patch2-3.gz | patch -p0 -E
Changelog:
Patching a small problem of documentation compilation under Debian linux distribution (thanks to...).
Fixing bugs in documentation of multiplication and division functions of zbn.
|
Nov 06th, 2004 11:49 1435 bytes |
3.0r3 |
3.0r4 |
|
Apply this patch using the following command:
gzip -d < ZEN-3.0patch3-4.gz | patch -p1 -E
Changelog:
Gather all three directories zen zenfact and zmake in a ZEN directory with VERSION and makepatch.
Change makepatch accordingly
Include typos and bugfixes by Reynald Lercier
Include improvements by Reynald Lercier in general multiplication of polynomials
|
Nov 06th, 2004 11:49 6339 bytes |
We assume that you have detarred the initial source file in a directory ZEN, so that your directory looks like the following:
> ls -1 ZEN
zen
zenfact
zmake
In order to use the patch file ZENpatchY-Z.gz, place yourself in your directory ZEN and type the command that is adviced.
All patches have to be applied sequentially. If the version doesn't match, a message similar to the following one will appear
This file doesn't appear to be the 3.0 version -- patch anyway? [n] n
Answer no! Then, have a look at zen/VERSION file to check your current version.
Old versions
For compatibility purpose, one can find old distributed versions below.
Version |
2.1 |
2.0 |
ZEN |
|
|
ZENFACT |
|
|
|