The first replacement just replaces a
with a
, but since that expression has already been changed, it is ignored after that. So the Rule
a -> 1
is only applied to other parts of the expression (in this case the b
), and those other parts don't depend on a
, so nothing changes. Finally, b
gets replaced with c
. (By the way, in somewhat-advanced Mathematica programming, this fact can be taken advantage of in many clever ways. Here is an exampleHere is an example by Mr. WizardMr. Wizard, provided in the comments.)
Finally, as noted by Daniel LichtblauDaniel Lichtblau in a comment, if you do want to apply the two rules to get different expressions, do this: