Find every function $ f : \mathbb Q ^ + \to \mathbb Q ^ + $ such that $$ f ( x + 1 ) = f ( x ) + 1 , \forall x \in \mathbb Q ^ + $$ and $$ f \left( x ^ 2 \right) = f ^ 2 ( x ) , \forall x \in \mathbb Q ^ + \text . $$ Here, $ f ^ 2 ( x ) = f ( x ) ^ 2 = f ( x ) f ( x ) $.
All I have managed doing is showing that $ f ( x ) = x ^ c $ with this procedure:
In the equation $f(x^2)=f^2(x)$, we set $ x = e ^ y $. Therefore, $$ f \left( e ^ { 2 y } \right) = f ^ 2 ( e ^ y ) \implies \ln \Big( f \left( e ^ { 2 y } \right) \Big) = 2 \ln \big( f ( e ^ y ) \big) \text . \tag 1 \label 1 $$ Now let $ g ( y ) = \ln \big( f ( e ^ y ) \big) $. So from \eqref{1} we have $ g ( 2 y ) = 2 g ( y ) $. This is a special situation of the functional equation of Cauchy which gives us $$ g ( y ) = c y \implies \ln \big( f ( e ^ y ) \big) = c y \implies f ( e ^ y ) = e ^ { c y } = ( e ^ y ) ^ c \implies f ( x ) = x ^ c \text . $$
Any idea on how to continue?