I would like to find a method compute the (local) inverse (near $(0,0,0)$) of the map $$ \phi : \mathbb{R}^3\ni (x_1,x_2,x_3) \mapsto (x_1,(1+x_2)x_3,(1+x_1)(1+x_2)x_2+x_1x_3) \in \mathbb{R}^3. $$ And the method should be quite general for all polynomial maps.
I am reading some introduction to Gröbner basis which could resolve this problem.
This method is global and since I want only local inverse, I wonder if there is other methods for such local problems.
With Mathematica, the routine Solve gives very bad results and I don't know any algebra methods to solve such polynomial systems, so I am looking towards maths.
Let's set
\begin{align} A&=x_1\\ B&=(1+x_2)x_3\\ C&=(1+x_1)(1+x_2)x_2+x_1x_3 \end{align}
Now we are to find $x_1,x_2,x_3$ in terms of $A,B,C$. We already have $x_1=A$, so we may write $C=(1+A)(1+x_2)x_2+Ax_3$, and together with $x_2=\tfrac{1}{x_3}B-1$, we have
$$C=(1+A)(1+\tfrac{1}{x_3}B-1)(\tfrac{1}{x_3}B-1)+Ax_3$$
which we can rewrite to
$$0=Ax_3^3-C\cdot x_3^2-(1+A)Bx_3+(1+A)B^2$$
This is merely third-degree and thus solvable; I will spare you the expression, but you can take a look at the monster at WolframAlpha. Now we found $x_1$ and $x_3$, and so we are left with $x_2=\tfrac1{x_3}B-1$, so we know $x_2$ as well.
Not a very pretty solution, but a solution nevertheless.