This area is under developement so stronger commands will appear in later versions. What we mean by simplify is not in the spirit of Mathematica's Simplify. They tend to factor expressions so that the expressions become very short. We expand expressions apply rules to the expressions which incorporate special relations the entries satisfy. Then we rely on cancelation of terms. The theoretical background lies in noncommutative Gröbner basis theory, and the rules we are implementing come from papers of Helton, Stankus and Wavrik [IEEE TAC March 1998].
The commands in this section are designed to simplify polynomials in
,
,
,
,
,
and a few slightly more complicated inverses.
The commands in order of strength are NCSR, NCS1R, NCS2R. Of course, for a stronger the command, more rules get applied and so the command takes longer to run.
First, NCS1R normalizes
to
provided
is a commutative expression (only works for numbers
in version 0.2 of NCAlgebra). The following list of rules are
applied.
(0)
(1)
(2)
(3)
(4)
(5)
(6)
The command NCS2R increases the range of expressions
to include
, but
the reductions for each of these inverses is considerably
less powerful than for the case of
.
An example: if
, then
the first reduction using the list of rules in NCSR gives
and the second reduction gives
which is the output from
.
NCSimplify0Rational is an old attempt at simplification. We do not use it much.