maxima - rules and patterns



On Mon, Feb 25, 2008 at 4:06 AM, Robert Marik <marik at mendelu.cz> wrote:

>  defrule(diffsum,derivative(a+b),derivative(a)+derivative(b));
>
>  but
>
>  diffsum(x+sin(x))
>
>  returns false :(

The rules constructed by defrule (and tellsimpafter) handle
 + and * differently from other operators.
An attempt to describe this is in the ref manual for matchdeclare.

There is some working tellsimpafter code for + and * matches
in share/contrib/ezunits/ezunits.mac.

Hope this helps,

Robert Dodier