Let $\mathbf{R}^{+}$be the set of all positive real numbers. Find all functions $f$ : $\mathbf{R}^{+} \rightarrow \mathbf{R}^{+}$such that

$$
f(x) f(y f(x))=f(x+y)
$$

for all $x, y \in \mathbf{R}^{+}$.
If $f(x)>1$ for some $x$, then for $y=\frac{x}{f(x)-1}$ we get

$f(x) f\left(\frac{f(x) x}{f(x)-1}\right)=f(x) f(y f(x))=f(x+y)=f\left(x+\frac{x}{f(x)-1}\right)=f\left(\frac{f(x) x}{f(x)-1}\right)$,
which leads to $f(x)=1$, a contradiction. Hence $f(x) \leq 1$ for all $x$. From this we get $f(x+y)=f(x) f(y f(x)) \leq f(x)$ for all $x, y$, so $f$ is non-increasing.

Suppose there exists an $x_{0}$ with $f\left(x_{0}\right)=1$. Then $f\left(x_{0}+y\right)=f(y)$ for all $y$, and then $f\left(k x_{0}+y\right)=f(y)$ by induction on $k$. Also, by monotonicity $f(x)=1$ for all $x \leq x_{0}$, and since any $y$ can be written as $k x_{0}+y_{0}$ with $y_{0} \leq x_{0}$, we conclude $f(y)=f\left(y_{0}\right)=1$ for all $y$.

If there is no $x$ with $f(x)=1$. Then $f$ is monotone decreasing. Now

$$
\begin{aligned}
f(x) f(y f(x)) & =f(x+y)=f(y f(x)+x+(1-f(x)) y) \\
& =f(y(f(x))) f((x+(1-f(x)) y) f(y(f(x))),
\end{aligned}
$$

so $f(x)=f((x+(1-f(x)) y) f(y(f(x))$. As $f$ is monotone decreasing, this implies $x=x+(1-f(x)) y) f(y(f x)$. Setting $x=1, z=x f(1)$ and $a=f(1)$ we get $f(z)=\frac{1}{1+a z}$. Combining this with the case $f(z)=1$, we conclude that $f(x)=\frac{1}{1+a x}$ for each $x$ with $a \geq 0$. Conversely, a direct verification shows that the functions of this form satisfy the initial equality.