  The problem of computing spectra of operators is arguably one of the most
investigated areas of computational mathematics. However, the problem of
computing spectra of general bounded infinite matrices has only recently been
solved. We establish some of the foundations of computational spectral theory
through the Solvability Complexity Index (SCI) hierarchy, an approach closely
related to Smale's program on the foundations of computational mathematics and
McMullen's results on polynomial root finding with rational maps.
Infinite-dimensional problems yield an intricate infinite classification
theory, determining which spectral problems can be solved and with what types
of algorithms. We provide answers to many longstanding open questions on the
existence of algorithms. For example, we show that spectra can be computed,
with error control, from point sampling operator coefficients for large classes
of partial differential operators on unbounded domains. Further results
include: computing spectra of (possibly unbounded) operators on graphs and
separable Hilbert spaces with error control; determining if the spectrum
intersects a compact set; the computational spectral gap problem and computing
spectral classifications at the bottom of the spectrum; and computing discrete
spectra, multiplicities, eigenspaces and determining if the discrete spectrum
is non-empty. Moreover, the positive results with error control can be used in
computer-assisted proofs. In contrast, the negative results preclude
computer-assisted proofs for classes of operators as a whole. Our proofs are
constructive, yielding a library of new algorithms and techniques that handle
problems that before were out of reach. We demonstrate these algorithms on
challenging problems, giving concrete examples of the failure of traditional
approaches (e.g., "spectral pollution") compared to the introduced techniques.
