# [Maxima] solve x^a*y^b-c*x-d*y

Stavros Macrakis macrakis at alum.mit.edu
Wed May 2 07:39:16 CDT 2012

```The function name "solve" gives an exaggerated sense of power....

In particular, the multi-equation case only handles systems of linear or
algebraic equations.  This is documented, but still disappointing.

Solve doesn't even handle trivial non-algebraic cases which can be handled
using utterly elementary techniques.  For example, solve has no problem
with sin(x)=0 (let's ignore the multiple root issue), but
solve([sin(x)=y,y=0],[x,y]) fails.  In that case, to_poly_solve does
succeed, and reports the multiple roots to boot.

It would be great if someone would work on extending solve and %solve.

By the way, as far as I can tell, Barton's %solve is better in every way
than solve.  It might be a good idea to have it replace the base system's
solve, except that its output format is (necessarily) different from
solve's, and it doesn't handle many of solve's fancy modes, so any code
that depends on solve will have problems.

-s

On Tue, May 1, 2012 at 12:41 PM, Mixon, Wilson <wmixon at berry.edu> wrote:

> I apologize for sending this message earlier without a subject line.
>
>
> I often use this function for illustration:
> z: x^a*y^b - c*x - d*y;
>
> Maxima will not provide the solution requested below.
> [Dx,Dy] : [diff(z,x),diff(z,y)];
> solve([Dx,Dy],[x,y]);
>
> I can solve the system in a few steps, as below.
> declare(a,noninteger)\$ assume(a>0,b>0,c>0,d>0,x>0,y>0)\$
> solve(Dx/Dy, x); subst(rhs(%[1]), x, Dy);
> solve(%,y);
> /*and so forth*/
>
> Does Maxima offer a way for me to tell solve( ) enough for it to return a
> solution?
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.math.utexas.edu/pipermail/maxima/attachments/20120502/52691be5/attachment.html>
```