Rank theorem on manifolds Rank theorem on manifolds says that :

Suppose $M$ and $N$ are two smooth manifolds of dimensions $m$ and $n$, respectively, and $F:M\rightarrow N$ be a smooth map with constant rank $r$. For each $p\in M$ there exists a smooth chart $(U,\varphi)$ around $p$ and a smooth chart $(V,\psi)$ around $F(p)$ such that $F(U)\subseteq V$ and 
  $$\psi\circ F\circ \varphi^{-1}:\varphi
(U)\subseteq \mathbb{R}^m\rightarrow\psi(V)\subseteq \mathbb{R}^n$$ is given by $(a_1,\cdots,a_m)=(a_1,\cdots,a_r,0,\cdots,0)$.

There are many books where proof of this has been discussed but none of the books I have seen has proof that I feel excited. So, I am trying to produce another proof which I think is most natural. 
Let $p\in M$. As $F$ is a map of constant rank, $dF_p:T_pM\rightarrow T_{F(p)}(N)$ is of rank $r$. A Linear algebra results says that, in this case, there exists basis for $T_pM$ and a basis for $T_{F(p)}(N)$ such that $dF_p:T_pM\rightarrow T_{F(p)}N$ is represented by matrix $\begin{bmatrix}I_r&0\\0&0\end{bmatrix}$ i.e., it is given by 
$$(v_1,\cdots,v_r,v_{r+1},\cdots,v_m)\rightarrow (v_1,\cdots,v_r,0,\cdots,0).$$
I am almost sure that the basis of $T_pM$ and the basis of $T_{F(p)}N$ that we choose above corresponds to charts around $p$ and $F(p)$ respectively. I will try to elaborate what I said. How do we think of a basis of tangent space at a point? 
Given $p\in M$, we take any chart $(U,\varphi)$ around that point given by $\varphi=(x_1,\cdots,x_n)$ and then see that $$\left\{\frac{\partial}{\partial x_i}\bigg|_p:1\leq i\leq n\right\}$$ is a basis for $T_pM$. Now I am hoping to trace back. Given a basis of $T_pM$ can we trace back to obtain a chart $(U\varphi)$ at $p$. Suppose we could find that charts $(U,\varphi)$ at $p$ and $(V,\psi)$ at $F(p)$ such that the corresponding basis at tangent spaces is the choice of basis that we have made above.
Let $(U,\varphi=(x_1,\cdots,x_m))$ be chart based at $p$. Then $\{\partial/\partial x_i|_p:1\leq i\leq m\}$ is the basis of $T_pM$ that we have mentioned above and similarly $(V,\psi=(y_1,\cdots,y_n))$ be chart based at $F(p)$ and $\{\partial/\partial y_j|_{F(p)}:1\leq i\leq n\}$ is the basis of $T_{F(p)}N$ that we have mentioned above. So, we have 
$$dF_p(a_1,\cdots,a_m)=(a_1,\cdots,a_r,0,\cdots,0).$$
So, $$dF_p\left(\sum_{i=1}^ma_i\frac{\partial}{\partial x_i}\bigg|_p\right)
=\sum_{i=1}^ra_i\frac{\partial}{\partial y_i}\bigg|_{F(p)}$$
$$\sum_{i=1}^ma_idF_p\left(\frac{\partial}{\partial x_i}\bigg|_p\right)
=\sum_{i=1}^ra_i\frac{\partial}{\partial y_i}\bigg|_{F(p)}$$
$$\sum_{i=1}^ma_i\left(\sum_{k=1}^n\frac{\partial F^k}{\partial x_i}\frac{\partial}{\partial y^k} \bigg|_{F(p)}\right)
=\sum_{i=1}^ra_i\frac{\partial}{\partial y_i}\bigg|_{F(p)}$$
Here I have assumed $F$ to be a map (locally) from $\mathbb{R}^m\rightarrow \mathbb{R}^n$ and $F^k$ are the corresponding functions of $F$.
I still do not see how to use this and conclude that 
$\psi\circ F\circ \varphi^{-1}(a_1,\cdots,a_m)=(a_1,\cdots,a_r,0,\cdots,0).$
Am I going in correct way? Can you suggest something to complete this proof
 A: The usual argument for the fact that given a rank $r$ matrix $A$ we can find invertible $P,Q$ such that 
$$PAQ = \begin{pmatrix} I_r & 0 \\ 0 & 0 \end{pmatrix} $$
is obtained by applying row operations (encoded in $P$) and column operations (encoded in $Q^T$) to $A$ until you get to the desired form. If you have a family $A(t)$ of matrices of rank $A(t)$ which depends smoothly on a parameter $t$, it is not clear that this argument can be applied to get smooth families $P(t),Q(t)$ such that 
$$P(t)A(t)Q(t) = \begin{pmatrix} I_r & 0 \\ 0 & 0 \end{pmatrix}. $$
You might think that we can find $P(0),Q(0)$ for $A(0)$ and then take $P(t) \equiv P(0), Q(t) \equiv Q(0)$ but by playing with any non-trivial example you will see that this must fail.
How is this related to your situation? After choosing local coordinates, you have a family of matrices $dF|_{(x^1,\dots,x^m)}$ which have constant rank $r$ and depend smoothly on $(x^1,\dots,x^m)$. You suggest that by solving the problem for a specific value of $x^1,\dots,x^m$, you have solved the problem for all the other matrices but this is false. From this perspective, the proof of the constant rank theorem tries to bring the matrices $dF|_{(x^1,\dots,x^m)}$ to a canonical form that works for all values of $x^1,\dots,x^m$ (in a small enough neighborhood).
It is instructive to see how, when $M = \mathbb{R}^m, N = \mathbb{R}^n$ and $F$ is linear, the standard proof of the constant rank theorem reconstructs the familiar result from linear algebra. The point is that the way in which it proves the familiar result from linear algebra is actually more suited to study the general case of bringing a family of matrices (instead of a single one) to a canonical form so from this point of view, the proof is a natural generalization of the linear algebra result.
