Re: Replacement according to the pattern

• To: mathgroup at smc.vnet.net
• Subject: [mg77567] Re: [mg77526] Replacement according to the pattern
• From: Sseziwa Mukasa <mukasa at jeol.com>
• Date: Wed, 13 Jun 2007 07:26:48 -0400 (EDT)
• References: <200706120518.BAA09356@smc.vnet.net>

```On Jun 12, 2007, at 1:18 AM, tomuf at seznam.cz wrote:

> Hello,
> I wanted to parse a big expression and according to some rules
> integrate it term by term. For example, I wanted to replace symbol
>
> HPL[{1, 1, 0}, u]
>
> where HPL(list,variable) is function from package, with (note that
> this simplified example has no mathematical sense)
>
> HPL[{1, 1, 0}, u] - D[HPL[{1, 1, 0}, u], u]
>
> i.e. that function minus its derivative with respect to 'u'. I have
> loaded package which allows me to differentiate HPL. This works fine.
> But when I try to generalize this to handle all lists like {1,1,0} at
> the same time so that I don't have to type the rule for all
> combinations, the replacement doesn't work well. When I type:
>
> in = HPL[{1, 1, 0}, u]
> in /. HPL[{1, 1, 0}, u] -> HPL[{1, 1, 0}, u] - D[HPL[{1, 1, 0}, u], u]
> in /. HPL[a_, u] -> HPL[a, u] - D[HPL[a, u], u]
>
> the third line produces different result than the second line (the
> difference is in the term involving derivative). Does anyone know what
> could be wrong? Thanks in advance

It's an evaluation order problem; the derivative is taken before the
substitution in the second case.

in /. HPL[a_, u] :> HPL[a, u] - D[HPL[a, u], u]

works.

Regards,

Ssezi

```

• Prev by Date: Re: Normally Distributed Random Matrix
• Next by Date: Re: Replacement according to the pattern
• Previous by thread: Replacement according to the pattern
• Next by thread: Re: Replacement according to the pattern