  Quantum systems carry information. Quantum theory supports at least two
distinct kinds of information (classical and quantum), and a variety of
different ways to encode and preserve information in physical systems. A
system's ability to carry information is constrained and defined by the noise
in its dynamics. This paper introduces an operational framework, using
information-preserving structures to classify all the kinds of information that
can be perfectly (i.e., with zero error) preserved by quantum dynamics. We
prove that every perfectly preserved code has the same structure as a matrix
algebra, and that preserved information can always be corrected. We also
classify distinct operational criteria for preservation (e.g., "noiseless",
"unitarily correctible", etc.) and introduce two new and natural criteria for
measurement-stabilized and unconditionally preserved codes. Finally, for
several of these operational critera, we present efficient (polynomial in the
state-space dimension) algorithms to find all of a channel's
information-preserving structures.
