9 The Differential Index
The index of a DAE measures how far it is from an ODE: it is the number of times the equations must be differentiated before an explicit \dot{\bm x}=\bm F(\bm x,t) can be extracted. For the constant-coefficient case Chapter 7 gave this number as the nilpotency degree of the Weierstrass algebraic block; this chapter gives the definition that applies to any DAE, linear or not, and relates it to the other notions of index in use.
9.1 DAE Index
The differential index describes how many differentiations of the DAE equations are needed before the derivatives of all state variables can be determined locally as functions of the state and time. It is a property of a specified formulation, together with the regularity and rank conditions used in the calculation.
Differential index
Consider an implicit system
\bm F\bigl(\bm x(t),\bm x'(t),t\bigr)=\bm 0, \qquad \bm x(t)\in\mathbb R^n.
When the Jacobian \bm F_{\bm x'} is singular, the system cannot be solved for \bm x' directly: some equations, or some combinations of equations, do not contain \bm x' at all and act as algebraic constraints. The missing information is hidden in the time derivatives of the equations.
The sequence of derivatives (derivative array)
Assume \bm F is sufficiently smooth and let \bm x(t) be a solution. Since \bm F\bigl(\bm x(t),\bm x'(t),t\bigr)=\bm 0 for every t, all its time derivatives vanish as well:
\begin{aligned} \bm 0 &= \bm F(\bm x,\bm x',t),\\[2pt] \bm 0 &= \frac{d}{dt}\bm F = \bm F_{\bm x'}\,\bm x''+\bm F_{\bm x}\,\bm x'+\bm F_t,\\[2pt] \bm 0 &= \frac{d^2}{dt^2}\bm F = \bm F_{\bm x'}\,\bm x'''+\bm\Phi_2(\bm x,\bm x',\bm x'',t),\\ &\;\;\vdots\\ \bm 0 &= \frac{d^k}{dt^k}\bm F = \bm F_{\bm x'}\,\bm x^{(k+1)} +\bm\Phi_k\bigl(\bm x,\bm x',\dots,\bm x^{(k)},t\bigr), \end{aligned}
where \bm\Phi_k collects all chain-rule terms that do not contain the highest derivative \bm x^{(k+1)}. Stacking the original equations and their first q derivatives gives the derivative array of order q:
\bm{\mathcal F}_q\bigl(\bm x,\bm x',\bm x'',\dots,\bm x^{(q+1)},t\bigr) = \begin{pmatrix} \bm F\\[2pt] \dfrac{d}{dt}\bm F\\[2pt] \vdots\\[2pt] \dfrac{d^q}{dt^q}\bm F \end{pmatrix} =\bm 0 . \tag{9.1}
For fixed (\bm x,t), Equation 9.1 is a system of (q+1)n algebraic equations in which \bm x',\bm x'',\dots,\bm x^{(q+1)} are treated as independent unknowns.
Extracting an ODE from the array
The derivative array need not determine all its unknowns: the highest derivatives usually remain free. This is not needed. Only \bm x' matters. By algebraic manipulations of the array (solving some rows for some unknowns, substituting, taking linear combinations of rows) one eliminates \bm x'',\dots,\bm x^{(q+1)}. If, for some q, these manipulations fix \bm x' uniquely as a function of \bm x and t, the result is the underlying ODE
\bm x'(t)=\bm G\bigl(\bm x(t),t\bigr).
During the extraction the equations of the array fall into three groups:
- Equations used to determine \bm x'. They produce the underlying ODE.
- Equations that become invariants. After elimination they give relations between \bm x and t only: the original algebraic constraints and the hidden constraints produced by differentiation. They are not part of the ODE, but every solution of the DAE satisfies them. A solution of \bm x'=\bm G(\bm x,t) that satisfies them at the initial time satisfies them for all t, so they are invariants of the underlying ODE and characterize the consistent initial values.
- Equations that are discarded. The remaining rows are not needed to determine \bm x'. Along a solution of the DAE they hold automatically, because they are time derivatives of the DAE equations.
The DAE is therefore equivalent to the underlying ODE together with its invariants, not to the ODE alone. Integrating only \bm x'=\bm G(\bm x,t) numerically lets the invariants drift away (see Constraint Drift).
The differentiation index counts how far the array must be extended before this extraction succeeds. The definition presumes that the necessary Jacobians have the ranks required for the stated local solution; without those conditions the index may not be defined or may vary along a trajectory.
Definition 9.1 (Definition (differentiation index)) The differentiation index of a regular DAE is the least nonnegative integer q such that the derivative array \bm{\mathcal F}_q=\bm 0 of Equation 9.1 determines \bm x' locally and uniquely as a function of (\bm x,t), so that algebraic manipulations of the array yield the underlying ODE \bm x'=\bm G(\bm x,t) for every component of the state. An ODE already in explicit form has index zero.
Colour convention for the examples
In the examples that follow, the derivatives of all the equations of the DAE are written out, row by row, up to the order q of the index. Row k contains the k-th time derivative of each equation, and column (i) refers to the i-th equation of the DAE in the order written:
- uncoloured equations are used to build the underlying ODE (or to express an invariant in the state variables);
- \textcolor{red}{\text{red}} equations are discarded;
- \textcolor{ForestGreen}{\text{green}} equations become invariants.
A direct calculation: the semi-explicit index-one case
For
\begin{aligned} \bm x'&=\bm f(\bm x,\bm z,t),\\ \bm 0&=\bm g(\bm x,\bm z,t), \end{aligned}
the derivative array of order one is
\begin{array}{c|l|l} k & \text{eq. }(1) & \text{eq. }(2)\\ \hline 0 & \bm x'-\bm f(\bm x,\bm z,t)=\bm 0 & \textcolor{ForestGreen}{\bm g(\bm x,\bm z,t)=\bm 0}\\[4pt] 1 & \textcolor{red}{\bm x''-\bm f_{\bm x}\bm x'-\bm f_{\bm z}\bm z'-\bm f_t=\bm 0} & \bm g_{\bm x}\bm x'+\bm g_{\bm z}\bm z'+\bm g_t=\bm 0 \end{array}
The row k=0 alone does not contain \bm z', so q=0 is not enough. The first row gives \bm x'=\bm f. If \bm g_{\bm z} is nonsingular, the differentiated constraint gives
\bm z'=-\bm g_{\bm z}^{-1} \left(\bm g_{\bm x}\bm f(\bm x,\bm z,t)+\bm g_t\right),
so one differentiation determines the derivatives of both \bm x and \bm z. The differentiated first equation only determines \bm x'' and is discarded; the constraint \bm g=\bm 0 becomes an invariant. This is the regular index-one case introduced in Section 10.1.
Worked exercises using the definition
The following calculations use only differentiation and algebraic elimination. In each case, count the differentiations needed to determine the derivatives of all state components.
Exercise 1: an explicit ODE (index zero)
Consider
x'(t)=-x(t).
The derivative is already explicit, so no differentiation is required. The array of order zero is the equation itself, nothing is discarded and there is no invariant. The index is q=0.
Exercise 2: a regular semi-explicit DAE (index one)
Consider
\begin{aligned} x'(t)&=-y(t),\\ 0&=x(t)+y(t)-\sin t. \end{aligned}
The derivatives of both equations up to order one are
\begin{array}{c|l|l} k & \text{eq. }(1) & \text{eq. }(2)\\ \hline 0 & x'+y=0 & \textcolor{ForestGreen}{x+y-\sin t=0}\\[4pt] 1 & \textcolor{red}{x''+y'=0} & x'+y'-\cos t=0 \end{array}
At order zero y' does not appear, so q\ge 1. The first equation gives x'=-y; the differentiated constraint then gives y'=\cos t-x'=y+\cos t. Therefore
x'=-y,\qquad y'=y+\cos t,
and one differentiation suffices: q=1. Equivalently, the constraint Jacobian is g_y=1. The equation x''+y'=0 only determines x'' and is discarded. The invariant is x+y-\sin t=0; indeed, along the ODE, \frac{d}{dt}(x+y-\sin t)=-y+(y+\cos t)-\cos t=0.
Exercise 3: correcting the prescribed-trajectory example (index two)
Consider
\begin{aligned} 0&=x(t)-\sin t,\\ 0&=x'(t)+y(t). \end{aligned}
The derivatives of both equations up to order two are
\begin{array}{c|l|l} k & \text{eq. }(1) & \text{eq. }(2)\\ \hline 0 & \textcolor{ForestGreen}{x-\sin t=0} & \textcolor{ForestGreen}{x'+y=0}\\[4pt] 1 & x'-\cos t=0 & x''+y'=0\\[4pt] 2 & x''+\sin t=0 & \textcolor{red}{x'''+y''=0} \end{array}
With the array of order one, x'=\cos t is determined, but y'=-x'' is not, because x'' is still free. The second derivative of the first equation fixes x''=-\sin t, hence y'=\sin t. Thus the explicit system is
x'=\cos t,\qquad y'=\sin t,
and the maximum differentiation order needed is two: q=2. The equation x'''+y''=0 is discarded. The invariants are x-\sin t=0 and, using x'=\cos t, y+\cos t=0. They fix the state completely, so the only consistent initial value at t_0 is x=\sin t_0, y=-\cos t_0. The earlier calculation of this example stopped before deriving y', so it did not establish the claimed index.
Exercise 4: a simple index-two chain
Consider the semi-explicit DAE
\begin{aligned} x'(t)&=y(t),\\ 0&=x(t). \end{aligned}
The derivatives of both equations up to order two are
\begin{array}{c|l|l} k & \text{eq. }(1) & \text{eq. }(2)\\ \hline 0 & x'-y=0 & \textcolor{ForestGreen}{x=0}\\[4pt] 1 & x''-y'=0 & \textcolor{ForestGreen}{x'=0}\\[4pt] 2 & \textcolor{red}{x'''-y''=0} & x''=0 \end{array}
The first equation gives x'=y. At order one, y'=x'' is not yet determined; the second derivative of the constraint gives x''=0, hence y'=0. The resulting explicit ODE is
x'=y,\qquad y'=0,
so q=2. The equation x'''-y''=0 is discarded. The invariants are the constraint x=0 and the hidden constraint x'=0, which in the state variables reads y=0.
Exercise 5: a simple index-three chain
Consider
\begin{aligned} x'(t)&=y(t),\\ y'(t)&=z(t),\\ 0&=x(t). \end{aligned}
The derivatives of all three equations up to order three are
\begin{array}{c|l|l|l} k & \text{eq. }(1) & \text{eq. }(2) & \text{eq. }(3)\\ \hline 0 & x'-y=0 & y'-z=0 & \textcolor{ForestGreen}{x=0}\\[4pt] 1 & x''-y'=0 & y''-z'=0 & \textcolor{ForestGreen}{x'=0}\\[4pt] 2 & x'''-y''=0 & \textcolor{red}{y'''-z''=0} & \textcolor{ForestGreen}{x''=0}\\[4pt] 3 & \textcolor{red}{x^{(4)}-y'''=0} & \textcolor{red}{y^{(4)}-z'''=0} & x'''=0 \end{array}
The first two equations give x'=y and y'=z. For z' the chain z'=y''=x''' uses the rows y''-z'=0 and x'''-y''=0, and only the third derivative of the constraint fixes x'''=0. Only after three differentiations is the derivative of every component determined. The equivalent explicit ODE on the consistent solution set is x'=y, y'=z, z'=0, and the differentiation index is q=3.
The red rows are discarded. The invariants are x=0 and the hidden constraints x'=0 and x''=0; with x'=y and x''=y'=z (the row x''-y'=0) they read y=0 and z=0.
An analogy: Taylor series for an ODE
The repeated differentiation of Definition 9.1 is less exotic than it looks: it is the same operation that produces a Taylor method for an ODE. For
\dot y=t\,y^2+t^2,\qquad y(0)=1,
the derivatives of the solution are obtained by differentiating the equation itself and substituting back,
\begin{aligned} \dot y &= t\,y^2+t^2, \\ \ddot y &= y^2+2t\,y\dot y+2t = y^2+2t\,y\,(t\,y^2+t^2)+2t, \\ \dddot y &= 4y\dot y+2t\,\dot y^{\,2}+2t\,y\ddot y+2, \end{aligned}
and the local expansion y_{k+1}=y_k+\dot y_k\Delta t+\ddot y_k\frac{\Delta t^2}{2} +\dddot y_k\frac{\Delta t^3}{6}+\mathcal O(\Delta t^4) is a numerical method of arbitrary order, built from nothing but the equation and the chain rule.
The DAE case differs in what the differentiations are for. For an ODE they produce higher-order accuracy and may be stopped at any point; for a DAE they produce the missing differential equations, and stopping early leaves a system that cannot be integrated at all. The index is precisely the number of differentiations that cannot be skipped. In both cases, however, the practical obstacle is the same — the expressions grow quickly — and it is the reason both subjects turn to structured algorithms rather than to the definition.
Why direct differentiation becomes difficult
These small examples can be handled by hand. For a general nonlinear DAE, successive differentiation creates many product and chain-rule terms, may introduce higher derivatives, and requires careful elimination while retaining the original constraints. Rank loss, redundant equations, or inconsistent initial data can make a seemingly valid differentiation step misleading. Consequently, direct application of the definition becomes difficult even for moderate systems. The following chapters develop structured algorithms for linear and nonlinear DAEs; these methods organize the required differentiation, expose hidden constraints, and support rank and consistency checks.
Other notions of index
The word index is used for several related but distinct quantities. Their values can agree for important regular classes, but there is no general equivalence without assumptions on the formulation and its ranks.
Perturbation index
The perturbation index measures how derivatives of a residual perturbation enter estimates for the solution error. It is tied to stability and error analysis, and therefore depends on the perturbation model and the norms used. It is not defined simply by counting differentiated constraints.
Tractability and strangeness indices
For linear or suitably structured systems, the tractability index uses a sequence of projectors to separate differential and algebraic directions. The strangeness index uses derivative arrays and rank-revealing transformations to expose hidden constraints and remove redundant equations; it is particularly useful for time-varying and over- or underdetermined systems. These constructions differ from direct differentiation of the full state equations, and their numerical values need not match the differentiation index for arbitrary systems.
Differentiation index and linear-pencil indices
The differentiation index used in this chapter is based on the number of time differentiations needed to obtain an explicit ODE. For a regular constant-coefficient linear pencil in Weierstrass form, it is related to the nilpotency degree of the algebraic block (the Kronecker or nilpotency index), with conventions depending on whether an ODE is assigned index zero or one. Under the standard convention that an ODE has index zero, these indices agree for regular pencils. The correspondence should not be transferred to singular pencils, general nonlinear DAEs, or arbitrary differentiation algorithms without a separate theorem. A useful corollary of the agreement is that the highest derivative of the forcing term required by the algebraic solution Equation 7.9 is one less than the index.