- with equality if and only if (nonnegativity),
- for all , (homogeneity),
- for all (the triangle inequality).

These are analogues of the defining properties of a vector norm.

An important class of matrix norms is the *subordinate matrix norms*. Given a vector norm on the corresponding subordinate matrix norm on is defined by

or, equivalently,

For the -, -, and -vector norms it can be shown that

where denotes the largest singular value of . To remember the formulas for the – and -norms, note that 1 is a vertical symbol (for columns) and is a horizontal symbol (for rows). For the general Hölder -norm no explicit formula is known for for .

An immediate implication of the definition of subordinate matrix norm is that

whenever the product is defined. A norm satisfying this condition is called consistent or submultiplicative.

Another commonly used norm is the Frobenius norm,

The Frobenius norm is not subordinate to any vector norm (since , whereas for any subordinate norm), but it is consistent.

The -norm and the Frobenius norm are unitarily invariant: they satisfy for any unitary matrices and . For the Frobenius norm the invariance follows easily from the trace formula.

As for vector norms, all matrix norms are equivalent in that any two norms differ from each other by at most a constant. This table shows the optimal constants such that for and the norms mentioned above. Each inequality in the table is attained for some .

For any and any consistent matrix norm,

where is the spectral radius (the largest absolute value of any eigenvalue). To prove this inequality, let be an eigenvalue of and the corresponding eigenvector (necessarily nonzero), and form the matrix . Then , so , giving since . For a subordinate norm it suffices to take norms in the equation .

A useful relation is

which follows from , where the first two equalities are obtained from the singular value decomposition and we have used (1).

A more general subordinate matrix norm can be defined by taking different vector norms in the numerator and denominator:

Some authors denote this norm by .

A useful characterization of is given in the next result. Recall that denotes the dual of the vector norm .

Theorem 1.For ,

Proof.We have

where the second equality follows from the definition of dual vector norm and the fact that the dual of the dual norm is the original norm.

We can now obtain a connection between the norms of and . Here, denotes .

Theorem 2.If then.

Proof.Using Theorem 1, we have

If we take the – and -norms to be the same -norm then we have , where (giving, in particular, and , which are easily obtained directly).

Now we give explicit formulas for the norm when or is or and the other is a general norm.

Theorem 3.For ,

For ,

where

and if is symmetric positive semidefinite then

Proof.For (3),

with equality for , where the maximum is attained for . For (4), using the Hölder inequality,

Equality is attained for an that gives equality in the Hölder inequality involving the th row of , where the maximum is attained for .

Turning to (5), we have . The unit cube , where , is a convex polyhedron, so any point within it is a convex combination of the vertices, which are the elements of . Hence implies

and then

Hence , but trivially and (5) follows.

Finally, if is symmetric positive semidefinite let . Then, using a Cholesky factorization (which exists even if is singular) and the Cauchy–Schwarz inequality,

Conversely, for we have

so . Hence , using (5).

As special cases of (3) and (4) we have

We also obtain by using Theorem 2 and (5), for ,

The -norm has recently found use in statistics (Cape, Tang, and Priebe, 2019), the motivation being that because it satisfies

the -norm can be much smaller than the -norm when and so can be a better norm to use in bounds. The – and -norms are used by Rebrova and Vershynin (2018) in bounding the -norm of a random matrix after zeroing a submatrix. They note that the -norm of a random matrix involves maximizing over infinitely many random variables, while the -norm and -norm involve only and random variables, respectively.

The () norm is not consistent, but for any vector norm , we have

Let be a nonnegative square matrix whose row and column sums are all equal to . This class of matrices includes magic squares and doubly stochastic matrices. We have , so by (2). But for the vector of s, so is an eigenvalue of and hence by (1). Hence . In fact, for all (see Higham (2002, Prob. 6.4) and Stoer and Witzgall (1962)).

The problem of computing or estimating may be difficult for two reasons: we may not have an explicit formula for the norm, or may be given implicitly, as , , or , for example, and we may wish to compute the norm without forming . Both difficulties are overcome by a generalization of the power method proposed by Tao in 1975 for arbitrary norms and independently Boyd in 1984 for and both -norms (see Higham, 2002, Sec.15.2). The power method accesses only through matrix–vector products with and , so does not need to be explicitly available.

Let us focus on the case where and are the same -norm. The power method is implemented in the Matrix Computation Toolbox as `pnorm`

and we use it here to estimate the -norm and the -norm, which we compare with the -, -, and -norms.

>> A = gallery('frank',4) A = 4 3 2 1 3 3 2 1 0 2 2 1 0 0 1 1 >> [norm(A,1) norm(A,2) pnorm(A,pi), pnorm(A,99), norm(A,inf)] ans = 8.0000e+00 7.6237e+00 8.0714e+00 9.8716e+00 1.0000e+01

The plot in the top half of the following figure shows the estimated -norm for the matrix `gallery('binomial',8)`

for . This shape of curve is typical, because, as the plot in the lower half indicates, is a convex function of for (see Higham, 2002, Sec.6.3).

The power method for the norm, which is the max norm in (6), is investigated by Higham and Relton (2016) and extended to estimate the largest values or .

A norm on can be defined by

Note that

A famous inequality of Grothendieck states that for all , for some constant independent of . Much work has been done to estimate the smallest possible constant , which is known to be in the interval , or for the analogous inequality for real data. See Friedland, Lim, and Zhang (2018) and the references therein.

The formula (5) with is due to Rohn (2000), who shows that evaluating it is NP-hard. For general , the formula is given by Lewis (2010).

Computing mixed subordinate matrix norms based on -norms is generally NP-hard (Hendrickx and Olshevsky, 2010).

This is a minimal set of references, which contain further useful references within.

- Joshua Cape, Minh Tang, and Carey Priebe, The Two-To-Infinity Norm and Singular Subspace Geometry with Applications to High-Dimensional Statistics, Ann. Statist. 47(5), 2405–2439, 2019.
- Shmuel Friedland, Lek-Heng Lim and Jinjie Zhang, An Elementary and Unified Proof of Grothendieck’s Inequality, L’Enseignement Mathématique 64 (3), 327–351, 2018.
- Julien Hendrickx and Alex Olshevsky, Matrix -Norms are NP-Hard to Approximate if , SIAM J. Matrix Anal. Appl. 31(5), 2802–2812, 2010.
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, second edition, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2002.
- Nicholas J. Higham and Samuel Relton, Estimating the Largest Elements of a Matrix, SIAM J. Sci. Comput. 38(5), C584–C601, 2016,
- Andrew D. Lewis, A Top Nine List: Most Popular Induced Matrix Norms, Manuscript, 2010.
- E. Rebrova and R. Vershynin, Norms of Random Matrices: Local and Global Problems, Adv. Math. 324, 40–83, 2018.
- Josef Stoer and C. Witzgall, Transformations by Diagonal Matrices in a Normed Space, Numer. Math. 4(1), 158–171, 1962.

- What Is a Unitarily Invariant Norm? (2021)
- What Is a Vector Norm? (2021)

This article is part of the “What Is” series, available from https://nhigham.com/category/what-is and in PDF form from the GitHub repository https://github.com/higham/what-is.

The MATLAB suite of solvers for ordinary differential equations previously contained 8 solvers, including 3 Runge-Kutta solvers: `ode23`

, `ode23tb`

, and `ode45`

. The suite has been augmented with two new high-order Runge-Kutta solvers: `ode78`

uses 7th and 8th order Runge-Kutta formulas and `ode89`

uses 8th and 9th order Runge-Kutta formulas.

The documentation says that

`ode78`

and`ode89`

may be more efficient than`ode45`

on non-stiff problems that are smooth except possibly for a few isolated discontinuities.`ode89`

may be more efficient than`ode78`

on very smooth problems, when integrating over long time intervals, or when tolerances are tight.`ode78`

and`ode89`

may not be as fast or as accurate as`ode45`

in single precision.

The MATLAB `mpower`

function is called by an exponentiation `A^z`

when `A`

is a matrix and `z`

is a real or complex scalar. For the meaning of such arbitrary matrix powers see What Is a Fractional Matrix Power?

Previously, `mpower`

used a diagonalization of `A`

. For a matrix that is not diagonalizable, or is close to being not diagonalizaable, the results could be inaccurate. In R2021b a Schur–Padé algorithm, which employs a Schur decomposition in conjunction with Padé approximation, is used that works for all matrices. The difference in accuracy between the old and new versions of `mpower`

is clearly demonstrated by computing the square root of a 2-by-2 Jordan block (a difficult case because it is defective).

% R2021a >> A = [1 1; 0 1], X = A^(0.5), residual = A - X^2 A = 1 1 0 1 X = 1 0 0 1 residual = 0 1 0 0 % R2021b >> A = [1 1; 0 1], X = A^(0.5), residual = A - X^2 A = 1 1 0 1 X = 1.0000e+00 5.0000e-01 0 1.0000e+00 residual = 0 0 0 0

The new function `pagesvd`

computes the singular value decomposition (SVD) of pages of nD arrays. A page is a 2D slice (i.e., a matrix) formed by taking all the elements in the first two dimensions and fixing the later subscripts. Related functions include `pagemtimes`

for matrix multiplication abd `pagetranspose`

for transposition, both introduced in R2020b. Better performance can be expected from these page functions than from explicit looping over the pages, especially for small-sized pages.

Several improvements have been introduced to the MATLAB Editor. Ones that caught my eye are the ability to edit rectangular areas of text, automatic completion of block endings and delimiters, wrapping of comments, and changing the case of selected text. I do all my editing in Emacs, using the MATLAB major mode, and these sorts of things are either available or can be added by customization. However, these are great additions for MATLAB Editor users.

- with equality if and only if (nonnegativity),
- for all (homogeneity),
- for all (the triangle inequality).

An important class of norms is the Hölder -norms

The -norm is interpreted as and is given by

Other important special cases are

A useful concept is that of the *dual norm* associated with a given vector norm, which is defined by

The maximum is attained because the definition is equivalent to , in which we are maximizing a continuous function over a compact set. Importantly, the dual of the dual norm is the original norm (Horn and Johnson, 2013, Thm. 5.5.9(c)).

We can rewrite the definition of dual norm, using the homogeneity of vector norms, as

Hence we have the attainable inequality

which is the generalized Hölder inequality.

The dual of the -norm is the -norm, where , so for the -norms the inequality (2) becomes the (standard) Hölder inequality,

An important special case is the Cauchy–Schwarz inequality,

The notation is used to denote the number of nonzero entries in , even though it is not a vector norm and is not obtained from (1) with . In portfolio optimization, if specifies how much to invest in stock then the inequality says “invest in at most stocks”.

In numerical linear algebra, vector norms play a crucial role in the definition of a subordinate matrix norm, as we will explain in the next post in this series.

All norms on are equivalent in the sense that for any two norms and there exist positive constants and such that

For example, it is easy to see that

The 2-norm is invariant under unitary transformations: if , then .

Care must be taken to avoid overflow and (damaging) underflow when evaluating a vector -norm in floating-point arithmetic for . One can simply use the formula , but this requires two passes over the data (the first to evaluate ). For more efficient one-pass algorithms for the -norm see Higham (2002, Sec. 21.8) and Harayama et al. (2021).

This is a minimal set of references, which contain further useful references within.

- Takeyuki Harayama, Shuhei Kudo, Daichi Mukunoki, Toshiyuki Imamura, and Daisuke Takahashi, A Rapid Euclidean Norm Calculation Algorithm that Reduces Overflow and Underflow, in Computational Science and Its Applications–ICCSA 2021, O. Gervasi et al., eds, 95–110, Springer, 2021.
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, second edition, Society for Industrial and Applied Mathematics,
- Roger A. Horn and Charles R. Johnson, Matrix Analysis, second edition, Cambridge University Press, 2013. My review of the second edition.

**Note**: This article was revised on October 12, 2021 to change the definition of dual norm to use .

This article is part of the “What Is” series, available from https://nhigham.com/category/what-is and in PDF form from the GitHub repository https://github.com/higham/what-is.

The Fugaku supercomputer that tops the HPL-AI mixed-precision benchmark in the June 2021 TOP500 list. It solved a linear system of order 10^7 using IEEE half precision arithmetic for most of the computations.

The largest dense linear systems being solved today are of order , and future exascale computer systems will be able to tackle even larger problems. Rounding error analysis shows that the computed solution satisfies a componentwise backward error bound that, under favorable assumptions, is of order , where is the unit roundoff of the floating-point arithmetic: for double precision and for single precision. This backward error bound cannot guarantee any stability for single precision solution of today’s largest problems and suggests a loss of half the digits in the backward error for double precision.

Half precision floating-point arithmetic is now readily available in hardware, in both the IEEE binary16 format and the bfloat16 format, and it is increasingly being used in machine learning and in scientific computing more generally. For the computation of the inner product of two -vectors the backward error bound is again of order , and this bound exceeds for for both half precision formats, suggesting a potentially complete loss of numerical stability. Yet inner products with are successfully used in half precision computations in practice.

The error bounds I have referred to are upper bounds and so bound the worst-case over all possible rounding errors. Their main purpose is to reveal potential instabilities rather than to provide realistic error estimates. Yet we do need to know the limits of what we can compute, and for mission critical applications we need to be able to guarantee a successful computation..

Can we understand the behavior of linear algebra algorithms at extreme scale and in low precision floating-point arithmetics?

To a large extent the answer is yes if we exploit three different features to obtain smaller error bounds.

Many algorithms are implemented in blocked form. For example, an inner product of two -vectors and can computed as

where and is the block size. The inner product has been broken into smaller inner products of size , which are computed independently then summed. Many linear algebra algorithms are blocked in an analogous way, where the blocking is into submatrices with rows or columns (or both). Careful analysis of the error analysis shows that a blocked algorithm has an error bound about a factor of smaller than that for the corresponding unblocked algorithm. Practical block sizes for matrix algorithms are typically or , so blocking brings a substantial reduction in the error bounds.

In fact, one can do even better than an error bound of order . By computing the sum with a more accurate summation method the error constant is further reduced to (this is the FABsum method of Blanchard et al. (2020)).

Intel x86 processors support an 80-bit extended precision format with a 64-bit significand, which is compatible with that specified in the IEEE standard. When a compiler uses this format with 80-bit registers to accumulate sums and inner products it is effectively working with a unit roundoff of rather than for double precision, giving error bounds smaller by a factor up to .

Some processors have a fused multiply–add (FMA) operation, which computes a combined multiplication and addition with one rounding error instead of two. This results in a reduction in error bounds by a factor .

Mixed precision block FMA operations , with matrices of fixed size, are available on Google tensor processing units, NVIDIA GPUs, and in the ARMv8-A architecture. For half precision inputs these devices can produce results of single precision quality, which can give a significant boost in accuracy when block FMAs are chained together to form a matrix product of arbitrary dimension.

Worst-case rounding error bounds suffer from the problem that they are not attainable for most specific sets of data and are unlikely to be nearly attained. Stewart (1990) noted that

To be realistic, we must prune away the unlikely. What is left is necessarily a probabilistic statement.

Theo Mary and I have recently developed probabilistic rounding error analysis, which makes probabilistic assumptions on the rounding errors and derives bounds that hold with a certain probability. The key feature of the bounds is that they are proportional to when a corresponding worst-case bound is proportional to . In the most general form of the analysis (Connolly, Higham, and Mary, 2021), the rounding errors are assumed to be mean independent and of mean zero, where mean independence is a weaker assumption than independence.

The different features we have described can be combined to obtain significantly smaller error bounds. If we use a blocked algorithm with block size then in an inner product the standard error bound of order reduces to a probabilistic bound of order , which is a significant reduction. Block FMAs and extended precision registers provide further reductions.

For example, for a linear system of order solved in single precision with a block size of , the probabilistic error bound is of order versus for the standard worst-case bound. If FABsum is used then the bound is further reduced.

Our conclusion is that we can successfully solve linear algebra problems of greater size and at lower precisions than the standard rounding error analysis suggests. A priori bounds will always be pessimistic, though. One should compute a posteriori residuals or backward errors (depending on the problem) in order to assess the quality of a numerical solution.

For full details of the work summarized here, see Higham (2021).

- Pierre Blanchard, Nicholas Higham, and Theo Mary, A Class of Fast and Accurate Summation Algorithms, SIAM J. Sci. Comput. 42(3), A1541–A1557, 2020.
- Pierre Blanchard, Nicholas Higham, Florent Lopez, Theo Mary, and Srikara Pranesh, Mixed Precision Block Fused Multiply-Add: Error Analysis and Application to GPU Tensor Cores, SIAM J. Sci. Comput. 42(3), C124-C141, 2020
- Michael P. Connolly, Nicholas J. Higham, and Theo Mary, Stochastic Rounding and Its Probabilistic Backward Error Analysis, SIAM J. Sci. Comput. 43(1), A566–A585, 2021.
- Nicholas J. Higham, Numerical Stability of Algorithms at Extreme Scale and Low Precisions, MIMS EPrint 2021.14, Manchester Institute for Mathematical Sciences, The University of Manchester, UK, September 2021.
- Nicholas Higham and Theo Mary, A New Approach to Probabilistic Rounding Error Analysis, SIAM J. Sci. Comput. 41(5), A2815–A2835, 2019.
- G. W. Stewart, Stochastic Perturbation Theory, SIAM Rev. 32(4), 579–610, 1990.

Videos of the talks are now available on the Numerical Linear Algebra Group’s YouTube channel and are included below. Slides for the talks are available on the workshop website.

**Sven Hammarling** (The University of Manchester), “Jack Dongarra”.

**Iain Duff** (STFC-RAL and CERFACS), “Jack”

**James Demmel** (University of California, Berkeley), “New Communication-Avoiding Algorithms, and Fixing Old Bugs in the BLAS and LAPACK”

**Piotr Luszczek** (University of Tennessee), “Numerical Methods and Across Scales, Precisions and Hardware Platforms”

**Cleve Moler** (MathWorks), “Computers That I Have Known”

**Yves Robert** (Ecole Normale Supérieure de Lyon), “25+ Years of Scheduling at ICL”

**Françoise Tisseur** (The University of Manchester), “Mixed Precision Tall and Thin QR Factorization with Applications”

**David Keyes** (King Abdullah University of Science and Technology), “Adaptive Nonlinear Preconditioning for PDEs with Error Bounds on Output Functionals”

**Zhaojun Bai** (University of California, Davis), “Many Eigenpair Computation Via Hotelling’S Deflation”,

**Ilse Ipsen** (North Carolina State University), “A Few Observations About Summation Algorithms”

**Erich Strohmaier** (TOP500), “TOP500 and Accidental Benchmarking”

**Nick Higham** (The University of Manchester), “Solving Dense Linear Systems: A Brief History and Future Directions ”

**Jack Dongarra** (University of Tennessee, Oak Ridge Laboratory and The University of Manchester), “Still Having Fun After 50 Years”,

The two-part minisymposium *Bohemian Matrices and Applications*, organized by Rob Corless and I, took place at the SIAM Annual Meeting, July 22 and 23, 2021. This page makes available slides from some of the talks.

The minisymposium followed a two-part minisymposium on Bohemian matrices at the 2019 ICIAM meeting in Valencia and a 3-day workshop on Bohemian matrices in Manchester in 2018.

For more on Bohemian matrices see the Bohemian matrices website.

*Minisymposium description:* Bohemian matrices are matrices with entries drawn from a fixed discrete set of small integers (or some other discrete set). The term is a contraction of BOunded HEight Matrix of Integers. Such matrices arise in many applications, and include graph incidence matrices and Bernoulli matrices. The questions of interest range from identifying structures in the spectra of particular classes of Bohemian matrix to searching for most ill conditioned matrices within a class, and applications include stress-testing algorithms and software. This minisymposium will report recent theoretical and computational progress as well as open questions.

**Putting Skew-Symmetric Tridiagonal Bohemians on the Calendar**. Robert M. Corless, Western University, Canada. Abstract. Rob did not use slides but gave his talk using this paper and this Maple worksheet.

**Determinants of Normalized Bohemian Upper Hessenberg Matrices**. Massimiliano Fasi, Örebro University, Sweden; Jishe Feng, Longdong University, China; Gian Maria Negri Porzio, University of Manchester, United Kingdom. Abstract. Slides.

**Experiments on Upper Hessenberg and Toeplitz Bohemians**. Eunice Chan, Western University, Canada. Abstract. Slides.

**Eigenvalues of Magic Squares and Related Bohemian Matrices**. Hariprasad Manjunath Hegde, Indian Institute of Science, Bengaluru, India. Abstract. Slides.

**Calculating the 3D Kings Multiplicity Constant**. Nicholas Cohen and Neil Calkin, Clemson University, U.S. Abstract. Slides.

**Bohemian Inners Inverses: A First Step Toward Bohemian Generalized Inverses**. Laureano Gonzalez-Vega, Universidad de Cantabria, Spain; Juan Rafael Sendra, Universidad Alcalá de Henares, Spain; Juana Sendra Pons, Universidad Politécnica de Madrid, Spain. Abstract. Slides.

**Recent Progress in the Rational Factorisation of Integer Matrices**. Matthew Lettington, Cardiff University, United Kingdom. Abstract. Slides.

**Which Columns are Independent? Why does Row Rank = Column Rank?** Gilbert Strang, Massachusetts Institute of Technology, U.S. Abstract. Slides.

**Bohemian Matrices: the Symbolic Computation Approach**. Juana Sendra, Universidad Autónoma de Madrid, Spain; Laureano González-Vega, Universidad de Estudios Financieros en Madrid, Spain; Juan Rafael Sendra, Universidad Alcalá de Henares, Spain. Abstract. Slides.

An important property is that total nonnegativity is preserved under matrix multiplication and hence under taking positive integer powers.

Theorem 1.If are totally nonnegative then so is .

Theorem 1 is a direct consequence of the Binet–Cauchy theorem on determinants (also known as the Cauchy–Binet theorem). To state it, we need a way of specifying submatrices. We say the vector is an *index vector* of order if its components are integers from the set satisfying . If and are index vectors of order and , respectively, then denotes the matrix with () element .

Theorem 2.(Binet–Cauchy)Let , , and . If and are index vectors of order and then

where the sum is over all index vectors of order .

Note than when , (1) reduces to the well-known relation , while when , (1) reduces to the definition of matrix multiplication.

Totally nonnegative matrices have many interesting determinantal properties. For example, they satisfy Fischer’s inequality, first proved for symmetric positive definite matrices.

Theorem 3.(Fischer) If is totally nonnegative then for any index vector ,

where comprises the indices not in.

By repeatedly applying (2) with containing just one element, we obtain Hadamard’s inequality for totally nonnegative :

We give some examples of totally positive matrices, showing how they can be generated in MATLAB. We use the Anymatrix toolbox.

A matrix well known to be positive definite, but which is also totally positive, is the Hilbert matrix , with . The Hilbert matrix is a particular case of a Cauchy matrix , with for given vectors . A Cauchy matrix is totally positive if and , which follows from the formula

In MATLAB, the Hilbert matrix is `hilb(n)`

and the Cauchy matrix can be generated by `gallery('cauchy',x,y)`

(or `anymatrix('gallery/cauchy',x,y)`

).

is totally positive if the points satisfy . As a partial check, the general formula

shows that every leading principal minor is positive. In MATLAB, a Vandermonde matrix can be generated by `anymatrix('core/vand',x)`

.

The Pascal matrix is defined by

For example, in MATLAB:

>> P = pascal(5) P = 1 1 1 1 1 1 2 3 4 5 1 3 6 10 15 1 4 10 20 35 1 5 15 35 70

The Pascal matrix is totally positive for all (see the section below on bidiagonal factorizations).

The one-parameter correlation matrix with off-diagonal elements given by with , illustrated by

is not totally positive because while the principal minors are all positive, the submatrix has nonpositive determinant. However, the Kac–Murdock–Szegö matrix , with , illustrated by

is totally positive thanks to the decay of the elements way from the diagonal. In MATLAB, the Kac–Murdock–Szegö matrix can be generated by `gallery('kms',n,rho)`

.

The lower Hessenberg Toeplitz matrix with all elements on and below the superdiagonal, illustrated for by

is totally nonnegative. It has zero eigenvalues, which appear in a single Jordan block, and its largest eigenvalue is . In MATLAB, this matrix can be generated by `anymatrix('core/hessfull01',n)`

. This and other binary totally nonnegative matrices are studied by Brualdi and Kirkland (2010).

Finally, consider a nonnegative bidiagonal matrix factorized into a product of elementary nonnegative bidiagonal matrices (nonnegative means that the elements of the matrix are nonnegative):

It is easy to see by inspection that , , and are totally nonnegative, so is totally nonnegative by Theorem 1. With , we have

which is a product of totally nonnegative matrices and hence is totally nonnegative by Theorem 1. This example clearly generalizes to show that an nonnegative bidiagonal matrix is totally nonnegative.

Recall that the inverse of a nonsingular is given by , where

and denotes the submatrix of obtained by deleting row and column . If is nonsingular and totally nonnegative then it follows that has a checkerboard (alternating) sign pattern. Indeed, we can write , where and has nonnegative elements, and in fact it can be shown that is totally nonnegative using Theorem 1, Theorem 6, and (3). For example, here is the inverse of the Pascal matrix:

>> inv(sym(pascal(5))) ans = [ 5, -10, 10, -5, 1] [-10, 30, -35, 19, -4] [ 10, -35, 46, -27, 6] [ -5, 19, -27, 17, -4] [ 1, -4, 6, -4, 1]

A totally nonnegative matrix has nonnegative trace and determinant, so the sum and product of its eigenvalues are both nonnegative. In fact, all the eigenvalues are real and nonnegative. Since a Jordan block corresponding to a nonnegative eigenvalue is totally nonnegative any Jordan form with nonnegative eigenvalues is possible. More can be said of is *irreducible*. Recall that a matrix is irreducible if there does not exist a permutation matrix such that

where and are square, nonempty submatrices.

Theorem 4.If is totally nonnegative then its eigenvalues are all real and nonnegative. If is also irreducible then the positive eigenvalues are distinct.

If is nonsingular and totally nonnegative and irreducible then by the theorem we can write the eigenvalues as . It is known that the eigenvector associated with has sign changes, that is, and ( have opposite signs for values of (any zero elements are deleted before counting sign changes). Note that for , we already know from Perron–Frobenius theory that there is a positive eigenvector . This result is illustrated by the Pascal matrix above:

>> A = pascal(5); [V,d] = eig(A,'vector'); [~,k] = sort(d,'descend'); >> evals = d', evecs = V(:,k) evals = 1.0835e-02 1.8124e-01 1.0000e+00 5.5175e+00 9.2290e+01 evecs = 1.7491e-02 2.4293e-01 -7.6605e-01 -5.7063e-01 1.6803e-01 7.4918e-02 4.8079e-01 -3.8302e-01 5.5872e-01 -5.5168e-01 2.0547e-01 6.1098e-01 1.6415e-01 2.5292e-01 7.0255e-01 4.5154e-01 4.1303e-01 4.3774e-01 -5.1785e-01 -4.0710e-01 8.6486e-01 -4.0736e-01 -2.1887e-01 1.7342e-01 9.0025e-02

Note that the number of sign changes (but not the number of negative elements) increases by as we go from one column to the next

The class of nonsingular totally nonnegative irreducible matrices is known as the *oscillatory matrices*, because such matrices arise in the analysis of small oscillations of elastic systems. An equivalent definition (in fact, the usual definition) is that an oscillatory matrix is a totally nonnegative matrix for which is totally positive for some positive integer .

The next result shows that a totally nonnegative matrix has an LU factorization with special properties. We will need the following special case of Fischer’s inequality (Theorem 3):

Theorem 5.If is nonsingular and totally nonnegative then it has an LU factorization with and totally nonnegative and the growth factor .

Proof.Since is nonsingular and every minor is nonnegative, (4) shows that for , which guarantees the existence of an LU factorization. That the elements of and are nonnegative follows from explicit determinantal formulas for the elements of and . The total nonnegativity of and is proved by Cryer (1976). Gaussian elimination starts with and computes , since . Thus , . For , ; for , . Thus for all and hence . But , so .

Theorem 5 implies that it is safe to compute the LU factorization without pivoting of a nonsingular totally nonnegativity matrix: the factorization does not break down and it is numerically stable. In fact, the computed LU factors have a strong componentwise form of stability. As shown by De Boor and Pinkus (1977), for small enough unit roundoff the computed factors and will have nonnegative elements and so from the standard backward error result for LU factorization,

we have

which gives and hence

which is about as strong a backward error result as we could hope for. The significance of this result is reduced, however, by the fact that for some important classes of totally nonnegative matrices, including Vandermonde matrices and Cauchy matrices, structure-exploiting linear system solvers exist that are substantially faster, and potentially more accurate, than LU factorization.

We showed above that any nonnegative bidiagonal matrix is totally nonnegative. The next result shows that any nonsingular totally nonnegative matrix has an LU factorization in which and can be factorized into a product of nonnegative bidiagonal matrices.

Theorem 6.(Gasca and Peña, 1996) A nonsingular matrix is totally nonnegative if and only if it it can be factorized as

where is a diagonal matrix with positive diagonal entries and and are unit lower and unit upper bidiagonal matrices, respectively, with the first entries along the subdiagonal of and zero and the rest nonnegative.

An analogue of Theorem 6 holds for totally positive matrices, the only difference being that the last subdiagonal entries of and are positive.

The factorization (5) can be computed by Neville elimination, which is a version of Gaussian elimination in which the eliminations are between adjacent rows, working from the bottom of each column upwards.

This factorization into bidiagonal factors can be used to obtain simple proofs of various properties of totally nonnegative matrices and totally positive matrices (Fallat, 2001). It also provides an efficient way to generates such matrices. If all the parameters in and the and are set to then the Pascal matrix is generated.

An matrix has principal minors (ones based on submatrices centred on the diagonal) and minors in total. However, it is not necessary to check all these minors to test for total positivity.

Theorem 7.(Gasca and Peña, 1996)The matrix is totally positive if and only if for all index vectors and such that one of and is and the entries of the other are consecutive integers.

Theorem 7 shows that only minors need to be tested. Gasca and Peña have also show that total nonnegativity can be tested by checking about minors. A more efficient way to test for total nonnegativity is to compute the factorization in Theorem 6 and check the signs of the entries.

The results we have described show that totally nonnegative and totally positive matrices are analogous in many ways to symmetric positive (semi)definite matrices. The analogies go further because totally nonnegative and totally positive matrices also satisfy eigenvalue interlacing inequalities (albeit weaker than for symmetric matrices) and the eigenvalues of an oscillatory matrix majorize the diagonal elements. See Fallat and Johnson (2011) or Fallat (2014) for details.

This is a minimal set of references, which contain further useful references within.

- Richard A. Brualdi and Steve Kirkland, Totally Nonnegative (0,1)-Matrices, Linear Algebra Appl. 432, 1650–1662, 2010.
- Colin W. Cryer, Some Properties of Totally Positive Matrices, Linear Algebra Appl. 15, 1–25, 1976.
- Carl de Boor and Allan Pinkus, Backward Error Analysis for Totally Positive Linear Systems, 27, 485–490, 1977.
- Mariano Gasca and Juan M. Peña, On Factorizations of Totally Positive Matrices, in Mariano Gasca and Charles Micchelli, eds, Total Positivity and Its Applications, 109–130, Springer, 1996.
- Shaun M. Fallat, Bidiagonal Factorizations of Totally Nonnegative Matrices, Amer. Math. Monthly 108 (6), 697–712, 2001.
- Shaun M. Fallat, Totally Positive and Totally Nonnegative Matrices, in Handbook of Linear Algebra, Leslie Hogben, ed, 29.1–29.17, Chapman and Hall/CRC, 2014.
- Shaun M. Fallat and Charles R. Johnson, Totally Nonnegative Matrices, Princeton University Press, Princeton, NJ, USA, 2011.

- What Is a Vandermonde Matrix? (2021)
- What Is an LU Factorization? (2021)
- What Is the Adjugate of a Matrix? (2020)
- What Is the Growth Factor for Gaussian Elimination? (2020)
- What Is the Hilbert Matrix? (2020)
- WHat Is the Kac–Murdock–Szegö Matrix? (2021)
- What Is the Perron–Frobenius Theorem? (2021)

This article is part of the “What Is” series, available from https://nhigham.com/category/what-is and in PDF form from the GitHub repository https://github.com/higham/what-is.

Perron (1907) proved results about the eigensystem of a positive matrix and Frobenius (1912) extended them to nonnegative matrices.

The following three results of increasing specificity summarize the key spectral properties of nonnegative matrices proved by Perron and Frobenius. Recall that a *simple eigenvalue* of an matrix is one with algebraic multiplicity , that is, it occurs only once in the set of eigenvalues. We denote by the *spectral radius* of , the largest absolute value of any eigenvalue of .

Theorem 1.(Perron–Frobenius) If is nonnegative then

- is an eigenvalue of ,
- there is a nonnegative eigenvector such that .

A matrix is *reducible* if there is a permutation matrix such that

where and are square, nonempty submatrices; it is *irreducible* if it is not reducible. Examples of reducible matrices are triangular matrices and matrices with a zero row or column. A positive matrix is trivially irreducible.

Theorem 2.(Perron–Frobenius) If is nonnegative and irreducible then

- is an eigenvalue of ,
- ,
- there is a positive eigenvector such that ,
- is a simple eigenvalue.

Theorem 3.(Perron) If is positive then Theorem 2 holds and, in addition, for any eigenvalue with .

For nonnegative, irreducible , the eigenvalue is called the *Perron root* of and the corresponding positive eigenvector , normalized so that , is called the *Perron vector*.

It is a good exercise to apply the theorems to all binary matrices. Here are some interesting cases.

- : Theorem 1 says that is an eigenvalue and and that it has a nonnegative eigenvector. Indeed is an eigenvector. Note that is reducible and is a repeated eigenvalue.
- : is irreducible and Theorem 2 says that is a simple eigenvalue with positive eigenvector. Indeed the eigenvalues are and is the Perron vector for the Perron root . This matrix has two eigenvalues of maximal modulus.
- : Theorem 3 says that is an eigenvalue with positive eigenvector and that the other eigenvalue has modulus less than . Indeed the eigenvalues are the Perron root , with Perron vector , and .

For another example, consider the irreducible matrix

Note that is a companion matrix and a permutation matrix. Theorem 2 correctly tells us that is an eigenvalue of , and that it has a corresponding positive eigenvector, the Perron vector . Two of the eigenvalues are complex, however, and all three eigenvalues have modulus 1, as they must because is orthogonal.

A *stochastic matrix* is a nonnegative matrix whose row sums are all equal to . A stochastic matrix satisfies , where , which means that has an eigenvalue , and so . Since for any norm, by taking the -norm we conclude that . For a stochastic matrix, Theorem 1 does not give any further information. If is irreducible then Theorem 2 tells us that is a simple eigenvalue, and if is positive Theorem 3 tells us that every other eigenvalue has modulus less than .

The next result is easily proved using Theorem 3 together with the Jordan canonical form. It shows that the powers of a positive matrix behave like multiples of a rank-1 matrix.

Theorem 4. If is positive, is the Perron vector of , and is the Perron vector of then

Note that in the theorem is a left eigenvector of corresponding to , that is, (since ).

If is stochastic and positive then Theorem 4 is applicable and . If also has unit column sums, so that it is *doubly stochastic*, then and Theorem 4 says that . We illustrate this result in MATLAB using a scaled magic square matrix.

>> n = 4; M = magic(n), A = M/sum(M(1,:)) % Doubly stochastic matrix. A = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 A = 4.7059e-01 5.8824e-02 8.8235e-02 3.8235e-01 1.4706e-01 3.2353e-01 2.9412e-01 2.3529e-01 2.6471e-01 2.0588e-01 1.7647e-01 3.5294e-01 1.1765e-01 4.1176e-01 4.4118e-01 2.9412e-02 >> for k = 8:8:32, fprintf('%11.2e',norm(A^k-ones(n)/n,1)), end, disp(' ') 3.21e-05 7.37e-10 1.71e-14 8.05e-16

This is a minimal set of references, which contain further useful references within.

- Roger A. Horn and Charles R. Johnson, Matrix Analysis, second edition, Cambridge University Press, 2013. Chapter 8. My review of the second edition.
- Carl D. Meyer, Matrix Analysis and Applied Linear Algebra, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2000. Chapter 8.
- Helene Shapiro, Linear Algebra and Matrices. Topics for a Second Course, American Mathematical Society, Providence, RI, USA, 2015. Chapter 17.

It was considered by Kac, Murdock, and Szegö (1953), who investigated its spectral properties. It arises in the autoregressive AR(1) model in statistics and signal processing.

The matrix is singular for , as is the rank- matrix , and it is also rank- for , as in this case every column is a multiple of the vector with alternating elements . The determinant . For , is nonsingular and the inverse is the tridiagonal (but not Toeplitz) matrix

For , is positive definite, since every leading principal submatrix has positive determinant, as can also be seen by noting that the inverse is diagonally dominant with positive diagonal, so that is positive definite and hence is positive definite.

For , is positive semidefinite, so it is a correlation matrix for in this range.

For , is totally nonnegative, that is. every submatrix has nonnegative determinant. For , we know that is nonsingular, and it is clearly irreducible, and together with the total nonnegativity these properties imply that the eigenvalues are distinct and positive (this can also be deduced from the fact that the inverse is tridiagonal with nonzero subdiagonal and superdiagonal entries).

It is straightforward to verify that has a factorization with the inverse of a unit lower bidiagonal matrix:

This factorization can be used to prove all the properties stated above.

From (1) and (2) we can derive the formulas

Hence we have an explicit formula for the condition number for .

We can allow to be complex, in which case the definition (1) is modified to conjugate the elements below the diagonal. The factorization continues to hold with in replaced by .

The Kac–Murdock–Szegö matrix (for real or complex ) can be generated in MATLAB as `gallery('kms',n,rho)`

.

This is a minimal set of references, which contain further useful references within.

- George Fikioris, Spectral Properties of Kac–Murdock-Szegö Matrices with a Complex Parameter, Linear Algebra Appl 553, 182–210, 2018.
- M. Kac, W. L. Murdock, and G. Szegö, On the Eigen-values of Certain Hermitian Forms, Journal of Rational Mechanics and Analysis 2, 767–800, 1953.

- What Is a Condition Number? (2020)
- What Is a Correlation Matrix? (2020)

Ian Gladwell passed away on May 23, 2021 at the age of 76. He was born in Bolton, Lancashire in 1944. He did his secondary education at Thornleigh College, Bolton and was an undergraduate at Hertford College, University of Oxford, from where he graduated with a B.A. Hons. in Mathematics in 1966. He did his postgraduate studies at the University of Manchester, gaining an MSc in Numerical Analysis and Computing in 1967 and a PhD in Numerical Analysis in 1970. He was the first PhD student of Christopher T. H. Baker (1939–2017).

Ian was appointed Lecturer in the Department of Mathematics at the University of Manchester in 1969 and progressed to Senior Lecturer in 1980. He was a member of the Numerical Analysis Group (along with Christopher Baker, Len Freeman, George Hall, Will McLewin, Jack Williams (1943–2015), and Joan Walsh (1932–2017)) who, together with colleagues at UMIST, made Manchester a major centre of numerical analysis activity from the 1970s onwards.

Ian’s research focused on ordinary differential equation (ODE) initial value problems and boundary value problems, mathematical software, and parallel computing, and he had a wide knowledge of numerical analysis and scientific computing. He was perhaps best known for his pioneering work on mathematical software for the numerical solution of ODEs, much of which was published in the NAG Library and in the journal *ACM Transactions on Mathematical Software*. A particular topic of interest for Ian was algorithms and software for the numerical solution of almost block diagonal linear systems, which arise in discretizations of boundary value problems for ODEs and partial differential equations.

More details on Ian’s publications can be found at his MathSciNet author profile (subscription required). It lists 55 publications with 19 co-authors, among which Richard Brankin, Larry Shampine, Ruth Thomas, and Marcin Paprzycki are his most frequent co-authors.

In his time at Manchester he collaborated with a variety of colleagues both inside and outside the department, and he was always ready to offer advice to students and colleagues across the campus on numerical computing (as evidenced by the common sight of people waiting outside his office door to be seen).

Ian was instrumental in setting up the Manchester Numerical Analysis Reports, a long-running technical report series to which he contributed many items.

Ian had a five-month visit to the Department of Computer Science at the University of Toronto in 1975. Links between the Manchester and Toronto departments were strong, and over the years numerical analysts made several visits in both directions.

In the mid 1980s, Ian was one of the first people in the UK to have an email address: igladwel@uk.ac.ucl.cs. His email account was on a computer at University College London (UCL), because UCL hosted a gateway between JANET, the UK computer network, and ARPANET in the USA. Ian kindly allowed Nick Higham and Len Freeman use of the account to communicate with colleagues in the US.

Ian had long-standing collaborations with the Numerical Algorithms Group (NAG) Ltd., Oxford. He contributed many codes and associated documentation to the NAG Library, principally in ordinary differential equations. In a 1979 paper in ACM Trans. Math. Software he wrote

“When the NAG library structure was designed in the late 1960s, it was decided to devote a chapter, named DO2, to the numerical solution of systems of ordinary differential equations and that this chapter would be contributed by members of the Department of Mathematics, University of Manchester, and in particular by J. E. Walsh, G. Hall, and the author.”

Ian was a long-term member of NAG and of the NAG Technical Policy Committee, and during 1986 he held a Royal Society/Science and Engineering Research Council Industrial Fellowship at NAG.

Nick Higham was taught by Ian in an upper level undergraduate course “Numerical Linear Algebra” that Ian was giving for the first time, in 1981. As an MSc student and PhD student he benefited greatly from Ian’s advice about how to think about and do research.

Ian moved to the Department of Mathematics at Southern Methodist University (SMU), Dallas, as a Visiting Associate Professor in 1987, which became a permanent position in 1988. He had collaborated during the 1980s with Larry Shampine, who was working at Sandia National Laboratories until he moved to the SMU Mathematics Department in 1986.

Ian served as chair of the department 1988–1994 and again in 1998. He was also Director of Graduate Studies from 2005–2008. Ian excelled in these roles as mentor, which is recognized by a PhD fellowship in his honor. Jim Nagy was extremely fortunate to have Ian as his first department chair in 1992; Ian mentored him during the challenging tenure-track years, advising on research, teaching and more, including extensive editing of his first successful grant proposals.

Ian wrote the book *Solving ODEs with MATLAB* (2003) with Larry Shampine and Skip Thompson, which was described as “an excellent treatment of the fundamentals for solving ODEs using MATLAB” in Mathematical Reviews. It is Ian’s most highly cited work, with around 900 citations on Google Scholar at the time of writing.

Ian served as editor for ten journals, including as Associate Editor (2002–2005) and Editor-in-Chief (2005–2008) of *ACM Transactions on Mathematical Software*, as Associate Editor of the *IMA Journal on Numerical Analysis* (1988–2007), and as Associate Editor of *Scalable Computing: Practice and Experience* (2005–2010). A special issue of the latter journal in 2009 was dedicated to him on the occasion of his retirement from SMU

Ian was a long-term member of the Institute of Mathematics and Its Applications, of which he was a Fellow, and the Society for Industrial and Applied Mathematics.

According to the Mathematics Genealogy Project, Ian had 23 PhD students, equally split between Manchester and SMU, with one jointly supervised at the University of Bari.

]]>