> -----Original Message-----
> From: maxima-bounces at math.utexas.edu
> [mailto:maxima-bounces at math.utexas.edu] On Behalf Of sen1 at math.msu.edu
> Sent: Tuesday, August 22, 2006 6:59 PM
> To: maxima at math.utexas.edu
> Subject: cubics and quartics
>
> Hello,
> I was curious if the Cardan formulas are used in the computation of
> roots of cubic and quartic polynomials.
Yes. Look in the source for psolve.lisp, solvecubic and solvequartic, called
by solve1a in file solve.lisp
> I could not find them.
>
> Implementation of these seems straightforward for an
> experienced lisp programmer (which I, unfortunately, am
> not).
The math is tricky, so getting the algorithm right is trick. The lisp is
easy.
> Are there problems in implementing the Cardan formulas
> (potential disadvantages, etc)?
Yes, you want to try to keep the real roots real without any complex numbers
if possible. Since all CAS screw up the simplification of radicals and
nested radicals when they pretend they have a single value in all cases,
these formulas can be screwed up too.
>
> In general, one would like to find symbolic solutions of
> rational polynomials when possible (i.e., computing Galois
> groups when feasable). Of course, here, I am thinking of
> solutions by extracting roots (radicals).
There is usually little merit to finding exact expressions for roots when
those expressions are huge messes. What are you going to do with them?
Evaluate them numerically? Why not do that in the first place? Paste them
on your wall?
>
> Anyone know if this is done in other computer algebra programs?
All of them, probably.
>
> It would be nice to allow users to choose to implement
> symbolic or numerical methods for eigenvalues. Is this
> possible now, say by setting some variable true or false?
Exact eigenvalues tend to be impossible to find except for very simple
examples. It might even be plausible to have only numeric routines, and just
point out that the symbolic ones are the roots of the characteristic
polynomial, a one-line maxima program. This transformation is a bad idea
for numerics, however, since it is probably harder to find the roots than
the eigenvalues.
>RJF