List-decoding algorithm 2026-11-05
A list-decoding algorithm takes a received word and a radius , and outputs every codeword of a specified block code with Hamming distance . Correctness requires both completeness and exclusion of more distant words. The running time must also accommodate the output size.
A direct algorithm enumerates all codewords, computes each Hamming distance in symbol comparisons, and retains the qualifying words. For a binary code with codewords, this costs , even if the final list is short. Efficient list decoding exploits algebraic or combinatorial structure instead. For Reed-Solomon codes, polynomial interpolation followed by factorization supplies candidates beyond the unique decoding radius; the candidates are finally checked against the received word.[ref]
Unique decoding 2026-11-05
Unique decoding recovers a single codeword from a corrupted received word, with a guarantee that the transmitted codeword is the only candidate within the allowed error radius. If a block code has minimum distance , then every pattern of at most
symbol errors can be corrected in principle. Indeed, if two codewords were both within Hamming distance of , the triangle inequality would put them at distance at most , a contradiction.[ref]
The repetition code has , so one error is correctable: identifies . Two errors can produce , which lies closer to ; no decoder can guarantee success for all two-error patterns. The distance bound proves uniqueness, but does not itself give a fast decoding algorithm.