Chapter 11: Stability Analysis of Linear Systems
Lesson 1: Concepts of Stability: BIBO, Asymptotic, and Exponential Stability
This lesson introduces three foundational stability notions for linear systems: (i) input–output (BIBO) stability, (ii) asymptotic stability of equilibria in state-space models, and (iii) exponential stability as a quantitative strengthening of asymptotic stability. We develop rigorous definitions, prove key equivalences for finite-dimensional LTI systems, and connect state-space stability to BIBO stability through impulse-response bounds. The lesson ends with implementations in Python, C++, Java, MATLAB/Simulink, and Wolfram Mathematica, followed by textbook-style problems with complete solutions.
1. Conceptual Overview
In control engineering, “stability” is not a single concept; it depends on what is considered the “system behavior.” Two major viewpoints are:
- External (input–output) viewpoint: bounded input should produce bounded output (BIBO).
- Internal (state) viewpoint: the state trajectory should remain bounded and/or converge to an equilibrium (Lyapunov, asymptotic, exponential stability).
For continuous-time LTI systems, we will work with: \( u(t) \) as input, \( y(t) \) as output, and (when available) state \( x(t) \in \mathbb{R}^n \).
flowchart TD
A["Model given"] --> B["Input-output \n(transfer function / \nimpulse response)"]
A --> C["State-space \n(x' = A x + B u, y = C x + D u)"]
B --> B1["BIBO: bounded u -> bounded y"]
B1 --> B2["For causal LTI: BIBO <-> h(t) is absolutely integrable"]
C --> C1["Asymptotic: x(t) -> 0 \nfor all initial states"]
C --> C2["Exponential: ||x(t)|| <= M * exp(-alpha t) ||x0||"]
C2 --> C3["Exponential => Asymptotic"]
C2 --> D1["Impulse response \nh(t) = C exp(A t) B (if D = 0)"]
D1 --> B1
B2 --> E["Pole/eigenvalue conditions \n(formalized in later lessons)"]
C1 --> E
Throughout, we use standard norms. For vectors: \( \|x\|_2 \) is Euclidean norm; for signals: \( \|u\|_\infty := \sup_{t \ge 0} |u(t)| \). For matrices, \( \|A\| \) denotes a consistent induced norm (e.g., 2-norm).
2. BIBO Stability
2.1 Definition (Input–Output Stability)
Consider an operator mapping input signals to output signals, \( \mathcal{T}: u(\cdot) \mapsto y(\cdot) \). The system is BIBO stable if:
\[ \|u\|_\infty < \infty \quad \Longrightarrow \quad \|y\|_\infty < \infty, \quad \text{where } y = \mathcal{T}[u]. \]
For a causal continuous-time LTI system with impulse response \( h(t) \), the output (with zero initial condition) is given by convolution:
\[ y(t) = (h * u)(t) = \int_{0}^{t} h(\tau)\,u(t-\tau)\,d\tau, \quad t \ge 0. \]
2.2 Theorem: BIBO Stability and Absolute Integrability of the Impulse Response
Define the (causal) \( L^1 \) norm of the impulse response: \( \|h\|_{1} := \int_{0}^{\infty} |h(t)|\,dt \).
Theorem 1 (Causal LTI BIBO Criterion): A causal LTI system is BIBO stable if and only if
\[ \int_{0}^{\infty} |h(t)|\,dt < \infty. \]
Proof (Sufficiency): Assume \( \int_0^\infty |h(\tau)|\,d\tau < \infty \). For any bounded input, \( |u(t)| \le \|u\|_\infty \). Then
\[ |y(t)| = \left|\int_{0}^{t} h(\tau)\,u(t-\tau)\,d\tau\right| \le \int_{0}^{t} |h(\tau)|\,|u(t-\tau)|\,d\tau \le \\ \|u\|_\infty \int_{0}^{t} |h(\tau)|\,d\tau \le \|u\|_\infty \int_{0}^{\infty} |h(\tau)|\,d\tau. \]
Taking the supremum over \( t \ge 0 \) yields \( \|y\|_\infty \le \|h\|_1 \|u\|_\infty < \infty \). Hence BIBO stability holds.
Proof (Necessity): Suppose the system is BIBO stable. Consider the bounded input \( u(t) = \operatorname{sgn}(h(t)) \), where \( \operatorname{sgn}(z) \in \{-1,0,+1\} \) and \( |\operatorname{sgn}(h(t))| \le 1 \). Then for any \( t \ge 0 \),
\[ y(t) = \int_{0}^{t} h(\tau)\,\operatorname{sgn}(h(t-\tau))\,d\tau. \]
By time-invariance, one may equivalently use the bounded input \( \tilde{u}(\tau) = \operatorname{sgn}(h(\tau)) \) and obtain
\[ \tilde{y}(t) = \int_{0}^{t} h(\tau)\,\operatorname{sgn}(h(\tau))\,d\tau = \int_{0}^{t} |h(\tau)|\,d\tau. \]
If \( \int_{0}^{\infty} |h(\tau)|\,d\tau = \infty \), then \( \tilde{y}(t) \) grows unbounded as \( t \) increases, contradicting BIBO stability. Therefore \( \int_{0}^{\infty} |h(\tau)|\,d\tau < \infty \). ∎
2.3 Rational Transfer Functions and Pole Location (Preview)
For many engineering systems, the transfer function is rational: \( G(s) = \frac{N(s)}{D(s)} \). A key fact (formalized in the next lesson) is that, for a proper causal rational LTI system, BIBO stability holds when the impulse response decays sufficiently fast, which corresponds to poles lying in the open left half-plane:
\[ \text{BIBO stable} \quad \Longleftrightarrow \quad \operatorname{Re}(p_i) < 0 \text{ for every pole } p_i \text{ of } G(s), \]
under standard realizability assumptions (causality, finite-dimensionality, and no pole cancellations hiding unstable dynamics). We postpone the systematic “pole-region” analysis to Lesson 2; here, we focus on conceptual and proof-based foundations.
3. Asymptotic Stability (State-Space)
Consider the homogeneous LTI system (no input): \( \dot{x}(t) = A x(t) \), with solution \( x(t) = e^{At} x(0) \). The equilibrium at the origin \( x = 0 \) is the central object of stability analysis.
3.1 Lyapunov Stability (Basic Definition)
The equilibrium \( x = 0 \) is stable in the sense of Lyapunov if small initial states produce trajectories that remain small for all future time.
Definition (Lyapunov Stability): The equilibrium \( x=0 \) is Lyapunov stable if
\[ \forall \varepsilon > 0,\; \exists \delta > 0:\; \|x(0)\| < \delta \;\Longrightarrow\; \|x(t)\| < \varepsilon \;\; \forall t \ge 0. \]
3.2 Asymptotic Stability
Lyapunov stability prevents divergence, but does not guarantee convergence to the equilibrium. Asymptotic stability adds convergence.
Definition (Asymptotic Stability): The equilibrium \( x=0 \) is asymptotically stable if:
- It is Lyapunov stable, and
- There exists \( \delta_0 > 0 \) such that \( \|x(0)\| < \delta_0 \Rightarrow \lim_{t \to \infty} \|x(t)\| = 0 \).
For LTI systems, asymptotic stability is typically a global property: if it holds locally, it holds for all initial conditions because the dynamics are linear. We will make this precise after introducing exponential stability.
4. Exponential Stability
4.1 Definition
Exponential stability quantifies the rate of decay and provides inequalities that are indispensable for robustness and performance analysis.
Definition (Exponential Stability): The equilibrium \( x=0 \) of \( \dot{x} = A x \) is exponentially stable if there exist constants \( M \ge 1 \) and \( \alpha > 0 \) such that for all \( t \ge 0 \):
\[ \|x(t)\| = \|e^{At}x(0)\| \le M e^{-\alpha t}\,\|x(0)\|. \]
4.2 Exponential Stability Implies Asymptotic (and Lyapunov) Stability
Proposition 1: Exponential stability implies asymptotic stability (and Lyapunov stability).
Proof: If \( \|x(t)\| \le M e^{-\alpha t}\|x(0)\| \), then \( e^{-\alpha t} → 0 \) as \( t → \infty \), hence
\[ \lim_{t → \infty}\|x(t)\| \le \lim_{t → \infty} M e^{-\alpha t}\|x(0)\| = 0, \]
which gives convergence, i.e., asymptotic stability. Moreover, Lyapunov stability follows by selecting \( \delta = \varepsilon / M \), since \( \|x(0)\| < \delta \Rightarrow \|x(t)\| \le M\|x(0)\| < \varepsilon \) for all \( t \ge 0 \). ∎
4.3 For Finite-Dimensional LTI Systems: Asymptotic and Exponential Stability Coincide
For general nonlinear systems, asymptotic and exponential stability are distinct. For finite-dimensional continuous-time LTI systems, they coincide. The core reason is that solutions are linear combinations of modes driven by eigenstructure of \( A \), and “decay to zero” forces a uniform exponential envelope.
Theorem 2 (Equivalence for LTI): For \( \dot{x} = A x \) with finite dimension, the following are equivalent:
- Asymptotic stability of the origin,
- Exponential stability of the origin,
- All eigenvalues of \( A \) satisfy \( \operatorname{Re}(\lambda_i) < 0 \).
Item (3) will be treated systematically in Lesson 4. Here we provide a proof sketch that emphasizes the mechanism rather than computational criteria.
Proof sketch (3 → 2): Assume \( \operatorname{Re}(\lambda_i) < 0 \) for all eigenvalues. Put \( A \) into Jordan form: \( A = V J V^{-1} \) where \( J \) is block diagonal with Jordan blocks \( J_k = \lambda_k I + N_k \), and \( N_k \) is nilpotent. Then
\[ e^{At} = V e^{Jt} V^{-1}, \qquad e^{Jt} = \operatorname{diag}(e^{J_1 t}, \dots, e^{J_m t}). \]
For each Jordan block,
\[ e^{J_k t} = e^{(\lambda_k I + N_k)t} = e^{\lambda_k t}\,e^{N_k t} = e^{\lambda_k t}\sum_{r=0}^{q_k-1}\frac{(N_k t)^r}{r!}, \]
where \( q_k \) is the block size. Since \( N_k^{q_k} = 0 \), the polynomial term \( \sum_{r=0}^{q_k-1}\frac{(N_k t)^r}{r!} \) grows at most like a polynomial in \( t \), while \( e^{\lambda_k t} \) decays exponentially because \( \operatorname{Re}(\lambda_k) < 0 \). Therefore there exist constants \( M_k \ge 1 \) and \( \alpha_k > 0 \) such that \( \|e^{J_k t}\| \le M_k e^{-\alpha_k t} \). Taking \( \alpha = \min_k \alpha_k \) and combining the similarity transform yields \( \|e^{At}\| \le M e^{-\alpha t} \) for some \( M \ge 1 \), which is exponential stability.
Proof sketch (2 → 1): This is Proposition 1.
Proof sketch (1 → 3): If some eigenvalue satisfies \( \operatorname{Re}(\lambda) \ge 0 \), then the corresponding mode cannot decay to zero for all initial conditions (a mode with \( \operatorname{Re}(\lambda) > 0 \) diverges; a mode with \( \operatorname{Re}(\lambda)=0 \) is non-decaying). Hence asymptotic stability fails. ∎
5. From Exponential Stability to BIBO Stability (State-Space → Input–Output)
Consider the LTI state-space system with zero initial condition: \( \dot{x}(t) = A x(t) + B u(t), \; y(t) = C x(t) + D u(t) \). The solution is
\[ x(t) = \int_{0}^{t} e^{A(t-\tau)}B\,u(\tau)\,d\tau, \qquad y(t) = Cx(t) + D u(t). \]
If \( D = 0 \) (strictly proper system), the impulse response is \( h(t) = C e^{At} B \) for \( t \ge 0 \). More generally, \( D \neq 0 \) produces an additional instantaneous term in the input–output map.
Theorem 3 (Exponential stability implies BIBO for strictly proper LTI): If \( \dot{x} = Ax \) is exponentially stable and \( D=0 \), then the input–output system is BIBO stable.
Proof: Exponential stability means there exist \( M \ge 1 \) and \( \alpha > 0 \) such that \( \|e^{At}\| \le M e^{-\alpha t} \) for all \( t \ge 0 \). Then the impulse response satisfies
\[ \|h(t)\| = \|C e^{At}B\| \le \|C\|\,\|e^{At}\|\,\|B\| \le \|C\|\,M e^{-\alpha t}\,\|B\|. \]
Hence
\[ \int_{0}^{\infty}\|h(t)\|\,dt \le \|C\|\,M\|B\|\int_{0}^{\infty} e^{-\alpha t}\,dt = \|C\|\,M\|B\|\cdot \frac{1}{\alpha} < \infty. \]
Therefore \( h(\cdot) \) is absolutely integrable, and by Theorem 1 the system is BIBO stable. ∎
Important remark (converse needs conditions): BIBO stability alone does not always guarantee internal stability if there are hidden unstable modes that are not observable at the output or not reachable from the input. In later lessons, we formalize this using minimal realizations (controllable + observable).
6. Practical Decision Workflow
In practice, the notion of stability you check depends on the model form you have and what behavior matters: bounded outputs for bounded excitations (BIBO) versus decay of internal states (asymptotic/exponential).
flowchart TD
S["Start: choose stability notion"] --> Q1["Is the requirement about \nbounded y for bounded u?"]
Q1 -->|yes| B1["Use BIBO definition"]
B1 --> B2["If LTI impulse response available: \ncheck integral of |h(t)|"]
B1 --> B3["If transfer function rational: \ncheck pole real parts (preview)"]
Q1 -->|no| Q2["Is the requirement about \nconvergence of state x(t)?"]
Q2 -->|yes| I1["Use state-space notions"]
I1 --> I2["Asymptotic: x(t)->0"]
I1 --> I3["Exponential: ||x(t)|| <= M exp(-alpha t) ||x0||"]
I3 --> I4["For finite-dimensional LTI: \nasymptotic <-> exponential \n(with eigenvalues in LHP)"]
Q2 -->|no| E["Clarify objective: \nboundedness, convergence rate, \nor both"]
This workflow is conceptual. In subsequent lessons, we will provide computational criteria based on pole locations (transfer functions) and eigenvalues (state-space), and later derive algebraic tests for polynomial denominators.
7. Implementations and Computational Checks
The goal of these implementations is not only to “compute stable/unstable,” but to connect computations to the mathematical definitions: absolute integrability of impulse responses for BIBO, and exponential decay bounds for state trajectories.
7.1 Python (SciPy + python-control)
Recommended libraries: \( \texttt{numpy} \), \( \texttt{scipy} \), \( \texttt{control} \), and \( \texttt{matplotlib} \).
import numpy as np
# ---------- Example 1: BIBO via impulse response integrability ----------
# G1(s) = 1/(s+1) is BIBO stable; G2(s) = 1/(s-1) is not.
import control as ct
G1 = ct.tf([1.0], [1.0, 1.0])
G2 = ct.tf([1.0], [1.0, -1.0])
def approx_L1_impulse(G, T=20.0, N=20000):
t = np.linspace(0.0, T, N)
t_out, h = ct.impulse_response(G, t)
# approximate integral of |h(t)| dt by trapezoidal rule
return np.trapz(np.abs(h), t_out)
print("Approx L1 norm of h(t) for G1:", approx_L1_impulse(G1))
print("Approx L1 norm of h(t) for G2 (will grow with T):", approx_L1_impulse(G2))
# ---------- Example 2: Exponential stability (state-space) ----------
A = np.array([[0.0, 1.0],
[-2.0, -3.0]])
# In later lessons, eigenvalues are the primary criterion.
eigA = np.linalg.eigvals(A)
print("Eigenvalues of A:", eigA)
# Simulate xdot = A x with different initial conditions and observe decay
from scipy.linalg import expm
def simulate_homogeneous(A, x0, tgrid):
X = np.zeros((len(tgrid), len(x0)))
for k, t in enumerate(tgrid):
X[k, :] = (expm(A * t) @ x0).reshape(-1)
return X
t = np.linspace(0.0, 8.0, 401)
x0 = np.array([1.0, -2.0])
X = simulate_homogeneous(A, x0, t)
# Optional: plot decay (requires matplotlib)
# import matplotlib.pyplot as plt
# plt.plot(t, np.linalg.norm(X, axis=1))
# plt.xlabel("t"); plt.ylabel("||x(t)||"); plt.grid(True); plt.show()
7.2 C++ (Eigen for Linear Algebra + Simple Simulation)
Recommended library: Eigen (header-only) for eigenvalues and matrix operations. The code below checks the real parts of eigenvalues and simulates \( \dot{x} = A x \) using a simple Euler method (for conceptual demonstration; higher-order methods are preferred in practice).
#include <Eigen/Dense>
#include <Eigen/Eigenvalues>
#include <iostream>
#include <vector>
#include <complex>
int main() {
Eigen::Matrix2d A;
A << 0.0, 1.0,
-2.0, -3.0;
// Eigenvalue check (conceptual link to exponential stability for LTI)
Eigen::EigenSolver<Eigen::Matrix2d> es(A);
auto eigvals = es.eigenvalues();
bool all_left_half_plane = true;
for (int i = 0; i < eigvals.size(); ++i) {
std::complex<double> lam = eigvals[i];
std::cout << "lambda[" << i << "] = " << lam << "\n";
if (lam.real() >= 0.0) { all_left_half_plane = false; }
}
std::cout << "All eigenvalues have Re(lambda) < 0 ? " << (all_left_half_plane ? "yes" : "no") << "\n";
// Simple simulation: x_{k+1} = x_k + dt * A x_k
double dt = 0.001;
double T = 5.0;
int N = static_cast<int>(T / dt);
Eigen::Vector2d x;
x << 1.0, -2.0;
for (int k = 0; k <= N; ++k) {
double t = k * dt;
if (k % 500 == 0) {
std::cout << "t=" << t << " ||x||=" << x.norm() << "\n";
}
x = x + dt * (A * x);
}
return 0;
}
7.3 Java (EJML for Linear Algebra + Simulation)
Recommended library: EJML (Efficient Java Matrix Library). Below is a compact example that computes eigenvalues and simulates the homogeneous system. For production-grade numerical integration, use a robust ODE solver library, but the Euler step is sufficient to connect to the theory.
import org.ejml.data.DMatrixRMaj;
import org.ejml.dense.row.CommonOps_DDRM;
import org.ejml.dense.row.factory.DecompositionFactory_DDRM;
import org.ejml.interfaces.decomposition.EigenDecomposition_F64;
import org.ejml.data.Complex_F64;
public class StabilityDemo {
public static void main(String[] args) {
DMatrixRMaj A = new DMatrixRMaj(new double[][]{
{0.0, 1.0},
{-2.0, -3.0}
});
// Eigenvalues
EigenDecomposition_F64<DMatrixRMaj> eig = DecompositionFactory_DDRM.eig(2, false);
eig.decompose(A);
boolean allLHP = true;
for (int i = 0; i < 2; i++) {
Complex_F64 c = eig.getEigenvalue(i);
System.out.println("lambda[" + i + "] = " + c);
if (c.getReal() >= 0.0) allLHP = false;
}
System.out.println("All eigenvalues have Re(lambda) < 0 ? " + (allLHP ? "yes" : "no"));
// Euler simulation x_{k+1} = x_k + dt * A x_k
double dt = 1e-3;
double T = 5.0;
int N = (int)(T / dt);
DMatrixRMaj x = new DMatrixRMaj(new double[][]{ {1.0},{-2.0} });
DMatrixRMaj Ax = new DMatrixRMaj(2,1);
for (int k = 0; k <= N; k++) {
double t = k * dt;
if (k % 500 == 0) {
double norm = Math.sqrt(x.get(0,0)*x.get(0,0) + x.get(1,0)*x.get(1,0));
System.out.println("t=" + t + " ||x||=" + norm);
}
CommonOps_DDRM.mult(A, x, Ax);
// x = x + dt * Ax
x.set(0,0, x.get(0,0) + dt*Ax.get(0,0));
x.set(1,0, x.get(1,0) + dt*Ax.get(1,0));
}
}
}
7.4 MATLAB and Simulink
MATLAB provides direct support for transfer functions and state-space models. The following script illustrates: (i) impulse-response-based BIBO intuition, and (ii) exponential decay through eigenvalues and state trajectories.
% ---------- Example 1: BIBO intuition via impulse response ----------
s = tf('s');
G1 = 1/(s+1);
G2 = 1/(s-1);
figure; impulse(G1); grid on; title('Impulse response: G1(s)=1/(s+1)');
figure; impulse(G2); grid on; title('Impulse response: G2(s)=1/(s-1)');
% MATLAB has built-ins:
disp(isstable(G1)); % true
disp(isstable(G2)); % false
% ---------- Example 2: Exponential stability in state-space ----------
A = [0 1; -2 -3];
B = [0; 1];
C = [1 0];
D = 0;
eigA = eig(A);
disp('Eigenvalues of A:'); disp(eigA);
sys = ss(A,B,C,D);
x0 = [1; -2];
t = linspace(0,8,401);
u = zeros(size(t)); % homogeneous response, u(t)=0
[y,tout,x] = lsim(sys,u,t,x0);
figure; plot(tout, vecnorm(x,2,2)); grid on;
xlabel('t'); ylabel('||x(t)||'); title('State norm decay');
% ---------- Simulink (programmatic build outline) ----------
% You can create a Simulink model with a State-Space block:
% new_system('stab_demo'); open_system('stab_demo');
% add_block('simulink/Continuous/State-Space','stab_demo/SS');
% set_param('stab_demo/SS','A','[0 1; -2 -3]','B','[0;1]','C','[1 0]','D','0');
% add_block('simulink/Sources/Step','stab_demo/Step');
% add_block('simulink/Sinks/Scope','stab_demo/Scope');
% add_line('stab_demo','Step/1','SS/1');
% add_line('stab_demo','SS/1','Scope/1');
% set_param('stab_demo','StopTime','8'); sim('stab_demo');
7.5 Wolfram Mathematica
Mathematica can manipulate transfer functions, compute inverse Laplace transforms, and evaluate eigenvalues directly. The following code demonstrates pole-based stability intuition and state-space decay.
(* ---------- Example 1: Transfer function poles and impulse response ---------- *)
G1[s_] := 1/(s + 1);
G2[s_] := 1/(s - 1);
polesG1 = Solve[Denominator[Together[G1[s]]] == 0, s]
polesG2 = Solve[Denominator[Together[G2[s]]] == 0, s]
h1[t_] := InverseLaplaceTransform[G1[s], s, t]
h2[t_] := InverseLaplaceTransform[G2[s], s, t]
(* Approximate L1 integral of |h(t)| over a finite horizon *)
L1approx[h_, T_] := NIntegrate[Abs[h[t]], {t, 0, T}]
L1approx[h1, 20]
L1approx[h2, 5] (* grows quickly; not integrable over [0, Infinity) *)
(* ---------- Example 2: State-space exponential decay ---------- *)
A = { {0, 1}, {-2, -3} };
eigA = Eigenvalues[A]
x0 = {1, -2};
x[t_] := MatrixExp[A t].x0;
Plot[Norm[x[t]], {t, 0, 8}, PlotRange -> All, AxesLabel -> {"t", "||x(t)||"}]
8. Problems and Solutions
The following problems are designed to mirror typical textbook exercises in linear systems and stability theory. Each solution is written to reinforce the definitions and proofs introduced in this lesson.
Problem 1 (BIBO ←→ Absolute Integrability): Consider a causal LTI system with impulse response \( h(t) \) and convolution output \( y(t) = \int_0^t h(\tau)u(t-\tau)d\tau \). Prove that the system is BIBO stable if and only if \( \int_0^\infty |h(t)|dt < \infty \).
Solution: This is precisely Theorem 1. The “if” direction follows from the bound
\[ |y(t)| \le \|u\|_\infty \int_{0}^{\infty}|h(\tau)|d\tau, \]
while the “only if” direction uses the bounded choice \( u(t)=\operatorname{sgn}(h(t)) \) to force \( y(t)=\int_0^t |h(\tau)|d\tau \), which must remain bounded as \( t \) grows. ∎
Problem 2 (Exponential Bound for Diagonalizable A): Assume \( A \in \mathbb{R}^{n \times n} \) is diagonalizable: \( A = V \Lambda V^{-1} \), where \( \Lambda = \operatorname{diag}(\lambda_1,\dots,\lambda_n) \). Show that if \( \max_i \operatorname{Re}(\lambda_i) < 0 \), then the origin of \( \dot{x} = Ax \) is exponentially stable.
Solution: Since \( A=V\Lambda V^{-1} \),
\[ e^{At} = V e^{\Lambda t} V^{-1}, \quad \text{and} \quad e^{\Lambda t} = \operatorname{diag}(e^{\lambda_1 t},\dots,e^{\lambda_n t}). \]
Let \( \alpha := -\max_i \operatorname{Re}(\lambda_i) \), so \( \alpha > 0 \). Then \( |e^{\lambda_i t}| = e^{\operatorname{Re}(\lambda_i)t} \le e^{-\alpha t} \), hence \( \|e^{\Lambda t}\| \le e^{-\alpha t} \) for any induced norm consistent with diagonal matrices. Therefore
\[ \|e^{At}\| \le \|V\|\,\|e^{\Lambda t}\|\,\|V^{-1}\| \le \|V\|\,\|V^{-1}\|\,e^{-\alpha t}. \]
Setting \( M := \|V\|\,\|V^{-1}\| \) yields \( \|x(t)\| \le M e^{-\alpha t}\|x(0)\| \), which is exponential stability. ∎
Problem 3 (Stable but Not Asymptotically Stable): Consider \( \dot{x} = A x \) with \( A = \begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix} \). Determine whether the origin is Lyapunov stable, asymptotically stable, and exponentially stable.
Solution: The solution is a rotation: \( x(t) = e^{At}x(0) \), and in fact \( \|x(t)\|_2 = \|x(0)\|_2 \) for all \( t \ge 0 \). Thus the origin is Lyapunov stable (trajectories remain at constant radius), but not asymptotically stable because \( \|x(t)\| \) does not converge to zero unless \( x(0)=0 \). It is also not exponentially stable, since exponential stability would require \( \|x(t)\| \le M e^{-\alpha t}\|x(0)\| \), which cannot hold when \( \|x(t)\|=\|x(0)\| \). ∎
Problem 4 (BIBO Check by Impulse Response): Let \( h(t) = e^{-t} \) for \( t \ge 0 \). Show the system is BIBO stable and compute an explicit bound \( \|y\|_\infty \le K \|u\|_\infty \).
Solution: We have
\[ \int_0^\infty |h(t)|dt = \int_0^\infty e^{-t}dt = 1 < \infty, \]
so the system is BIBO stable by Theorem 1. Moreover, for all \( t \ge 0 \),
\[ |y(t)| \le \|u\|_\infty \int_0^\infty e^{-\tau}d\tau = \|u\|_\infty. \]
Hence one may take \( K=1 \). ∎
Problem 5 (Internal Exponential Stability → BIBO via State-Space): Consider \( \dot{x} = Ax + Bu \), \( y = Cx \) with \( D=0 \) and \( x(0)=0 \). Assume \( \|e^{At}\| \le M e^{-\alpha t} \) for some \( M \ge 1 \), \( \alpha > 0 \). Prove BIBO stability and give an explicit gain bound from \( \|u\|_\infty \) to \( \|y\|_\infty \).
Solution: With \( x(0)=0 \),
\[ y(t) = C\int_0^t e^{A(t-\tau)}B\,u(\tau)\,d\tau. \]
Take norms and use submultiplicativity:
\[ \|y(t)\| \le \|C\|\int_0^t \|e^{A(t-\tau)}\|\,\|B\|\,|u(\tau)|\,d\tau \le \|C\|\|B\|\|u\|_\infty \int_0^t M e^{-\alpha (t-\tau)}\,d\tau. \]
Evaluate the integral:
\[ \int_0^t M e^{-\alpha (t-\tau)}\,d\tau = M \int_0^t e^{-\alpha (t-\tau)}\,d\tau = M \int_0^t e^{-\alpha s}\,ds \le M \int_0^\infty e^{-\alpha s}\,ds = \frac{M}{\alpha}. \]
Therefore \( \|y(t)\| \le \frac{M}{\alpha}\|C\|\|B\|\|u\|_\infty \) for all \( t \ge 0 \), and \( \|y\|_\infty \le \left(\frac{M}{\alpha}\|C\|\|B\|\right)\|u\|_\infty \). This is BIBO stability. ∎
9. Summary
We introduced stability as a family of concepts rather than a single property. BIBO stability was defined as bounded-input/bounded-output behavior and proven equivalent (for causal LTI systems) to absolute integrability of the impulse response. For state-space models, we defined Lyapunov stability, asymptotic stability, and exponential stability, proved that exponential stability implies asymptotic stability, and established (for finite-dimensional LTI systems) the equivalence of asymptotic and exponential stability. Finally, we connected internal exponential stability to BIBO stability through impulse-response bounds and provided multi-language implementations.
10. References
- Lyapunov, A.M. (1892). The general problem of the stability of motion. Kharkov Mathematical Society (classical foundational work; widely reprinted and translated).
- Perron, O. (1930). Die Stabilitätsfrage bei Differentialgleichungen. Mathematische Zeitschrift, 32, 703–728.
- Datko, R. (1970). Extending a theorem of A.M. Lyapunov to Hilbert space. Journal of Mathematical Analysis and Applications, 32(3), 610–616.
- Sontag, E.D. (1989). Smooth stabilization implies coprime factorization. IEEE Transactions on Automatic Control, 34(4), 435–443.
- Vidyasagar, M. (1985). Input–output stability of nonlinear systems and related topics (foundational stability framework). IEEE Transactions on Automatic Control, 30(5), 489–498.
- Zames, G. (1966). On the input-output stability of time-varying nonlinear feedback systems. IEEE Transactions on Automatic Control, 11(2), 228–238.
- Brockett, R.W. (1970). Finite Dimensional Linear Systems: structural results on stability and realizations (core theoretical perspective). Journal-level results consolidated in monograph form.
- Desoer, C.A., & Vidyasagar, M. (1975). Feedback Systems: Input–Output Properties (rigorous BIBO and induced-norm development). Archival theoretical treatments and references therein.