CoCoA
  Computing in Commutative Algebra  



Home Page
The team
Downloading
Packages
System
overview

Users
Algorithms
History
Support


System Overview

Below you may find some information about the design of CoCoA and some of its strong points.

The strong points of CoCoA 3

With our system we basically do operations over commutative rings of polynomials. For example we may compute:
Gröbner bases and syzygies
minimal free resolutions
intersections and divisions
elimination of indeterminates
homogenization
Poincaré series and Hilbert functions
factorization of polynomials
toric ideals
In addition, the capabilities of the system and the flexibility of its use are greatly enhanced by the high-level original programming language CoCoAL, which allows the user to code his own algorithms in a straightforward way. Most of the algorithms implemented in CoCoA are new and have proved to be very efficient.


The design of CoCoA 3

The architecture of CoCoA 3 is designed to offer flexibility through efficiency, portability, and programmability.

It runs on the following platforms:

Unix (SunOS, Solaris, Digital Unix)
Macintosh (MacOS)
PC (DOS, Windows95, Linux)

Most of the code is platform independent; the kernel is written in the C language and a library is written in CoCoAL, the high-level language of the system.

There are three main components: User Interface, Engine, and Math.

There are different interfaces for different machines and each one interacts with the system using a Low Level Protocol (LLP), which is platform independent.

Engine is the main motor: it includes the interpreter of the CoCoAL language which allows it to exchange LLP-inputs and LLP-outputs with the interface. Requests of computations are forwarded by Engine to Math, which contains all the mathematical algorithms to manipulate coefficients, polynomials, ideals, modules and so on.

Among the various items of documentation of the system a comprehensive online help is included starting from the release 3.4.


Please send comments or suggestions to cocoa@dima.unige.it
Last Update: July 9, 1999.