I believe that cabs(a) used to return sqrt('realpart(a)^2+'imagpart(a)^2),
though it now returns 'abs(a) (prints as |a|). I think the former is more
in the spirit of cabs (which is supposed to give you an explicit formula,
not just punt to a nounform), so I would consider the current behavior to
be a bug.
If I remember correctly, a few years ago, someone tried to unify abs and
cabs (I objected) -- this may be related to that?
As a workaround, you can do cabs(rectform(a))^2 =>
'realpart(a)^2+'imagpart(a)^2.
Unfortunately, rectform(abs(a)) currently returns 'abs(a) -- again, I
think this is a bug. If you're starting with the abs form, I suppose you
could do subst(lambda([ex],cabs(rectform(ex))),'abs, ... ).
-s
On Wed, Jun 6, 2012 at 11:06 AM, Henry Baker <hbaker1 at pipeline.com> wrote:
> I'm trying to get maxima to prove that
>
> abs(a)^2=realpart(a)^2+imagpart(a)^2.
>
> I tell maxima:
>
> declare(a,complex);
> abs(a)^2=realpart(a)^2+imagpart(a)^2;
>
> What do I tell maxima to get it to simplify this?
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>