Correcting Multiple Substitutions in Nanopore-Sequencing Reads
Anisha Banerjee, Yonatan Yehezkeally, Antonia Wachter-Zeh, Eitan Yaakobi
TL;DR
This work analyzes error correction for nanopore sequencing reads by modeling the output as an $\ell$-read vector with intersymbol interference and substitution noise. Using a clique-cover argument on a graph whose vertices are binary input sequences, the authors prove a lower bound of $t\log_2 n - O(1)$ redundancy required to correct $t$ substitutions when $\ell \ge 2$ and $t \ge 2$, contrasting with the $t=1$ case which admits $\log_2\log_2 n - o(1)$ redundancy. The result implies that, for fixed $t$, the redundancy scales similarly to classical substitution channels, and a simple construction achieves the bound up to a constant. The conclusions guide the design of robust codes for DNA data storage under nanopore-like ISI and noise, and point to future work on nonuniform read-weight models $\mathcal{R}_{\ell}(\boldsymbol{x})_i = \sum_{h=1}^{\ell} w_h x_{i-h+h}$ with $\boldsymbol{w}\neq (1,\dots,1)$.
Abstract
Despite their significant advantages over competing technologies, nanopore sequencers are plagued by high error rates, due to physical characteristics of the nanopore and inherent noise in the biological processes. It is thus paramount not only to formulate efficient error-correcting constructions for these channels, but also to establish bounds on the minimum redundancy required by such coding schemes. In this context, we adopt a simplified model of nanopore sequencing inspired by the work of Mao \emph{et al.}, accounting for the effects of intersymbol interference and measurement noise. For an input sequence of length $n$, the vector that is produced, designated as the \emph{read vector}, may additionally suffer at most \(t\) substitution errors. We employ the well-known graph-theoretic clique-cover technique to establish that at least \(t\log n -O(1)\) bits of redundancy are required to correct multiple (\(t \geq 2\)) substitutions. While this is surprising in comparison to the case of a single substitution, that necessitates at most \(\log \log n - O(1)\) bits of redundancy, a suitable error-correcting code that is optimal up to a constant follows immediately from the properties of read vectors.
