In maple one can simplify expression using self-defined rules, like for example
> simplify(x*y,{x=y+1})
y^2+y
In contrast, what I need is the ability to pass rules which are in functional form, i.e. something like
> wantedcommand(f(a)*f(b), f(x)=g(x+3))
g(a+3)*g(b+3)
Does somebody know how to achieve this?
applyrule(f(x::anything)= g(x+3), f(a)*f(b));