MathOverflow is a question and answer site for professional mathematicians. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am wondering if there is a program which can do simple operations over noncommutative rings, like expand products and substitute one expression for another.

To clarify, consider the following situation. I have two reductions $ab\mapsto 1$ and $ca\mapsto c-1$. If I consider the monomial $cab$ I can reduce it in two ways: $cab=c(ab)=c$ or $cab=(ca)b=(c-1)b=cb-b$. I can combine these computations to arrive at a third reduction $cb\mapsto b+c$.

I'm in a situation where I have upwards of twelve reduction rules, and it gets very complicated doing the reductions. I find myself making small errors. Thus, the need for a machine to do these computations for me.

To make this more precise, is there a program where I can first input a number of reductions, and then second have it work on a monomial and spit out a reduced form?

share|cite|improve this question
Partly related MO… Symbolic computations with differential operators (universal envelopings i.e. non-commutative variables) ? – Alexander Chervov Sep 26 '12 at 10:24

You may be satisfied by some noncommutative Gröbner basis programs: I know of the standalone Bergman and the GAP package GBNP.

share|cite|improve this answer
+1. "Bergman" is a very helpful program. – Vladimir Dotsenko Feb 9 '13 at 22:46

There is this non-commutative algebra package for Mathematica that is quite extensive

It can handle the symbolic computations in the question, among many other things.

share|cite|improve this answer

Magma can certainly deal with that. Not sure about other packages; Singular has been approaching a non-commutative extension for years, but I'm not sure of its status.

share|cite|improve this answer
The singular nc extension is called Plural (of course); it deals only with special classes of noncommutative algebras called G-algebras – M T Sep 27 '12 at 7:47

You can do quick computations with

(The page deals with homogeneous relations, but you can add a new variable $t$, homogenise the relations you want using it, and the add relations saying that $t$ commutes with $a$, $b$ and $c$. Doing this with your relations gives what seems to be infinitely many elements in the (lexicographic) Groebner basis)

share|cite|improve this answer

You could try SAGE. They have an online version (free) where everything is in python and you can run programs from the cloud. The downloadable version has a bit more functionality but is harder to use.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.