# [Maxima] difficulty with solve

David Chappaz david.chappaz at free.fr
Wed May 13 07:47:09 CDT 2009

```No need to apologise, Paul. I too make very numerous mistakes and sometimes
don't see the obvious... We're all here to learn !

-----Original Message-----
From: Paul Bowyer [mailto:pbowyer at olynet.com]
Sent: 13 May 2009 02:00
To: David Chappaz
Cc: Raymond Toy; fateman at cs.berkeley.edu; maxima at math.utexas.edu
Subject: Re: [Maxima] difficulty with solve

In apology to David Chappaz,
I didn't realize what you were trying to tell me when you replied
solve(a*y3 + b*y2 + c*y + d, y);

In thanks to Raymond Toy and Richard Fateman,
I, in fact, tried

a : coeff(expand(det1),y,3);
b : coeff(expand(det1),y,2);
c : coeff(expand(det1),y,1);
d : coeff(expand(det1),y,0);

and discovered there were solutions to my expressions, but as Mr.
Fateman observed, they were several pages long. Even the expression that
was returning the error message solved this way.

I'm still learning how to work with Maxima and I'm not yet familiar with
all of the ways I might take advantage of the various functions that are
listed in the documentation.

In answer to Mr. Fateman's question about what I might be doing with the
results, I've been playing around with finding implicit equations for
parametric curves. I see I have a lot more to learn before I find
something usable. I'll keep plugging away at it and maybe I'll turn up
something I can put into code. It's more interesting to try working
these kinds of problems out for myself than to just try finding
something someone else has put into code.

Thank you all for taking the time to explore my dilemma,

Paul Bowyer

Raymond Toy wrote:
>>>>>> "Paul" == Paul Bowyer <pbowyer at olynet.com> writes:
>>>>>>
>
>     Paul> Hi David:
>     Paul> I understand the complexity, but I do actually need the symbolic

>     Paul> solutions, if there are any. So, I'm looking for a response from
someone
>     Paul> who is a Maxima expert that can tell me if there is a problem in
solve,
>     Paul> especially when it just goes off and never returns, or returns
with an
>     Paul> error message. For other expressions I've tried solve returns an
empty
>     Paul> solution rather than an error message and does not seem to
compute forever.
>
> It's unfortunate that solve is so slow in this case.  But David
> Chappaz has given the necessary hints, I think, to get what you want.
>
> roots:solve(a*y^3+b*y^2+c*y+d,y);
>
> will give you the 3 roots you want in terms of a, b, c, and d.
>
> All you need to do is get a, b, c, and d from your original problem.
> You can do
>
> a : coeff(expand(det1),y,3);
> b : coeff(expand(det1),y,2);
> c : coeff(expand(det1),y,1);
> d : coeff(expand(det1),y,0);
>
> And then substitute these values into the messy result obtained from
> solve.
>
> But maybe just leaving the roots in terms of a, b, c, d is best.  You
> can easily substitute the desired coefficients in later.
>
> Ray
>
>

```