$f:\mathbb R \to \mathbb R$ be a continuous such that $f(f(f(x)))=x,\forall x \in \mathbb R$ , is $f(x)=x , \forall x \in \mathbb R$? [duplicate]

Let $f:\mathbb R \to \mathbb R$ be a continuous function such that $f(f(f(x)))=x,\forall x \in \mathbb R$ , then is it true that $f(x)=x , \forall x \in \mathbb R$ ? I can see that $f$ is bijective , hence strictly monotone . But I cannot progress further . Please help. Thanks in advance


Solution 1:

First of all notice that $f : \mathbb{R} \rightarrow \mathbb{R}$. For all $x \in \mathbb{R}$ the image by $f$ of $f(f(x))$ is $x$ so $f$ is surjective. Moreover $f$ is injective because: if $f(x)=f(y)$, then $x=f(f(f(x)))=f(f(f(y)))=y$. So $f$ is a bijection. Observe that that $f$ is strictly increasing, suppose $f$ is decreasing $f\circ f$ is increasing and $f\circ f\circ f=\text{id}$ is decreasing, which is impossible.

We can suppose $f(x)>x$, we have that $f(f(x))>f(x)>x$, so $x=f(f(f(x))>f(f(x))>f(x)>x$ because $f$ is strictly increasing, but this is clearly impossible. On the other way $f(x)<x$ is also impossible, so the unique possibility is that $f(x)=x$ for all $x$. So $f=id$.

Solution 2:

As Arthur notes, $f$ cannot be decreasing because then $f\circ f\circ f$ would also be. Therefore $f$ must be increasing.

Now fix an $x\in \mathbb R$ and consider what $f(x)$ can be.

If $f(x)>x$, then since $f$ is increasing we have $f(f(x))\ge f(x)$ and $f(f(f(x)))\ge f(f(x))$, which gives us $$ f(f(f(x)) \ge f(f(x)) \ge f(x) > x $$ contradicting the assumption that $f(f(f(x)))=x$.

Similarly $f(x)<x$ leads to $f(f(f(x)))<x$, so the only possibility is that $f(x)=x$.