Bergman is a system for computations in commutative and purely non-commutative graded algebra. It is mainly developed by Jörgen Backelin (Department of Mathematics, Stockholm University). Some additional facilities are implemented by participants of the joint project "Non-commutative computer algebra" (Stockholm University and the Institute of Mathematics and Computer Science of the Moldavian Academy of Sciences), supported by the Royal Swedish Academy of Sciences.

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:

The Common Lisp version was tested under CLISP on:

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.