Hardy, Hankel, reachability, and observability

This page gives the minimum theory background behind the finite-Hankel, Nehari/AAK, and state-space examples in lattice-dsp. It is written as an engineering map: the definitions are included only to explain what the package computes and what the diagnostics mean.

Causal stable systems as Hardy-space objects

For a causal discrete-time stable SISO system, the transfer function has a power series in nonnegative delays,

\[G(z) = g_0 + g_1 z^{-1} + g_2 z^{-2} + \cdots .\]

A Hardy-space viewpoint treats stable causal transfer functions as analytic objects on the unit disk. Informally:

  • H^2 tracks square-summable impulse responses and energy-style questions;

  • H^\infty tracks bounded frequency responses and worst-case gain questions;

  • causal projection keeps the nonnegative-delay part of a Laurent series;

  • anticausal projection keeps the negative-time part that cannot be implemented directly by a causal stable filter.

This is the background for Nehari approximation: the distance from an anticausal object to the space of causal stable systems is controlled by an associated Hankel operator. In the package, the exposed helpers are finite-section numerical diagnostics around this picture.

Hankel operators in DSP terms

Given an impulse response g_0, g_1, g_2, ..., a finite Hankel matrix is

\[\begin{split}H_G = \begin{bmatrix} g_1 & g_2 & g_3 & \cdots \\ g_2 & g_3 & g_4 & \cdots \\ g_3 & g_4 & g_5 & \cdots \\ \vdots & \vdots & \vdots & \ddots \end{bmatrix}.\end{split}\]

The key interpretation is:

A Hankel map sends past inputs to future outputs.

Large Hankel singular values correspond to input-output memory directions that are both easy to excite and easy to observe. Small singular values correspond to directions that have little effect on the measured input-output behavior. This is why hankel_singular_values is an order-selection diagnostic.

Reachability and observability

A finite-dimensional state-space model is

\[x_{n+1} = A x_n + B u_n, \qquad y_n = C x_n + D u_n.\]

The reachability matrix is

\[\mathcal R = [B, AB, A^2B, \ldots, A^{n-1}B],\]

and the observability matrix is

\[\begin{split}\mathcal O = \begin{bmatrix} C \\ CA \\ CA^2 \\ \vdots \\ CA^{n-1} \end{bmatrix}.\end{split}\]

A state direction is reachable when some input can excite it. It is observable when it can be seen in the output. A realization is minimal when every state direction is both reachable and observable. Nonminimal states can exist in the algebraic model while having no effect on the input-output map.

Finite Gramians provide energy-weighted versions of the same ideas:

\[W_c = \sum_{k=0}^{T-1} A^k B B^* (A^*)^k, \qquad W_o = \sum_{k=0}^{T-1} (A^*)^k C^* C A^k.\]

W_c measures how easily the state is reached by inputs. W_o measures how strongly state energy appears at the output. Hankel singular values combine both effects.

How this connects to Ho–Kalman reduction

The Markov parameters of a state-space model are

\[M_0 = D, \qquad M_k = C A^{k-1} B \quad (k \ge 1).\]

A block-Hankel matrix built from M_k factors through reachability and observability:

\[\begin{split}\mathcal H = \begin{bmatrix} M_1 & M_2 & \cdots \\ M_2 & M_3 & \cdots \\ \vdots & \vdots & \ddots \end{bmatrix} = \mathcal O\,\mathcal R.\end{split}\]

This factorization explains the finite-Hankel/Ho–Kalman workflow used by the package:

  1. compute impulse response or Markov parameters;

  2. build finite Hankel matrices;

  3. keep the leading singular directions;

  4. construct a reduced state-space realization;

  5. compare response error, stability, and runtime.

For SISO IIR reduction, the result can be converted back to scalar numerator and denominator coefficients, and when stable, to reflection/lattice coordinates. For MIMO reduction, the result is a reduced state-space model.

How this connects to Nehari and AAK language

Nehari and AAK theory use Hankel operators to make statements about best stable or low-rank rational approximation. The package uses that theory as a guide, but the public APIs expose finite numerical constructions:

  • finite Hankel singular-value diagnostics;

  • finite-Hankel/Ho–Kalman SISO and MIMO reduction;

  • finite anticausal-tail approximation helpers;

  • finite Schmidt-pair checks;

  • rational candidate selection under explicit tolerances.

The distinction matters. A finite matrix SVD can be an excellent diagnostic and baseline, but it is not the same mathematical object as an exact infinite-dimensional AAK/Nehari solver.

Practical reading checklist

When reading a model-reduction result, check these quantities in order:

  1. Hankel singular-value decay: is there a clear order cutoff?

  2. Reachability/observability rank: is the system minimal at the scale of the computation?

  3. Response error: does the reduced model preserve the impulse or frequency response in the region that matters?

  4. Stability: are the poles inside the unit disk, or are reflection coefficients available?

  5. Amortization: does the reduced runtime pay for the one-time reduction cost over the expected signal length or batch count?