Is it possible to simplify assuming a functional equation, for examlpe to use that one function, g, is the invers of another, f.
Simplify[g[f[x]], g[f[x_]] == x]
just returns g[f[x]], and similar for FullSimplify.
Is it possible to simplify assuming a functional equation, for examlpe to use that one function, g, is the invers of another, f.
Simplify[g[f[x]], g[f[x_]] == x]
just returns g[f[x]], and similar for FullSimplify.
As it was pointed out in the comments, Assumptions does not work with Patterns, but ReplaceAll works:
g[f[x]] /. g[f[_]] -> x
x
On the other hand you can use InverseFunction because it can handle symbolic operations:
g = InverseFunction[f];
f[g[x]]
x
UpValuesforglikeg/:g[f[x_]]:=xand then simplifying? – gpap Feb 25 '14 at 15:45Simplify[g[f[x]], g[f[x_]] == x]doesn't work is because Assumptions does not in general support patterns, and also there is an ordering issue of variable names. If you doSimplify[g[f[x]], g[f[x]] == x[]], the replacement works. – Yi Wang Feb 25 '14 at 16:50