Find all functions $f:\mathbb{R}\rightarrow\mathbb{R}$ such that $$f(x)f(x+y)=xf(x)+f\big(f(x)\big)f(y)$$ for all $x,y\in\mathbb R$.

Source: Problem by me.

  • $\begingroup$ This is more strictly a math olympiad question rather than a puzzle. There is no appropriate site for such creations as of yet, so it is better suited somewhere else. $\endgroup$ Jun 6, 2020 at 23:14
  • 1
    $\begingroup$ @Nij, these are not math textbook style. $\endgroup$ Jun 7, 2020 at 3:09
  • 3
    $\begingroup$ @Nij, this is a Math Olympiad style problem, way far than math textbook kind of problem. $\endgroup$ Jun 7, 2020 at 3:12
  • 3
    $\begingroup$ @Nij This question is very clearly on topic. Textbook problems are mostly those where you can just follow an algorithm to solve it. This is a maths puzzle that requires you to think outside the box. I'd argue that most Math Olympiad questions are more puzzles than problems. puzzling.meta.stackexchange.com/questions/2783/… $\endgroup$
    – Hjulle
    Jun 7, 2020 at 9:39
  • 1
    $\begingroup$ @Nij: Not trying to defend the quality of my solution, but I can say for sure that what I wrote in my answer only included half the things I tried. I agree that no particular step requires anything beyond basic algebra, but finding the correct sequence of steps was non-trivial, at least for me. Maybe I should have written it better, but I absolutely did have a bit of "aha" once I struck on the correct path. $\endgroup$ Jun 7, 2020 at 22:00

1 Answer 1


The set of functions which satisfy the functional equation is:

the all zero function and the identity function. Let $g$ be a function satisfying the relationship, and first let $x=y=0$. Then we have $$g(0)^2 = 0 + g(g(0)) \times g(0)$$ This implies either $g(0) = 0$ or $g(g(0)) = g(0)$.

In either case:

$\lambda = g(0)$ is a fixed point of $g$, or in other words $g(\lambda) = \lambda$. Let $x=\lambda$ and $y=0$, in which case we have $$g(\lambda)g(\lambda) = \lambda g(\lambda) + g(g(\lambda))g(0)$$ This gives the equality $$\lambda^2 = 2\lambda^2$$ which forces $\lambda = 0$.

With this knowledge:

let $x$ be any real and let $y=0$. This forces $$g(x)^2 = xg(x)$$ for all real $x$, which implies either $g(x) = 0$ or $g(x) = x$ for all real $x$. This implies either $g$ is the zero function, which one can easily check satisfies the condition above, or there exists $\mu \neq 0$ such that $g(\mu) = \mu$.


Let $y$ be any real such that $g(y) = 0$. Then we have $$g(\mu)g(\mu+y) = \mu g(\mu) + g(g(\mu))g(y)$$ which implies $\mu g(\mu+y) = \mu^2$ and thus $g(\mu+y) = \mu$ since $\mu \neq 0$. Since $\mu \neq 0$ this forces $\mu + y = \mu$, which forces $y=0$. Thus $g(x) = x$ for all real $x$ and $g$ is the identity function. Again it is easy to check this satisfies the condition above.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.