                         Ideas to code in Mathomatic
                         ---------------------------

Simplify nested radicals like ((9 + 4*(2^.5))^.5) to (1 + 2*(2^.5)).  This
may be difficult, I don't know how this is generally done.  Slow trial and
error algorithms are not acceptable for this.

Use the GNU Scientific Library (GSL) to automatically numerically solve any
degree numeric polynomial equation, like "misc/roots.c" does, when symbolic
solving fails.  Unfortunately, this will make Mathomatic dependent on the
GSL, so I may not do this.  Instead, the general cubic formula in
"tests/cubic.in" could be hard-coded as a solve routine function, so any
cubic equation could be automatically solved.

Implement complex number factorials, when an accurate floating point complex
number gamma calculating function is found.  The GSL does this.

Implement natural logarithms as the "log()" function, using a dummy operand
internally.  The dummy operand can be the NULL variable and should be first.
The rules for logarithms can be slowly added later.  This is a large project.

Make polynomial gcd calculation partially recursive.  This is difficult, the
expression storage areas are currently static globals.  If successful, this
will make polynomial gcd calculation multivariate, so it will succeed with
large expressions with many variables.
