Published in IEEE Transactions on Automatic Control, Volume 43, Issue 3, March 1, 1998, pages 302-314.
Copyright © 1998 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE. The definitive version is available at http://dx.doi.org/10.1109/9.661584.
NOTE: At the time of publication, the author Mark Stankus was not yet affiliated with Cal Poly.
Currently, the three most popular commercial computer algebra systems are Mathematica, Maple, and MACSYMA. 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 TRANSACTIONS ON AUTOMATIC CONTROL is full of linear systems and computations with their coefficient matrices A B C D’s or partitions of them into block matrices. Mathematica, Maple, and MACSYMA 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 paper to report on applications of a powerful tool, a non-commutative version of the Gröbner Basis algorithm. The commutative version of this algorithm is implemented in most major computer algebra packages. The non-commutative version is relatively new.