CoCoALib major versions history
CoCoALib-0.99 (23rd May 2007)
The biggest change from CoCoALib-0.98 is the reorganization of the code
into two libraries. Broadly speaking, CoCoALib now contains the core
algebraic capabilities whereas ApCoCoALib contains those functions more
directly relevant to applications.
CoCoALib-0.99 can be used by itself, whereas ApCoCoALib relies on
CoCoALib, so you must obtain both libraries if you want to use
its facilities.
Future updates to the two libraries will generally appear asynchronously.
Principal Changes from CoCoALib-0.9801 to CoCoALib-0.99
-
Reorganization into two libraries:
CoCoALib -- primarily "algebraic"
ApCoCoALib -- primarily "numerical"
(http://www.apcocoa.org)
More precisely, the files in CoCoALib-0.98 which are now in
ApCoCoALib are exactly:
- the numerical directory (and the Num***.H files)
- from AlgebraicCore directory the files TmpBorderBasis.C, TmpFGLM.C,
TmpLESystemSolver.C, TmpOrderIdeal.C (and the related
.H, .txt, example and test files)
-
Correct arithmetic between ZZ and machine integers
-
Added PPMonoid with unlimited exponents (NewPPMonoidEvZZ)
-
Revised CoCoAServer (again)
-
Function "convert" has been extended/corrected
NB: all files and directories starting with Tmp
are to be considered "alpha":
they work correctly, and the main functions will still exist in
future versions, but their syntax and/or implementation will probably
change.
--the first BETA release--
CoCoALib-0.9801 (30th March 2007)
Principal Changes from CoCoALib-0.98
- Greatly revised CoCoAServer, now compatible with CoCoA-4.7
- More graceful behaviour if you forget to create the
GlobalManager
CoCoALib-0.98 (9th March 2007)
Principal Changes from CoCoALib-0.96
- Compulsory use of
GlobalManager
for initialization of CoCoALib global variables
- New directory
numerical/ with
algebraic-numerical code (developed by the team in Dortmund)
-
New functions for polynomial factorization and Hilbert series (code from CoCoA-4, temporary interface)
-
New function
CanonicalHom greatly simplifies the use of
homomorphisms
-
Improved syntax for
NewPolyRing, in particular for
choosing the indeterminate names
NB: all files and directories starting with
Tmp
or
Num are to be considered "alpha":
they work correctly, and the main functions will still exist in
future versions, but their syntax and/or implementation will probably
change.
CoCoALib-0.9601.tgz (22 June 2006)
Principal Changes from CoCoALib-0.96
- faster preprocessing routines for approximate points
- fixed Groebner basis bug (denoms were ignored if input had
rational coeffs)
- fixed function IsIndet
Principal Changes from CoCoALib-0.94
Here are the main changes from version 0.94:
Buchberger's algorithm
the files
GPair GPoly GRStats GReductor GOperations
are still distributed as pre-alpha release and are still
undergoing extensive rewriting to ensure
flexibility in constructing variants of Buchbeger's algorithm:
this means that the ideal/module operations now offered by GOperations
are correctly
working, but they are not properly documented and the syntax for
calling them might change in future versions.
CoCoALib-0.94 (19 October 2005)
Principal Changes from CoCoALib-0.92
Here are the main changes from version 0.92:
CoCoALib-0.92 (6 May 2005)
Principal Changes from CoCoALib-0.91
Here are the main changes from version 0.91:
CoCoALib-0.91 (21 November 2004)
Principal Changes from CoCoALib-0.90
Here are the main changes from version 0.90:
- new directory structure (this is going to be the official structure
of the library)
- new all-in-one header file "CoCoA/library.H" (see any example)
- simpler compilation using better Makefiles
- matrix ordering work better now (see ex-OrderingGrading1)
- new monomial function for building polynomials (see ex-PolyInput1)
The CoCoA Forum
You can find discussions about various aspects of CoCoALib on the CoCoA
forum which is hosted at the following address:
http://www.apcocoa.org/forum/
It would be a good place to seek help and advice about using CoCoALib,
and to contribute to CoCoALib with your own comments and opinions.
Buchberger's algorithm
the files
GPair.[CH] GPoly.[CH] GRStats.[CH] GReductor.C
reduce.C are still distributed as pre-alpha release and will
undergo (spring 2005) extensive rewriting to ensure
flexibility in constructing variants of Buchbeger's algorithm.
Please read the README files for more information.
CoCoALib-0.90 (12 November 2004)
The CoCoA directory contains the sources of the CoCoA5 C++ library. The
CoCoA5 library offers functions to perform calculations in Computational
Commutative Algebra. Our intention is that the library should be
pleasant to use, and offer good run-time performance.
Where To Start
Compile CoCoALib following the instructions in the file INSTALL.
Read a little documentation: start with ring.txt.
Look at the example programs in the directory EXAMPLES/ and try
compiling and running them.
Documentation and how to use the library
The files whose names end in ".txt" in this directory are documentation.
If you are new to CoCoALib then start by reading ring.txt and ZZ.txt.
The programs in the directory EXAMPLES are intended to act as "documentation
by example" (and are more fun than lots of ".txt" files).
Debugging with CoCoALib
CoCoALib does offer some help in tracking down bugs in programs which
use it. If the preprocessor symbol CoCoA_DEBUG is set then various
run-time assertions are enabled which perform extra checks in various
functions. Read config.txt to learn about CoCoA_DEBUG.
The files MemPool.txt, debug_new.txt and leak_checker.txt give advice
about tracking down possible memory use problems.
Bugs and other problems
The code here is still quite young, and has been little tested. It is
likely that you will come across some bugs or other undesirable
behaviour. If that happens, please let us know. Your bug report should
include a (small) program which exhibits the bad behaviour with a clear
indication of what you think the program should do, and where it
apparently goes wrong.
Buchberger's algorithm
the files GPair.[CH] GPoly.[CH] GRStats.[CH] GReductor.C
reduce.C are still distributed as pre-alpha release and will
undergo (spring 2005) extensive rewriting to ensure
flexibility in constructing variants of Buchbeger's algorithm.
CoCoALib-0.0.0 (23 June 2003)
Observations
This is our very first code release of CoCoALib: we look
forward to receiving your constructive criticism to help develop a
clear/effective release mechanism.
Documentation
The files whose names end in
.txt contain
documentation about the source files having the same basename.
Several source files are still undergoing rapid development, and
their documentation may be a bit out of date (we're only human
after all :-).
You might also find it useful to have a look at our doxygen documentation
for the
developers
and for the
users
(up-to-date, but still rather incomplete)
Buchberger's algorithm
the files
GPair.[CH] GPoly.[CH] GRStats.[CH] GReductor.C
reduce.C are distributed as pre-alpha release and will
undergo (Oct-Nov 2003) extensive rewriting to ensure
flexibility in constructing variants of Buchbeger's algorithm.