Finding all functions $f:\mathbb R\to\mathbb R$ that satisfy $f\left(f(x)-y^2\right)=f\left(x^2\right)+y^2f(y)-2f(xy)$, $\forall x\in\mathbb R$ 
Find all functions $ f : \mathbb R \to \mathbb R $ that satisfy
$$ f \left( f ( x ) - y ^ 2 \right) = f \left( x ^ 2 \right) + y ^ 2 f ( y ) - 2 f ( x y ) \text , \ \forall x \in \mathbb R \text . $$

Till now, I have proven that it's an even function, and because it's an even function, $ \exists b \in \mathbb R : f ( b ) = 0 $. And by combining with the other equation that I found, that is $ f \left( y ^ 2 \right) = y ^ 2 f ( y ) $, there would be two cases:

*

*$ b = 0 $, or $ f ( 0 ) = 0 $ (solved already).

*$ f \left( b ^ 2 \right) = 0 $.

Now how can I solve case 2?
I can clearly see in case 1 that $ f ( x ) = \pm x ^ 2 $.
 A: It's easy to verify that the constant zero function $ f ( x ) = 0 $ and the squaring function $ f ( x ) = x ^ 2 $ both satisfy
$$ f \left( f ( x ) - y ^ 2 \right) = f \left( x ^ 2 \right) + y ^ 2 f ( y ) - 2 f ( x y ) \tag 0 \label 0 $$
for all $ x , y \in \mathbb R $. You can prove that any function $ f : \mathbb R \to \mathbb R $ satisfying \eqref{0} is of one of those forms. To see this, let $ a = f ( 0 ) $. Putting $ x = 0 $ in \eqref{0} we have
$$ y ^ 2 f ( y ) = f \left( a - y ^ 2 \right) + f ( a ) \tag 1 \label 1 $$
for all $ y \in \mathbb R $. Substituting $ - y $ for $ y $ in \eqref{1} and comparing with \eqref{1} itself, we get
$$ f ( - y ) = f ( y ) \tag 2 \label 2 $$
for all $ y \in \mathbb R $. Consider $ b \in \mathbb R $ such that $ f ( b ) = 0 $ (such $ b $ exists, as can be seen by setting $ x = y = 1 $ in \eqref{0}). Letting $ x = y = b $ in \eqref{0} we get $ f \left( - b ^ 2 \right) = - f \left( b ^ 2 \right) $, which together with \eqref{2} gives $ f \left( b ^ 2 \right) = 0 $. Then, setting $ x = b $ in \eqref{0} we have
$$ f \left( - y ^ 2 \right) = y ^ 2 f ( y ) - 2 f ( b y ) \tag 3 \label 3 $$
for all $ y \in \mathbb R $. In particular, putting $ y = 0 $ in \eqref{3} shows that $ a = 0 $. Knowing this, and comparing \eqref{1} and \eqref{3}, we get $ f ( b y ) = 0 $ for all $ y \in \mathbb R $. In case there exists $ b \in \mathbb R \setminus \{ 0 \} $ with $ f ( b ) = 0 $, we conclude that $ f $ is the constant zero function, one of the mentioned solutions. Otherwise, if for some $ x \in \mathbb R $ we have $ f ( x ) = 0 $, then we must have $ x = 0 $. Letting $ y = x $ in \eqref{0} and using \eqref{1} and \eqref{2}, we have $ f \left( f ( x ) - x ^ 2 \right) = 0 $, and therefore $ f ( x ) = x ^ 2 $, for all $ x \in \mathbb R $, which gives the other mentioned solution.
