On Mon, 2007-02-12 at 19:58 -0600, Barton Willis wrote:
> Consider:
>
> (%i1) e : transpose(a)$
> (%i2) e : subst(a=0,e)$
> (%i3) ev(e);
> (%o3) transpose(0)
> (%i4) ev(e,transpose);
> (%o4) 0
>
> Why is (%i4) needed, why isn't (%o3) 0? Afterall
The argument for transpose must be a list or a matrix. For example:
(%i1) display2d: false$
(%i2) e: transpose(matrix([a,0],[a,0]))$
(%i3) e: subst(a=1,e)$
(%i4) ev(e);
(%o4) matrix([1,1],[0,0])
I guess that in your case transpose is not being evaluated because
is taken to be an undefined function different from the one
documented in the manual. I cannot tell you why
ev(transpose(0),transpose) gives 0 and not transpose(0). Someone
with a better knowledge of Maxima simplifications rules might tell
you.
Regards,
Jaime