JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

The Payoff: Powers, Exponentials, and Functions of a Matrix

Why we did all this. Once a matrix is in Jordan form, computing A^k, e^(At), sqrt(A), or any analytic function reduces to one tiny formula per block.

Functions act block by block

If A = P J P^-1 then f(A) = P f(J) P^-1 for any reasonable function f, and because J is block-diagonal, f(J) just applies f to each block separately. So the entire problem collapses to: what is f of a single Jordan block? This is the functional calculus made concrete.

The function of a Jordan block J_k(lambda) is an upper-triangular Toeplitz matrix built from the derivatives of f at lambda: the diagonal is f(lambda), the superdiagonal is f'(lambda), the next is f''(lambda)/2!, and the j-th diagonal up is f^(j)(lambda)/j!. The single nilpotent N = J - lambda*I and a Taylor expansion are all you need — N^k = 0 truncates the series automatically.

For a 3x3 block J = lambda*I + N (N the superdiagonal shift, N^3 = 0):

  f(J) = f(lambda)*I + f'(lambda)*N + (f''(lambda)/2!)*N^2

       = [ f(lambda)   f'(lambda)   f''(lambda)/2 ;
           0           f(lambda)    f'(lambda)    ;
           0           0            f(lambda)     ]

The finite Taylor series stops because N^3 = 0 — no convergence worries.
f of a Jordan block: f(lambda) on the diagonal and successive derivatives f^(j)(lambda)/j! marching up the off-diagonals.

Powers and the matrix exponential

For matrix powers take f(x) = x^m: then f^(j)(lambda)/j! = C(m, j) lambda^(m-j), so each block's entries are binomial coefficients times powers of lambda — instantly giving A^m = P J^m P^-1 in closed form, with NO repeated multiplication. The asymptotics of A^m are visible at a glance: blocks with |lambda| < 1 decay, |lambda| > 1 blow up, and a large block with |lambda| = 1 grows polynomially.

For the matrix exponential take f(x) = e^(tx). Each block gives e^(t lambda) times a polynomial-in-t triangle: e^(tJ_k(lambda)) = e^(t lambda) * (I + tN + (t^2/2!)N^2 + ... + (t^(k-1)/(k-1)!)N^(k-1)). This is the exact solution operator for the linear ODE system x'(t) = A x(t): x(t) = e^(At) x(0). The block sizes explain why repeated eigenvalues produce the t, t^2, ... factors you see in solutions.

ODE  x' = A x,  A = P J P^-1.  Solution: x(t) = P e^(tJ) P^-1 x(0).

For J_2(lambda) = [lambda 1; 0 lambda]:

   e^(tJ) = e^(t*lambda) * [1  t;
                            0  1]

The '1' in the block is exactly what produces the t * e^(t*lambda)
resonant term familiar from repeated-root ODEs.
A 2x2 Jordan block produces the classic t*e^(lambda t) resonance — the off-diagonal 1 is the source of the secular term.

Square roots, logs, and the big picture

The same machine gives a matrix square root: take f(x) = sqrt(x) and apply it block by block, which works for any invertible block (and even for singular blocks under conditions on their size). Logs, sines, resolvents — anything analytic at the eigenvalues — all follow the identical derivative-triangle recipe. One canonical form, every matrix function.