English

Error Correction for Message Streams

Data Structures and Algorithms 2025-10-29 v3

Abstract

In the setting of error correcting codes, Alice wants to send a message x{0,1}nx \in \{0,1\}^n to Bob via an encoding enc(x)\text{enc}(x) that is resilient to error. In this work, we investigate the scenario where Bob is a low space decoder. More precisely, he receives Alice's encoding enc(x)\text{enc}(x) bit-by-bit and desires to compute some function f(x)f(x) in low space. A generic error-correcting code does not accomplish this because decoding is a very global process and requires at least linear space. Locally decodable codes partially solve this problem as they allow Bob to learn a given bit of xx in low space, but not compute a generic function ff. Our main result is an encoding and decoding procedure where Bob is still able to compute any such function ff in low space when a constant fraction of the stream is corrupted. More precisely, we describe an encoding function enc(x)\text{enc}(x) of length poly(n)\text{poly}(n) so that for any decoder (streaming algorithm) AA that on input xx computes f(x)f(x) in space ss, there is an explicit decoder BB that computes f(x)f(x) in space spolylog(n)s \cdot \text{polylog}(n) as long as there were not more than 14ε\frac14 - \varepsilon fraction of (adversarial) errors in the input stream enc(x)\text{enc}(x).

Keywords

Cite

@article{arxiv.2307.07087,
  title  = {Error Correction for Message Streams},
  author = {Meghal Gupta and Rachel Yun Zhang},
  journal= {arXiv preprint arXiv:2307.07087},
  year   = {2025}
}