1 Linear systems
1.1 Observability and controllability matrices
For a finite-dimensional linear system
with state matrix \(A\), input matrix \(B\), and output matrix \(C\), this section collects the (finite-horizon) controllability and observability matrices and the bridge theorem connecting the textbook observability predicate to the kernel of the observability matrix.
1.1.1 Observability matrix
The observability matrix of a pair \((A, C)\) with \(A \in \mathbb {F}^{n \times n}\) and \(C \in \mathbb {F}^{p \times n}\) is the block-row matrix
Rows are indexed by \(\mathrm{Fin}\, n \times \mathrm{Fin}\, p\), so that \(A^{k}\) is available without casting \(k : \mathrm{Fin}\, n\) through \(\mathrm{Fin.val}\).
A linear system \((A, C)\) is observable when the only state \(x \in \mathbb {F}^{n}\) for which
is the zero state. This phrasing does not mention \(\mathcal{O}(A, C)\), so the bridge theorem 8 has real content.
Block-row entry shape: at row \((k, i)\) and column \(j\), the observability matrix coincides with the \((i, j)\) entry of \(C\, A^{k}\):
Holds definitionally by the encoding chosen for definition 1.
For every state \(x \in \mathbb {F}^{n}\) and every \((k, i) \in \mathrm{Fin}\, n \times \mathrm{Fin}\, p\),
This is the definitional bridge that powers theorem 8.
Holds by definitional unfolding of \(\mathcal{O}(A, C)\) (see definition 1).
1.1.2 Controllability matrix
The controllability matrix of a pair \((A, B)\) with \(A \in \mathbb {F}^{n \times n}\) and \(B \in \mathbb {F}^{n \times m}\) is the block-column matrix
Columns are indexed by \(\mathrm{Fin}\, n \times \mathrm{Fin}\, m\), so that \(A^{k}\) is available without casting \(k : \mathrm{Fin}\, n\) through \(\mathrm{Fin.val}\).
Block-column entry shape: at row \(i\) and column \((k, j)\), the controllability matrix coincides with the \((i, j)\) entry of \(A^{k}\, B\):
Holds definitionally by the encoding chosen for definition 5.
A linear system \((A, B)\) is controllable when every target state \(x \in \mathbb {F}^{n}\) is reachable from the origin in \(n\) steps: there exist input vectors \(u_{0}, u_{1}, \dots , u_{n-1} \in \mathbb {F}^{m}\) such that
This phrasing does not name the controllability matrix, so the bridge theorem 10 has real content.
1.1.3 Milestone: observability iff trivial kernel of \(\mathcal{O}\)
A finite-dimensional linear system \((A, C)\) is observable in the sense of definition 2 if and only if the observability matrix \(\mathcal{O}(A, C)\) has trivial kernel under matrix-vector multiplication:
Both directions follow from the bridge theorem 4, which identifies the \((k, i)\)-coordinate of \(\mathcal{O}(A, C) \cdot x\) with the \(i\)-coordinate of \((C\, A^{k}) \cdot x\). The forward direction reads the per-power kernel out of the assembled kernel coordinatewise; the reverse direction packs them back.
1.1.4 Rank characterizations
A finite-dimensional system \((A, C)\) is observable if and only if the observability matrix \(\mathcal{O}(A, C)\) has full column rank, i.e.
where \(n\) is the state dimension.
Chain the kernel-form milestone theorem 8 with the matrix-level bridge \(\bigl(\forall x,\ M \cdot x = 0 \Rightarrow x = 0\bigr) \iff \operatorname {rank} M = n\) from ‘MatrixLemmas‘, applied with \(M = \mathcal{O}(A, C)\).
A linear system \((A, B)\) is controllable if and only if the controllability matrix has full row rank,
where \(n\) is the state dimension.
Combine the reindexing identity \(\mathcal{C}(A, B) \cdot u = \sum _{k} A^{k} B \cdot u_{k}\) (with \(u_{k}(j) = u(k, j)\)) with the matrix-level bridge \(\bigl(\forall y,\ \exists x,\ M\, x = y\bigr) \iff \operatorname {rank} M = n\) from ‘MatrixLemmas‘, applied with \(M = \mathcal{C}(A, B)\).
1.1.5 Hautus observability
The unobservable subspace of \((A, C)\) is the \(A\)-invariant subspace
Equivalently, \(\mathcal{N}(A, C) = \ker \mathcal{O}(A, C)\), but here it is phrased without naming \(\mathcal{O}\) so the bridge theorem 12 reads as content.
A finite-dimensional system \((A, C)\) is observable in the sense of definition 2 if and only if its unobservable subspace is trivial:
Both directions are membership unfoldings of definition 11 against definition 2.
The unobservable subspace is closed under the action of \(A\): for every \(v \in \mathcal{N}(A, C)\), also \(A\, v \in \mathcal{N}(A, C)\).
For \(k = 0, \dots , n-2\) this is direct from the definition. For \(k = n - 1\) we land at \(C\, A^{n}\, v\), which Cayley-Hamilton rewrites as a \(\mathbb {C}\)-linear combination of \(C\, A^{i}\, v\) for \(i {\lt} n\). Each of those is zero, so the combination is zero.
The Hautus observability matrix of \((A, C)\) at a complex number \(\mu \) is the block-row matrix
For every \(\mu \in \mathbb {C}\) and \(v \in \mathbb {C}^{n}\),
If \((A, C)\) is not observable, then there exists \(\mu \in \mathbb {C}\) and a nonzero vector \(v \in \mathbb {C}^{n}\) such that
i.e. \(\mu \) is an eigenvalue of \(A\) with an eigenvector in \(\ker C\).
The unobservable subspace definition 11 is nontrivial by theorem 12. It is \(A\)-invariant by theorem 13, hence finite-dimensional and invariant; over \(\mathbb {C}\) this guarantees a nonzero eigenvector inside it. That vector is automatically in \(\ker C\) (membership at \(k = 0\)), so it lies in the kernel of \(H_{A, C}(\mu )\) via theorem 15.
If \(\mu \in \mathbb {C}\) and \(v \neq 0\) satisfy \(H_{A, C}(\mu ) \cdot v = 0\), then \((A, C)\) is not observable.
The witness gives \(A v = \mu v\) and \(C v = 0\). By induction on \(k\), \(A^{k} v = \mu ^{k} v\), so \(C\, A^{k}\, v = \mu ^{k}\, C v = 0\) for every \(k\). The vector \(v\) is therefore in the unobservable subspace and is nonzero, so observability fails.
A finite-dimensional system \((A, C)\) over \(\mathbb {C}\) is observable if and only if for every \(\mu \in \mathbb {C}\) the Hautus matrix \(H_{A, C}(\mu )\) has trivial kernel:
Combine theorem 16 (failure direction) and theorem 17 (converse).
1.1.6 Hautus controllability
The Hautus controllability matrix of \((A, B)\) at a complex number \(\mu \) is the block-column matrix
A finite-dimensional system \((A, B)\) over \(\mathbb {C}\) is controllable if and only if for every \(\mu \in \mathbb {C}\) the Hautus matrix \(H^{\mathrm{ctrl}}_{A, B}(\mu )\) has full row rank:
Combine the duality bridge theorem 20 nope, that’s the iff itself; actually combine the duality bridge isControllable_iff_isObservable_transpose with the observability Hautus iff theorem 18, then convert the kernel-form RHS to the rank form via the matrix bridge mulVec_kernel_trivial_iff_rank_eq_card_cols from ‘MatrixLemmas‘, and finally identify the transposed Hautus matrices.