Why can't columns of a generalized modal matrix for the same Jordan block be interchanged? Suppose we have the matrix $$M=\begin{pmatrix}
1 & 0 & 1\\
1 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$$
Then we can find a Jordan normal form $J$ and generalized modal matrix $P$ such that
$M=PJP^{-1}$. These are
$$P=\begin{pmatrix}
0 & 1 & 0\\
1 & 0 & 0\\
0 & 0 & 1
\end{pmatrix} \textrm{ and } J=\begin{pmatrix}
1 & 1 & 0\\
0 & 1 & 1\\
0 & 0 & 1
\end{pmatrix}$$
I understand that one can swap the order of Jordan blocks. My question is, why must the generalized eigenvectors of a Jordan chain in the modal matrix appear in order of increasing rank? In other words why couldn't we swap the position of two generalized eigenvectors corresponding to the same Jordan block so that
$$P=\begin{pmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$$
would also be a valid modal matrix for this problem. I have some intuitive understanding as to why this is wrong, but I'm interested in a more formal explanation/proof.
 A: A generalised eigenvector of matrix $M$, corresponding to eigenvalue $\lambda$, is a non-trivial element of $\operatorname{ker} (M - \lambda I)^k$, for some positive integer $k$. An eigenvector is a non-trivial element of $\operatorname{ker} (M - \lambda I)$, i.e. multiplying the vector by $M - \lambda I$ will annihilate it. Generalised eigenvectors require more applications of $M - \lambda I$ before the vector goes down.
Now, if we have a generalised eigevector $v \in \operatorname{ker} (M - \lambda I)^k$, then it follows immediately that $M - \lambda I \in \operatorname{ker} (M - \lambda I)^{k - 1}$. In this way we see that applying $M - \lambda I$ to a vector reduces a numerical property of generalised eigenvectors: the least $k$ such that $v \in \operatorname{ker} (M - \lambda I)^k$. This is known as the exponent of a generalised eigenvector.
So, applying $M - \lambda I$ degrades the exponent of generalised eigenvectors by $1$. Applying it sufficiently many times to any generalised eigenvector, you will get an eigenvector (generalised eigenvector with exponent $1$), then the $0$ vector.
By choosing generalised eigenvectors carefully, you can build a basis that makes use of this structure. You can ensure that, for every generalised eigenvector $v$ in your basis of exponent greater than $1$ (i.e. $v$ is not an eigenvector), the result of $(M - \lambda I)v$ belongs to your basis. So, if $v$ is of exponent $k$, we would expect $(M - \lambda I)v$, hence $(M - \lambda I)^2v$, hence $\ldots$ hence $(M - \lambda I)^{k-1}v$ all to belong to such a basis, where the final vector is an eigenvector. This collection of vectors is known as a chain of eigenvectors.
It is always possible to form a complete basis, in the relevant complex space, from these chains. Doing so, while keeping the chains in order, will form a Jordan Normal Form matrix.
How does this work? Let's say we have a generalised eigenvector $v$, with exponent $k$. Then, order the chain like so:
$$v_1 = (M - \lambda I)^{k-1}v, \quad v_2 = (M - \lambda I)^{k-2}v, \quad \ldots, \quad v_k = v.$$
If $m > 1$, we then have $v_{m-1} = (M - \lambda I)v_m$, or in other words,
$$M v_m = v_{m-1} + \lambda v_m.$$
Given we have our basis, containing this chain in this order, this is the unique expansion of $Mv_m$ with respect to this basis. As a coordinate column vector, the $\lambda v_m$ term implies we have a $\lambda$ on the diagonal, and a $1$ just above. This is specifically because we have ordered the chain in this way! If $v_{m-1}$ was not the preceding vector in the basis, then there would still be a $1$, but it could be in any row, including below the diagonal if $v_{m-1}$ occurs after $v_m$.
This is why, about as intuitively as I can make it, we really need the chains in order, and why permuting a Jordan basis will not produce a Jordan normal form. You can see, in this particular example, that the desired matrix has all the $1$s you'd expect of a Jordan normal form, but they are all over the shop, including below the diagonal.
