I'm studying discrete-time LTI systems and state estimators for them. Recently, I studied this paper. I am facing a matrix rank calculation problem and having trouble solving it. I will provide more details below and would appreciate any help.
Consider the discrete-time LTI system with the following state-space representation: \begin{align} {x}_{k+1}&={A} {x}_k+{B} {u}_k &;{A} \in \mathbb{R}^{n \times n}, {B} \in \mathbb{R}^{n \times m} \\ {y}_k&={C} {x}_k &;{C} \in \mathbb{R}^{p \times n} \end{align} where $ {x}_k \in \mathbb{R}^n $ is the state, $ {u}_k \in \mathbb{R}^m $ is the control input and $ {y}_k \in \mathbb{R}^p $ is the measured output.
Suppose, this system is controllable and observable, also assume that $\mathrm{N}=\mathrm{n}$. So the controllability matrix $B_N$ and the observability matrix $O_N$, which are constructed as follows, are of rank $n$. $$ \begin{aligned} & B_N=\left[\begin{array}{llll} A^{N-1} B & \cdots & A B & B \end{array}\right] \\ & O_N=\left[\begin{array}{c} C \\ C A \\ \vdots \\ C A^{N-1} \end{array}\right] \\ \end{aligned} $$
I want to find the rank of matrix $M$, which is defined as below. The M matrix appears when we want to write the state of the system at any time based on the previous inputs and outputs of the system. \begin{equation} x_k=M\begin{bmatrix} u_N(k-N) \\ y_N(k-N) \end{bmatrix} \end{equation} where \begin{equation*} u_N(k-N)={\begin{bmatrix} u_{k-N}^T & u_{k-N+1}^T & \cdots & u_{k-1}^T \end{bmatrix}}^T \end{equation*} \begin{equation*} y_N(k-N)={\begin{bmatrix} y_{k-N}^T & y_{k-N+1}^T & \cdots & y_{k-1}^T \end{bmatrix}}^T \end{equation*}
$$ \begin{aligned} & T_N=\left[\begin{array}{ccccc} 0 & 0 & \cdots & \cdots & 0 \\ C B & 0 & \ddots & \ddots & \vdots \\ C A B & C B & \ddots & \ddots & 0 \\ \vdots & \ddots & \ddots & \ddots & 0 \\ C A^{N-2} B & \cdots & \cdots & C B & 0 \end{array}\right] \\ & O_N^{+}=\left(O_N^T O_N\right)^{-1} O_N^T \\ & M=\left[B_N-A^N O_N^{+} T_N \quad A^N O_N^{+}\right] \\ & \end{aligned} $$
Through simulation with different examples, I observe that the rank of matrix $M$ is $n$, and I am seeking either a proof of this statement or a counterexample.