LeanForControl

10 Controllability and observability

10.1 Observability and controllability matrices

For a finite-dimensional linear system

\[ \dot{x} = A x + B u, \qquad y = C x, \]

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.

10.1.1 Observability matrix

Definition 437 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

\[ \mathcal{O}(A, C) = \begin{bmatrix} C \\ C\, A \\ C\, A^{2} \\ \vdots \\ C\, A^{n-1} \end{bmatrix} \in \mathbb {F}^{(n p) \times n}. \]

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}\).

Definition 438 Observability
✓
#

A linear system \((A, C)\) is observable when the only state \(x \in \mathbb {F}^{n}\) for which

\[ C\, A^{k}\, x = 0 \qquad \text{for every } k = 0, 1, \dots , n-1 \]

is the zero state. This phrasing does not mention \(\mathcal{O}(A, C)\), so the bridge theorem 444 has real content.

Lemma 439 Entries of the observability matrix
✓

Block-row entry shape: at row \((k, i)\) and column \(j\), the observability matrix coincides with the \((i, j)\) entry of \(C\, A^{k}\):

\[ \mathcal{O}(A, C)_{(k,i),\, j} = (C\, A^{k})_{i,\, j}. \]
Proof ▶

Holds definitionally by the encoding chosen for definition 437.

Lemma 440 Action of the observability matrix
✓

For every state \(x \in \mathbb {F}^{n}\) and every \((k, i) \in \mathrm{Fin}\, n \times \mathrm{Fin}\, p\),

\[ \bigl(\mathcal{O}(A, C) \cdot x\bigr)_{(k, i)} = \bigl(C\, A^{k} \cdot x\bigr)_{i}. \]

This is the definitional bridge that powers theorem 444.

Proof ▶

Holds by definitional unfolding of \(\mathcal{O}(A, C)\) (see definition 437).

10.1.2 Controllability matrix

Definition 441 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

\[ \mathcal{C}(A, B) = \begin{bmatrix} B & A\, B & A^{2}\, B & \cdots & A^{n-1}\, B \end{bmatrix} \in \mathbb {F}^{n \times (n m)}. \]

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}\).

Lemma 442 Entries of the controllability matrix
✓

Block-column entry shape: at row \(i\) and column \((k, j)\), the controllability matrix coincides with the \((i, j)\) entry of \(A^{k}\, B\):

\[ \mathcal{C}(A, B)_{i,\, (k, j)} = (A^{k}\, B)_{i,\, j}. \]
Proof ▶

Holds definitionally by the encoding chosen for definition 441.

Definition 443 Controllability
✓
#

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

\[ x = \sum _{k = 0}^{n-1} A^{k}\, B\, u_{k}. \]

This phrasing does not name the controllability matrix, so the bridge theorem 446 has real content.

10.1.3 Milestone: observability iff trivial kernel of \(\mathcal{O}\)

Theorem 444 Observability via a trivial kernel
✓

A finite-dimensional linear system \((A, C)\) is observable in the sense of definition 438 if and only if the observability matrix \(\mathcal{O}(A, C)\) has trivial kernel under matrix-vector multiplication:

\[ \mathrm{IsObservable}(A, C) \iff \bigl(\forall x,\ \mathcal{O}(A, C) \cdot x = 0 \Rightarrow x = 0\bigr). \]
Proof ▶

Both directions follow from the bridge lemma 440, 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.

10.1.4 Rank characterizations

Theorem 445 Observability rank test
✓

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.

\[ \operatorname {rank} \mathcal{O}(A, C) = n, \]

where \(n\) is the state dimension.

Proof ▶

Chain the kernel-form milestone theorem 444 with the matrix-level bridge \(\bigl(\forall x,\ M \cdot x = 0 \Rightarrow x = 0\bigr) \iff \operatorname {rank} M = n\) from ‘MatrixAlgebra.Rank‘, applied with \(M = \mathcal{O}(A, C)\).

Theorem 446 Controllability rank test
✓

A linear system \((A, B)\) is controllable if and only if the controllability matrix has full row rank,

\[ \operatorname {rank} \mathcal{C}(A, B) = n, \]

where \(n\) is the state dimension.

Proof ▶

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 ‘MatrixAlgebra.Rank‘, applied with \(M = \mathcal{C}(A, B)\).

10.1.5 Hautus observability

Definition 447 Unobservable subspace
✓
#

The unobservable subspace of \((A, C)\) is the \(A\)-invariant subspace

\[ \mathcal{N}(A, C) \; =\; \{ \, v \in \mathbb {C}^{n} \; :\; C\, A^{k}\, v = 0 \text{ for every } k = 0, 1, \dots , n - 1 \, \} . \]

Equivalently, \(\mathcal{N}(A, C) = \ker \mathcal{O}(A, C)\), but here it is phrased without naming \(\mathcal{O}\) so the bridge theorem 448 reads as content.

Theorem 448 Observability via the unobservable subspace
✓

A finite-dimensional system \((A, C)\) is observable in the sense of definition 438 if and only if its unobservable subspace is trivial:

\[ \mathcal{N}(A, C) = \{ 0\} \iff \mathrm{IsObservable}(A, C). \]
Proof ▶

Both directions are membership unfoldings of definition 447 against definition 438.

Lemma 449 \(A\)-invariance of the unobservable subspace
✓

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)\).

Proof ▶

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.

Definition 450 Hautus observability matrix
✓
#

The Hautus observability matrix of \((A, C)\) at a complex number \(\mu \) is the block-row matrix

\[ H_{A, C}(\mu ) \; =\; \begin{bmatrix} \mu I - A \\ C \end{bmatrix} \in \mathbb {C}^{(n + p) \times n} . \]
Lemma 451 Kernel of the Hautus matrix
✓

For every \(\mu \in \mathbb {C}\) and \(v \in \mathbb {C}^{n}\),

\[ H_{A, C}(\mu ) \cdot v = 0 \iff \bigl(A\, v = \mu \, v \; \wedge \; C\, v = 0\bigr). \]
Proof ▶
Theorem 452 Unobservability gives a Hautus rank drop
✓

If \((A, C)\) is not observable, then there exists \(\mu \in \mathbb {C}\) and a nonzero vector \(v \in \mathbb {C}^{n}\) such that

\[ H_{A, C}(\mu ) \cdot v = 0, \]

i.e. \(\mu \) is an eigenvalue of \(A\) with an eigenvector in \(\ker C\).

Proof ▶

The unobservable subspace definition 447 is nontrivial by theorem 448. It is \(A\)-invariant by lemma 449, 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 lemma 451.

Theorem 453 A Hautus rank drop gives unobservability
✓

If \(\mu \in \mathbb {C}\) and \(v \neq 0\) satisfy \(H_{A, C}(\mu ) \cdot v = 0\), then \((A, C)\) is not observable.

Proof ▶

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.

Theorem 454 Hautus (PBH) test for observability
✓

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:

\[ \mathrm{IsObservable}(A, C) \iff \forall \mu \in \mathbb {C},\ \ker H_{A, C}(\mu ) = \{ 0\} . \]
Proof ▶

Combine theorem 452 (failure direction) and theorem 453 (converse).

10.1.6 Hautus controllability

Definition 455 Hautus controllability matrix
✓
#

The Hautus controllability matrix of \((A, B)\) at a complex number \(\mu \) is the block-column matrix

\[ H^{\mathrm{ctrl}}_{A, B}(\mu ) \; =\; \begin{bmatrix} \mu I - A & B \end{bmatrix} \in \mathbb {C}^{n \times (n + m)} . \]

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:

\[ \mathrm{IsControllable}(A, B) \iff \forall \mu \in \mathbb {C}, \operatorname {rank} H^{\mathrm{ctrl}}_{A, B}(\mu ) = n. \]
Proof ▶

Combine the duality bridge isControllable_iff_isObservable_transpose with the observability Hautus iff theorem 454, then convert the kernel-form RHS to the rank form via the matrix bridge mulVec_kernel_trivial_iff_rank_eq_card_cols from ‘MatrixAlgebra.Rank‘, and finally identify the transposed Hautus matrices.

10.2 Reachable subspace and Kalman decomposition

Definition 457 Reachable subspace
✓
#

The reachable subspace of a pair \((A,B)\) is the column span of its controllability matrix:

\[ \mathcal R(A,B)=\operatorname {range}\mathcal C(A,B). \]

Thus it is exactly the span of \(B,AB,\ldots ,A^{n-1}B\).

Reference: Hespanha, Linear Systems Theory.

Lemma 458 Membership in the reachable subspace
✓

Let \(A\in \mathbb {F}^{n\times n}\) and \(B\in \mathbb {F}^{n\times m}\), and let \(\mathcal C(A,B)\in \mathbb {F}^{n\times (nm)}\) be their controllability matrix. For \(x\in \mathbb {F}^n\),

\[ x\in \mathcal R(A,B) \quad \Longleftrightarrow \quad \exists u:\operatorname {Fin}(n)\times \operatorname {Fin}(m) \to \mathbb {F},\qquad \mathcal C(A,B)u=x. \]

Here \(\mathcal R(A,B)=\operatorname {range}\mathcal C(A,B)\) is the reachable subspace.

Proof ▶
Theorem 459 Controllability via the reachable subspace
✓

A pair \((A,B)\) is controllable if and only if its reachable subspace is the whole state space.

Reference: Hespanha, Linear Systems Theory.

Proof ▶
Lemma 460 \(A\)-invariance of the reachable subspace
✓

The reachable subspace is \(A\)-invariant: \(A\mathcal R(A,B)\subseteq \mathcal R(A,B)\).

Reference: Hespanha, Linear Systems Theory.

Proof ▶
Definition 461 Kalman decomposition
✓

A Kalman decomposition of \((A,B,C)\) records four coordinate sectors adapted to the reachable and unobservable subspaces. Their direct sums recover those subspaces and the full state space. The chosen complements are noncanonical and are not individually asserted to be invariant under \(A\).

References: Hespanha, Linear Systems Theory; Kailath, Linear Systems.

Theorem 462 Existence of the Kalman decomposition
✓

Every finite-dimensional complex state-space system has four coordinate sectors adapted to its reachable and unobservable subspaces. The complements are noncanonical vector-space complements and are not individually asserted to be invariant under \(A\).

References: Hespanha, Linear Systems Theory; Kailath, Linear Systems.

Proof ▶
Definition 463 Adapted coordinate equivalence
✓

Addition of the four Kalman coordinate sectors defines a linear equivalence \(X_{c\bar o}\times X_{co}\times X_{\bar c\bar o}\times X_{\bar c o} \simeq \mathbb {C}^{n}\). Choosing sector bases therefore gives an adapted basis of the original state space.

In a basis adapted to the four Kalman coordinate sectors, ordered as controllable-unobservable, controllable-observable, uncontrollable-unobservable, uncontrollable-observable, the system has the forced-zero pattern

\[ A' = \begin{bmatrix} * & * & * & * \\ 0 & * & 0 & * \\ 0 & 0 & * & * \\ 0 & 0 & 0 & * \end{bmatrix}, \qquad B'=\begin{bmatrix} * \\*0 \\ 0 \end{bmatrix}, \qquad C'=\begin{bmatrix} 0 & * & 0 & * \end{bmatrix}. \]

Every displayed zero is asserted entrywise; no vanishing claim is made for the starred blocks. The chosen complement sectors are not individually asserted to be invariant under \(A\).

References: Hespanha, Linear Systems Theory; Kalman, “Mathematical Description of Linear Dynamical Systems” (1963); Kailath, Linear Systems.

Proof ▶

Reachable-subspace invariance forces the lower-left state and input zeros, unobservable-subspace invariance forces the remaining state zeros, and the zeroth observability condition forces the output zeros. Coordinate-basis representation lemmas translate these component statements to individual matrix entries.