2

maple では、たとえば次のように、自己定義のルールを使用して式を単純化できます。

> simplify(x*y,{x=y+1})
y^2+y

対照的に、私が必要としているのは、関数形式のルールを渡す機能です。つまり、次のようなものです。

> wantedcommand(f(a)*f(b), f(x)=g(x+3))
g(a+3)*g(b+3)

誰かがこれを達成する方法を知っていますか?

4

2 に答える 2

1
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)
于 2013-11-08T21:00:51.133 に答える