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?