MathGroup Archive 1997

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Confused about replacement rules


In article <5l8tjg$cs7$1 at dragonfly.wolfram.com>, bleile at fli.sh.bosch.de
(Thomas Bleile) wrote:
>   In[24]:= rules = {x_ ^ 2->a,expr_:>Expand[expr]}
>                 2
>   Out[24]= {(x_)  -> a, expr_ :> Expand[expr]}
> 
> Now I apply these rules on a simple expression:
> 
>   In[25]:= x (x+b)/.rules
>
>                   2
>   Out[25]= b x + x
> 
>Why isn't x^2 substituted by a ? 


The reason

	x (x+b)/.{x_ ^ 2->a,expr_:>Expand[expr]}

returns b x + x^2 instead of expected b x + a is well explain in the
Appendix A.10 of ReplaceAll entry in the Mma book. It says:

"The first rule that applies to a particular part is used; no further rules
are tried on that part, or any of its subparts".

What you might want to do is Expand at expr /. {x_?AtomQ^2->a}

 Xah
 xah at best.com, http://www.best.com/~xah/
 Symantec Visual Cafe. Windows95/NT. CD-ROM. Shrinkwrapped. $50. email me.


  • Prev by Date: Re: InterpolatingFunction[] question
  • Next by Date: Re: InterpolatingFunction[] question
  • Previous by thread: Slope Fields....
  • Next by thread: Re: Confused about replacement rules