Finding the Cyclic Index of an Irreducible, Nonnegative Matrix

The cyclic index $\delta $ of an irreducible nonnegative square matrix is the number of eigenvalues of maximum modulus of that matrix. If $\delta = 1$, the matrix is said to be primitive. The notions of primitivity and cyclic index play an important role in the theory of nonnegative matrices. In the context of discrete Markov chains, the words “period” and “aperiodic” are sometimes used in place of “cyclic index” and “primitive”, respectively. It is known how to test an irreducible nonnegative square matrix for primitivity, but there is no known practical method for finding the cyclic index $\delta $ in the general case. This paper presents a time-optimal algorithm for finding $\delta $.