  This paper introduces a new solution to DNA storage that integrates all three
steps of retrieval, namely clustering, reconstruction, and error correction.
DNA-correcting codes are presented as a unique solution to the problem of
ensuring that the output of the storage system is unique for any valid set of
input strands. To this end, we introduce a novel distance metric to capture the
unique behavior of the DNA storage system and provide necessary and sufficient
conditions for DNA-correcting codes. The paper also includes several bounds and
constructions of DNA-correcting codes.
