Several recent works have considered the \emph{ trace reconstruction problem}, in which an unknown source string $x\in\{ 0,1\}^n$ is transmitted through a probabilistic channel which may randomly delete coordinates or insert random bits, resulting in a \emph{ trace} of $x$. The goal is to reconstruct the original string~$x$ from independent traces of $x$. While the best algorithms known for worst-case strings use $\exp(O(n^{ 1/3}))$ traces \cite{ DOS17,NazarovPeres17}, highly efficient algorithms are known \cite{ PZ17,HPP18} for the \emph{ average-case} version, in which $x$ is uniformly random. We consider a generalization of this average-case trace reconstruction problem, which we call \emph{ average-case population recovery in the presence of insertions and deletions}. In this problem, there is an unknown distribution $\cal{ D}$ over $s$ unknown source strings $x^1,\dots,x^s \in \{ 0,1\}^n$, and each sample is independently generated by drawing some $x^i$ from $\cal{ D}$ and returning an independent trace of $x^i$. Building on \cite{ PZ17} and \cite{ HPP18}, we give an efficient algorithm for this problem. For any support size $s \leq \smash{ \exp(\Theta(n^{ 1/3}))}$, for a $1-o(1)$ fraction of all $s$-element support sets $\{ x^1,\dots,x^s\} \subset \{ 0,1\}^n$, for every distribution $\cal{ D}$ supported on $\{ x^1,\dots,x^s\}$, our algorithm efficiently recovers ${ \cal D}$ up to total variation distance $\epsilon$ with high probability, given access to independent traces of independent draws from $\cal{ D}$. The algorithm runs in time poly$(n,s,1/\epsilon)$ and its sample complexity is poly$(s,1/\epsilon,\exp(\log^{ 1/3}n)).$ This polynomial dependence on the support size $s$ is in sharp contrast with the \emph{ worst-case} version (when $x^1,\dots,x^s$ may be any strings in $\{ 0,1\}^n$), in which the sample complexity of the most efficient known algorithm \cite{ BCFSS19} is doubly exponential in $s$.
Categories: cs.DS cs.IT cs.LG math.IT