**Bergman** is public domain software available for
free download.

**Bergman** is a powerful
tool to calculate Gröbner bases in commutative
and non-commutative algebras, and in modules over them.
It may also be used to calculate some
invariants of algebras and modules: the Hilbert
series, and (in the non-commutative case) the Poincaré-Betti series,
the Anick resolution, and the Betti numbers.

The most important feature of **bergman** are computations both in
**non-commutative** and commutative cases. It also permits **degree-wise
output** of results; thus it may save partial results from calculations close to
or beyond the limit for calculations of entire Gröbner bases with
present-day computer strength.
This saves for the user partial results even the problem overheads the
strength of the computer.

**Bergman** offers the user a high level of flexibiliy.
Among the alternatives for ring set-ups are:
commutativity or non-commutativity;
various
strategies of Gröbner basis computation; a few different monomial orderings;
and various coefficient fields. The set-up may be changed interactively during
the session. Most calculations can be done both
for ideals and modules. In the Reduce version it is possible to include
indeterminates (with or without declared reduction rules) as coefficients
for the commutative computations; otherwise the coefficient field should
be a prime field.

**Bergman** is written in Standard Lisp, the Lisp dialect underlying
Reduce implementations. There is also available an experimentative Common
Lisp version.Therefore, **bergman** works under Reduce, PSL or Common Lisp (at least one
of them should be pre-installed), and commands are
written in respect to Reduce or Lisp syntax.

Till now, **bergman** was used and tested on the following platforms
with pre-installed Reduce or PSL:

- Sun-Sparc station under SunOS/Solaris and Linux;
- DEC alpha station under Dec OSF and Linux;
- PC under MS DOS and Linux.

- Sun-Sparc station under SunOS/Solaris and Linux;
- DEC alpha station under Dec OSF;
- PC under Linux, MS DOS, Windows 98, Windows ME, Windows NT, Windows XP.

**Bergman** is not a full computer algebra system. However, it is
an open system: the user can add his or her own procedures, written in Lisp or
R-Lisp. It should also be possible to use **bergman** as a Reduce package.