Find all functions $f: \Bbb{R} \to \Bbb{R} $ such that for every $x, y \in \mathbb R, f(x\cdot f(y)) = x\cdot y$. 
Find all functions  $f: \Bbb{R} \to \Bbb{R} $ such that for every $x,
 y \in \mathbb R, f(x\cdot f(y)) = x\cdot y$.

Now, I imagine $f(x)$ is some sort of a linear function, since $f(y)$ is basically just a constant. But I lack ideas on how to approach this problem. I might be able to find some functions that meet the criteria (for example $f(x) = x$), but how can I be sure I've found them all?
 A: If we put $x=0$ we get $f(0)=0 \;\;\;(*)$. 
If we put $x=1$ we got $f(f(y))=y$ so $f$ is bijective. Since $f$ is injective and we have $$f(xf(y))=xy=f(yf(x))$$ 
we have also $xf(y)=yf(x)$ so ${f(x)\over x} = {f(y)\over y} $ for all $xy\ne 0$.
Since left side is independent of $y$ we conclude that ${f(x)\over x}=a$ for some real $a$. So $f(x)=ax$ for all $x\ne 0$. Since we have also $(*)$ we have $f(x)=ax$ for all $x$. 
Now if we put this into starting formula we get $a=\pm 1$, so we have two solutions.
A: For each $a\in \Bbb R$, let $f_a$ be some solution with $f_a(1) = a$. Since the functional equation is valid for all $x, y$, it's specifically valid when $y = 1$. Assuming $a \neq 0$, we set $x = \frac ta$, and get
$$
f_a\left(\frac ta\cdot a\right) = \frac ta\implies f_a(t) = \frac ta
$$
Additionally, we assumed that $f_a(1) = a$, which means $\frac 1a = a$, and we get $a = \pm 1$. We see that both the solutions $f_{-1}$ and $f_1$ actually work.
On the other hand, if $a = 0$, which is to say $f_0(1) = 0$, we get for all $x$ that
$$
f_0(x\cdot 0) = x
$$
which implies that $f_0(0)$ takes on all real values simultaneously, which is not possible.
So we're left with only the two solutions $f_{-1}$ and $f_1$.
