If $ f(x \cdot f(y) + f(x)) = y \cdot f(x) + x $, then $f(x)=x$ Let $ f : \mathbb{Q} \rightarrow \mathbb{Q} $ be a function which has the following property:
$$ f(x \cdot f(y) + f(x)) = y \cdot f(x) + x \;,\; \forall \; x, y \in \mathbb{Q} $$
Prove that $ f(x) = x, \; \forall \; x, y \in \mathbb{Q} $.
So far, I've found that $f(f(x)) = x$, $f(0) = 0$ and $f(-1) = -1$. 
(For $f(0)=0$, we substitute $x=0$ to arrive at $f(f(0))-yf(0)$ identically $0$ for all rational $y$; for $f(f(x))=x$, we substitute $y=0$ and use $f(0)=0$. For $f(-1) = -1$, substitute $x=y=-1$ to get $f(0)=-f(-1)-1$, and use $f(0)=0$.)
 A: The equation we have is $f(xf(y)+f(x))=yf(x)+x$.
Set $x=0$ to get $f(f(0))=yf(0)\; \forall y\implies f(0)=0$.
Then set $y=0$ for arbitrary $x$ to get $f(f(x))=x\;\forall x$.
Now let $x=y=1$, to get $f(2f(1))=f(1)+1$. So pick $x=1,y=f(1)$ to get $f(1+f(1))=f(1)^2+1$, from which $f(1)^2+1=f(f(2f(1)))=2f(1)$, so $f(1)=1$.
Now set $x=1,y=f(z)$to get $f(z+1)=f(z)+1$, which can be used inductively to show that $f(n)=n$ for all integer $n$.
Finally, let $y=p/q,x=q$, for $p$ and $q$ nonzero integers. Then $f(qf(p/q)+q)=p+q$, applying $f$ gives $qf(p/q)+q=p+q$, from which $f(p/q)=p/q$, so we are done.
A: If you have $f(f(x))=x$ it means that the function is onto 
Furthermore, assume that $f(y_1) = f(y_2)$ for some $y_1 \neq y_2$
$$ f(-f(y_1)-1 ) =f(-f(y_1)-1 )   $$
$$\Rightarrow  -y_1 -1 = -y_2 -1 $$
$$\Rightarrow  y_1 = y_2 !! $$
Thus the function is $1$ $to$ $1$, its inverse $f^{-1}$ exists,
in addition to $f(f(x))=x$, we have $f^{-1}=f$
From above, you get $f(f(1)+1) = f(1)+1 $ 
$f^{-1} = f \Rightarrow f(yf(x)+x) = f^{-1}(yf(x)+x) = xf(y) +f(x)  $
For some $x_0=f(1)$, $f(x_0)=f(f(1))=1$ and putting $y=1$
$x_0 f(1) + f(x_0) = f(1 f(x_0) + x_0 )$ 
$\Rightarrow f(1)^2 +1 = f(f(1)+1) = 2f(1) \Rightarrow f(1)=1$ 
$\Rightarrow f(y+1)=f(y)+1$ by putting $x=1$ into $f(yf(x)+x)  = xf(y) +f(x)  $
From the original definition, putting $y=1$ gives $f(x+f(x)) = f(x) +x$
Since $f(x)$ is onto, $f(x)+x$ is also onto(to be proved), therefore we can find $x$ such that $y=x+f(x)$ for all $y$ 
then $f(y) =y$
I cannot prove that it is onto... However, I found another way by looking at the answer of  Willard Zhan. He has proven $f(1/q) = 1/q$ for integers $q$
For all $\frac{p}{q}$, it can be always written as $\frac{m+1}{q}$, where $m$ is also an integer.
putting $y=m$ and $x=\frac{1}{q}$ into $f(yf(x)+x)=xf(y)+f(x)$
$$f\left( \frac{m+1}{q}\right)=f\left( \frac{m}{q} +\frac{1}{q}\right) = \frac{f(m)+1}{q} = \frac{m+1}{q}$$ 
since we have proved $f(m)=m$ for integers. I think it completes the proof.
A: Since $f(f(x))=x$, $f$ is bijective and there is a $y_0$ such that $f(y_0)=1$. Now we have
$$f(x+f(x))=y_0f(x)+x$$
$$f(xf(1)+f(x))=f(x)+x$$
which leads to $y_0f(x)+x=xf(1)+f(x)$ for all $x\in\mathbb{Q}$, or
$$(f(1)-1)x=(y_0-1)f(x).$$
Suppose that $y_0\neq 1$, then it turns out that $f(x)$ is a linear function. It is easily verified that in this case the only possibility is $f(x)=x$ which contradicts to $y_0\neq 1$.
Therefore we conclude $y_0=1=f(1)$, and as mastrok noticed we have $f(y+1)=f(y)+1, \forall y$, and equivalently $f(y-1)=f(y)-1,\forall y$.
The next step is for every $x\neq 0$, suppose $f(y)=1/x$ and we get
$$yf(x)+x=f(1+f(x))=f(f(x))+1=x+1,$$
and hence $y=1/f(x)$. That is,
$f(1/x)=1/f(x),\forall x\neq 0.$
Now consider the set $S=\{x\mid f(x)=x\}$. We already know $0\in S$, and $S$ is closed under operations 'plus one', 'minus one' and 'reciprocal'. Now I think it's easy for yourself to check $S=\mathbb{Q}$ by induction with an Euclidean fashion. There's an example here:
$$13/5\rightarrow 3/5 \rightarrow 5/3\rightarrow 2/3\rightarrow 3/2\rightarrow \ldots$$
Update: Since there are ones not familiar with Euclidean algorithm, I try to make it clearer. Use induction on $q$ for fraction $p/q\in\mathbb{Q}$, where $(p,q)=1$ and $q>0$. The Euclidean division turn out that
$$p=aq+b,a\in\mathbb{Z}, 0\leq b<q.$$
And $b/q\in S$ since $q/b\in S$ by inductve hypothesis. Now $p/q=b/q+a\in S$ and the induction is done since the initial case $q=1$ is trivial.
A: \begin{align}
P(0, y): \; & f(f(0))=yf(0)=0. \\
\Rightarrow \; & f(0)=0. \\
\ \\
P(x, 0): \; & f(f(x))=x. \\
\ \\
f(P(x, y)): \; & f(x)+xf(y)=f(x+yf(x)). \\
f(y) \to y: \; & f(x)+xy=f(x+f(x)f(y)). \tag 1 \label 1 \\
\ \\
P(-1, -1): \; & f(f(-1)-f(-1))=-1-f(-1). \\
\Rightarrow \; & f(-1)=-1. \\
\ \\
x \to -1 \text{ from } \color {#4995CF} {(\ref 1)}: \; & -1-y=f(-1-y). \\
y \to -x-1: \; & f(x)=x.
\end{align}
