Posted Dec 1, 1995
Currently the three most popular commercial computer algebra systems are Mathematica, Maple, and MACSYMA (the 3 M's). These systems provide a wide variety of symbolic computation facilities for commutative algebra and contain implementations of powerful algorithms in that domain. The Gröbner Basis Algorithm, for example, is an important tool used in computation with commutative algebras and in solving systems of polynomial equations.
On the other hand, most of the computation involved in linear control theory is performed on matrices and these do not commute. A typical issue of IEEE TAC is full of A B C D type linear systems and computations with the A B C D's or partitions of them in to block matrices. The 3 M's are weak in the area of non-commutative operations. They allow a user to declare an operation to be non-commutative, but provide very few commands for manipulating such operations and no powerful algorithmic tools.
It is the purpose of this article to report on applications of a powerful tool: a on-commutative version of the Gröbner Basis Algorithm. The commutative version of this algorithm is implemented on each of the three M's. It has many applications ranging from solving systems of equations to computations involving polynomial ideals. The noncommutative version is relatively new [Mora]. Our application to the simplification of expressions which occur in systems theory is unique. We will describe the Gröbner Basis for several elementary situations which arise in systems theory. These give (in a sense to be made precise) a ``complete'' set of simplifying rules for formulas which arise in these situations. We have found that this process elucidates the nature of simplifying rules and provides a practical means of simplifying some types of complex expressions.
The research required the use of software suited for computing with non-commuting symbolic expressions. Most of the research was performed using a special purpose system developed for the project by J. Wavrik. This system uses a new approach to the development of mathematical software. It provides the flexibility needed for experimentation with algorithms, data representation, and data analysis.
In another direction, Helton, Miller and Stankus have written packages for Mathematica called NCAlgebra which extend many of Mathematica's commands to symbolic expressions in non-commutative algebras. We have incorporated in these packages some of the results on simplification described in this paper.