Frage

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?

War es hilfreich?

Lösung

applyrule(f(x::anything)= g(x+3), f(a)*f(b));

Andere Tipps

ee := f(a)*f(b):

applyrule(f(x::anything)=g(x+3), ee);

                           g(a + 3) g(b + 3)

subsindets(ee,specfunc(anything,f),t->g(op(t)+3));

                           g(a + 3) g(b + 3)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top