Define a function, $\displaystyle f:\mathbb{Z}^+\to \mathbb{Z}^+$

as,

$\displaystyle f(n)=\left\{ \begin{array}{c}n/2 \mbox{ if even}\\ 3n+1 \mbox{ if odd}$

Prove that there for any $\displaystyle n$ there exists an $\displaystyle m\in \mathbb{Z}^+$ such as,

$\displaystyle \underbrace{(f\circ f\circ f\circ .... \circ f)}_m (n)=1$

Tried to prove it, seems extremely complicated.