  We present a generalization of Bloch's theorem to finite-range lattice
systems of independent fermions, in which translation symmetry is broken only
by arbitrary boundary conditions, by providing exact, analytic expressions for
all energy eigenvalues and eigenstates. By transforming the single-particle
Hamiltonian into a corner-modified banded block-Toeplitz matrix, a key step is
a bipartition of the lattice, which splits the eigenvalue problem into a system
of bulk and boundary equations. The eigensystem inherits most of its solutions
from an auxiliary, infinite translation-invariant Hamiltonian that allows for
non-unitary representations of translation symmetry. A reformulation of the
boundary equation in terms of a boundary matrix ensures compatibility with the
boundary conditions, and determines the allowed energy eigenstates. We show how
the boundary matrix captures the interplay between bulk and boundary
properties, leading to efficient indicators of bulk-boundary correspondence.
Remarkable consequences of our generalized Bloch theorem are the engineering of
Hamiltonians that host perfectly localized, robust zero-energy edge modes, and
the predicted emergence, e.g. in Kitaev's chain, of localized excitations whose
amplitudes decay exponentially with a power-law prefactor. We further show how
the theorem yields diagonalization algorithms for the class of Hamiltonians
under consideration, and use the proposed bulk-boundary indicator to
characterize the topological response of a multi-band time-reversal invariant
s-wave superconductor under twisted boundary conditions, showing how a
fractional Josephson effect can occur without a fermionic parity switch.
Finally, we establish connections to the transfer matrix method and
demonstrate, using the paradigmatic Kitaev's chain example, that a
non-diagonalizable transfer matrix signals the presence of solutions with a
power-law prefactor.
