  We define a simple, explicit map sending a morphism $f:M \rightarrow N$ of
pointwise finite dimensional persistence modules to a matching between the
barcodes of $M$ and $N$. Our main result is that, in a precise sense, the
quality of this matching is tightly controlled by the lengths of the longest
intervals in the barcodes of $\ker f$ and $\mathop{\mathrm{coker}} f$. As an
immediate corollary, we obtain a new proof of the algebraic stability of
persistence, a fundamental result in the theory of persistent homology. In
contrast to previous proofs, ours shows explicitly how a $\delta$-interleaving
morphism between two persistence modules induces a $\delta$-matching between
the barcodes of the two modules. Our main result also specializes to a
structure theorem for submodules and quotients of persistence modules, and
yields a novel "single-morphism" characterization of the interleaving relation
on persistence modules.
