The following code unexpectedly simplifies f(1)=xf(0) to f(1)=0, is it because undefined functions are not to be used without further assumptions?
Running this should not change the expression but it gives Eq(f(1), 0)
.
from sympy import *
x, y = symbols("x y")
f = Function("f")
print(Eq(f(1), x * f(0)).simplify(rational=True, doit=False))