Matrices, Jordan Normal Forms, and Spectral Radius Theory

René Thiemann 🌐 and Akihisa Yamada 📧 with contributions from Alexander Bentkamp 📧

August 21, 2015

This is a development version of this entry. It might change over time and is not stable. Please refer to release versions for citations.


Matrix interpretations are useful as measure functions in termination proving. In order to use these interpretations also for complexity analysis, the growth rate of matrix powers has to examined. Here, we formalized a central result of spectral radius theory, namely that the growth rate is polynomially bounded if and only if the spectral radius of a matrix is at most one.

To formally prove this result we first studied the growth rates of matrices in Jordan normal form, and prove the result that every complex matrix has a Jordan normal form using a constructive prove via Schur decomposition.

The whole development is based on a new abstract type for matrices, which is also executable by a suitable setup of the code generator. It completely subsumes our former AFP-entry on executable matrices, and its main advantage is its close connection to the HMA-representation which allowed us to easily adapt existing proofs on determinants.

All the results have been applied to improve CeTA, our certifier to validate termination and complexity proof certificates.


BSD License


April 17, 2018
Integrated lemmas from deep-learning AFP-entry of Alexander Bentkamp
January 7, 2016
Added Schur-decomposition, Gram-Schmidt orthogonalization, uniqueness of Jordan normal forms


Session Jordan_Normal_Form