Duplication-Correcting Codes for Data Storage in the DNA of Living Organisms

Siddharth Jain, Farzad Farnoud Hassanzadeh, Moshe Schwartz, Jehoshua Bruck

Research output: Contribution to journalArticlepeer-review

66 Scopus citations


The ability to store data in the DNA of a living organism has applications in a variety of areas including synthetic biology and watermarking of patented genetically modified organisms. Data stored in this medium are subject to errors arising from various mutations, such as point mutations, indels, and tandem duplication, which need to be corrected to maintain data integrity. In this paper, we provide error-correcting codes for errors caused by tandem duplications, which create a copy of a block of the sequence and insert it in a tandem manner, i.e., next to the original. In particular, we present two families of codes for correcting errors due to tandem duplications of a fixed length: the first family can correct any number of errors, while the second corrects a bounded number of errors. We also study codes for correcting tandem duplications of length up to a given constant $k$ , where we are primarily focused on the cases of $k=2,3$. Finally, we provide a full classification of the sets of lengths allowed in tandem duplication that result in a unique root for all sequences.

Original languageEnglish
Article number7888471
Pages (from-to)4996-5010
Number of pages15
JournalIEEE Transactions on Information Theory
Issue number8
StatePublished - 1 Aug 2017


  • DNA
  • Error-correcting codes
  • string-duplication systems
  • tandem-duplication errors

ASJC Scopus subject areas

  • Information Systems
  • Computer Science Applications
  • Library and Information Sciences


Dive into the research topics of 'Duplication-Correcting Codes for Data Storage in the DNA of Living Organisms'. Together they form a unique fingerprint.

Cite this