Question about proof of Implicit Function Theorem in *Analysis on Manifolds* by Munkres I am reading Analysis on Manifolds by Munkres, and have a question about the proof about the Implicit Function Theorem (both the statement and proof included below):
 


*

*Note (3rd paragraph of the proof) how Munkres chooses $U \times V$ as a neighborhood of $(a,b) \in \mathbb{R}^{k+n}$.  I know this can be done by restricting the open set guaranteed to exist by the Inverse Function Theorem, but I don't see why we want it to be a Cartesian product.

*Regarding uniqueness (last paragraph of the proof), why is the argument provided necessary?  It seems unnecessarily complicated.  Here is how I reasoned it: say $(x,g(x)) \in U \times V$ s.t. $f(x,g(x))= \textbf{0}_n$.  Then $F(x,g(x))=(x,\textbf{0}_n)$, so 
$$(x,g(x))=G(x,\textbf{0}_n)=(x,h(x,\textbf{0}_n)).$$
(Here $G=F^{-1}$ and $h$ is the last $n$ coordinate functions of $G$, following Munkres' notation).  By inspection, $g(x)=h(x,\textbf{0}_n)$, hence uniqueness is shown because we just derived what $g(x)$ has to be.


Many thanks in advance.
 A: Your uniqueness argument can't be correct, because you never use continuity, and the uniqueness of the theorem fails when you drop continuity.
Consider $f(x,y) = x^2+y^2 - 5$ on $\mathbb{R}^2$. Then the IFT applies at $(1,2)$ and we can solve $y$ for $x$ in more than one way, by dropping the continuity.
The mistake happens in the line $F(x,g(x)) = (x,0) \implies (x,g(x)) = G(x,0)$
You can apply $G = F^{-1}$ only on elements of $W$, and nothing tells you that $g(U)$ is contained in $V$!
A: For the first question, you are essentially viewing $\mathbb{R}^{k+n}$ as being isomorphic to the Cartesian product $\mathbb{R}^k \times \mathbb{R}^n$. The open sets of $\mathbb{R}^k \times \mathbb{R}^n$ are precisely the unions of Cartesian products of open sets from $\mathbb{R}^k$ and $\mathbb{R}^n$. So, you can express the open subset of $\mathbb{R}^{k+n}$ arising from the inverse function theorem as $U \times V$, where $U \subset \mathbb{R}^k$ and $V \subset \mathbb{R}^n$ are open.

For the second question, your reasoning only works when you know that $g(x) \in V$. A priori it is not known that $g(B) \subset V$, as @Math_QED points out.
To be very precise, here is the conclusion of the implicit function theorem, with the existence and uniqueness claims separated out and elaborated:

There exists a neighbourhood $B$ of $a$ in $\mathbb{R}^k$ and a continuous function $g : B \to \mathbb{R}^n$ such that $g(a) = b$, $(x,g(x)) \in A$ for all $x \in B$ and $f(x,g(x)) = 0$ for all $x \in B$.
Moreover, if $g_0 : B \to \mathbb{R}^n$ is any continuous function such that $g_0(a) = b$, $(x,g_0(x)) \in A$ for all $x \in B$ and $f(x,g_0(x)) = 0$ for all $x \in B$, then $g = g_0$.

So, it could very well be that $g_0(B) \not\subset V$. It will turn out that this is not the case, but this needs a proper argument and cannot be assumed beforehand.

Let me elaborate in greater detail on where and why OP's naive method of proving uniqueness fails.
Suppose $g_0 : B \to \mathbb{R}^n$ is another continuous function such that $g_0(a) = b$ and $f(x,g_0(x)) = 0$ for all $x \in B$. Since $g_0$ is continuous and $b \in V$, there is a neighbourhood $B_0$ of $a$ in $B$ such that $g_0(x) \in V$ for all $x \in B_0$. Now, we apply OP's idea to say that for all $x \in B_0$, we have
\begin{align}
(x,g_0(x)) \in U \times V &\implies F(x,g_0(x)) = (x,f(x,g_0(x)) = (x,0) \in W \\
&\implies (x,g_0(x)) = G(x,0) = (x,h(x,0)) = (x,g(x)).
\end{align}
Hence, $g(x) = g_0(x)$ for all $x \in B_0$. Now, if we replace the neighbourhood $B$ with $B_0$ (since we anyway need the existence only locally), we are done.
But are we, really? What if I can find a sequence of functions $g_n$ for each $n \in \mathbb{N}$ such that $g_n$ agrees with $g$ around $a$ on sets of smaller and smaller measure, such that the intersection of all these domains is the singleton $\{ a \}$? Then, there won't be any neighbourhood of $a$ on which a unique $g$ exists! Such a scenario seems very unlikely, but how to rule it out?
Well, going back to our attempt, we observe that the proof goes through not just for $a$ but for any $a_0 \in B$ such that $g(a_0) = g_0(a_0)$. So, whenever $g(a_0) = g_0(a_0)$, $g(x) = g_0(x)$ for all $x$ in some neighbourhood $B_0$ of $a_0$. So, we have actually proved that $g$ agrees with $g_0$ on an open set.
How does this help? Well, we already know that the set of points $x \in B$ at which $g(x) \neq g_0(x)$ is open, simply by continuity. What we have shown is that the complement of this set is also open. But this implies that the connected set $B$ is a disjoint union of two open sets, so one of them must be empty. And at this point we are done.
And now note that this is literally Munkres’ proof, reproduced with some  commentary.

Here is an example that shows why the continuity of $g$ plays a crucial role in determining its uniqueness. Consider $f : \mathbb{R}^2 \to \mathbb{R}$ given by $f(x,y) = x^2 + y^2 - 5$, as in @Math_QED’s answer. We can solve for $y$ in terms of $x$ locally around $x=1$, but in two different ways. This is because $f$ vanishes at both $(1,2)$ as well as $(1,-2)$. So, there is an open interval $B \subset \mathbb{R}$ containing $1$ and continuous functions $g_i : B \to \mathbb{R}$ with $g_1(1) = 2$ and $g_2(1) = -2$, such that
$$
f(x,g_i(x)) = 0 \quad \text{for all } x \in B, \quad i=1,2.
$$
So far, there is no contradiction to the statement that $g$ is unique, for the following reason. There can be several tuples $(a,b)$ for a fixed $a$ such that $f(a,b) = 0$. The implicit function theorem says that for each such tuple, there is a unique continuous $g : B \to \mathbb{R}^n$ such that $g(a) = b$ and $f(x,g(x)) = 0$ for all $x \in B$. And, this is verified in the above example. Once the tuple $(1,2)$ or $(1,-2)$ is fixed, the function $g_i$ is also uniquely determined.
However, if we drop the demand that $g$ be continuous, then it is easy to see how there can be many different functions that satisfy the given conditions. For instance, define $g_0 : B \to \mathbb{R}$ by
$$
g_0(x) = \begin{cases}
g_1(x), & x \in B \cap \mathbb{Q};\\
g_2(x), & \text{otherwise}.
\end{cases}
$$
Then, $g_0(1) = 2$ and $f(x,g_0(x)) = 0$ for all $x \in B$. However, $g_0 \neq g_1$.
This shows that the continuity of $g$ plays a crucial role in proving the uniqueness of $g$.
