[guided]The goal of this step is to prove that the columns of $T$ really form a basis. Here $A\in\mathbb{R}^{n\times n}$ and $B\in\mathbb{R}^n$. Reachability means that the $n$ vectors $A^kB$ for $0\le k\le n-1$ span $\mathbb{R}^n$. We compare the new vectors $t_j$ to that known basis.
Define, for $1\le j\le n$,
\begin{align*}
u_j:=A^{n-j}B.
\end{align*}
Thus $u_1=A^{n-1}B$, $u_2=A^{n-2}B$, and $u_n=B$. The list $u_1,\dots,u_n$ is just the usual reachability list in reverse order. Since $(A,B)$ is reachable, these $n$ vectors form a basis of $\mathbb{R}^n$.
We now compare $t_j$ to $u_j$. The claim is that each $t_j$ has leading term $u_j$ and only lower-order correction terms:
\begin{align*}
t_j=u_j+\operatorname{span}\{u_{j+1},\dots,u_n\}.
\end{align*}
For $j=n$, this is exactly $t_n=B=u_n$. Suppose it has been proved for $j+1$. Then $t_{j+1}$ is $u_{j+1}$ plus a linear combination of $u_{j+2},\dots,u_n$. Applying $A$ gives $Au_{j+1}=u_j$. Also, for $j+2\le k\le n$, the vector $Au_k$ is either $u_{k-1}$ or, when $k=n$, the vector $AB=u_{n-1}$; in all cases these correction terms remain in the span of $u_{j+1},\dots,u_{n-1}$. The recursion adds $a_jB=a_ju_n$, which is also in the correction span. Therefore
\begin{align*}
t_j=u_j+\operatorname{span}\{u_{j+1},\dots,u_n\}.
\end{align*}
This means that the coordinate matrix expressing the ordered list $t_1,\dots,t_n$ in the basis $u_1,\dots,u_n$ is triangular with diagonal entries $1$. Such a triangular matrix has determinant $1$, so it is invertible. Therefore $t_1,\dots,t_n$ is also a basis of $\mathbb{R}^n$, and the matrix $T$ with these columns is invertible.[/guided]