Coding theory | Error detection and correction | Computational complexity theory

List decoding

In coding theory, list decoding is an alternative to unique decoding of error-correcting codes for large error rates. The notion was proposed by Elias in the 1950s. The main idea behind list decoding is that the decoding algorithm instead of outputting a single possible message outputs a list of possibilities one of which is correct. This allows for handling a greater number of errors than that allowed by unique decoding. The unique decoding model in coding theory, which is constrained to output a single valid codeword from the received word could not tolerate a greater fraction of errors. This resulted in a gap between the error-correction performance for stochastic noise models (proposed by Shannon) and the adversarial noise model (considered by Richard Hamming). Since the mid 90s, significant algorithmic progress by the coding theory community has bridged this gap. Much of this progress is based on a relaxed error-correction model called list decoding, wherein the decoder outputs a list of codewords for worst-case pathological error patterns where the actual transmitted codeword is included in the output list. In case of typical error patterns though, the decoder outputs a unique single codeword, given a received word, which is almost always the case (However, this is not known to be true for all codes). The improvement here is significant in that the error-correction performance doubles. This is because now the decoder is not confined by the half-the-minimum distance barrier. This model is very appealing because having a list of codewords is certainly better than just giving up. The notion of list-decoding has many interesting applications in complexity theory. The way the channel noise is modeled plays a crucial role in that it governs the rate at which reliable communication is possible. There are two main schools of thought in modeling the channel behavior: * Probabilistic noise model studied by Shannon in which the channel noise is modeled precisely in the sense that the probabilistic behavior of the channel is well known and the probability of occurrence of too many or too few errors is low * Worst-case or adversarial noise model considered by Hamming in which the channel acts as an adversary that arbitrarily corrupts the codeword subject to a bound on the total number of errors. The highlight of list-decoding is that even under adversarial noise conditions, it is possible to achieve the information-theoretic optimal trade-off between rate and fraction of errors that can be corrected. Hence, in a sense this is like improving the error-correction performance to that possible in case of a weaker, stochastic noise model. (Wikipedia).

Video thumbnail

List-Decoding Multiplicity Codes - Swastik Kopparty

Swastik Kopparty Rutgers University April 10, 2012 We study the list-decodability of multiplicity codes. These codes, which are based on evaluations of high-degree polynomials and their derivatives, have rate approaching 1 while simultaneously allowing for sublinear-time error-correction.

From playlist Mathematics

Video thumbnail

C Programming: Sorting and searching arrays of structs

In this session we learn how to sort an array of structs, then search it using the built-in binary search (bsearch) function.

From playlist C Programming

Video thumbnail

Dynamic Random Access Memory (DRAM). Part 3: Binary Decoders

This is the third in a series of computer science videos is about the fundamental principles of Dynamic Random Access Memory, DRAM, and the essential concepts of DRAM operation. This video covers the role of the row address decoder and the workings of generic binary decoders. It also expl

From playlist Random Access Memory

Video thumbnail

(IC 5.7) Decoder for arithmetic coding (infinite-precision)

Pseudocode for the arithmetic coding algorithm, assuming addition and multiplication can be done exactly (i.e. with infinite precision). Later we modify this to work with finite precision. A playlist of these videos is available at: http://www.youtube.com/playlist?list=PLE125425EC837021F

From playlist Information theory and Coding

Video thumbnail

Fetch Decode Execute Cycle and the Accumulator

This (silent) video illustrates the fetch decode execute cycle. A simplified view of the CPU focusses on the role of the accumulator register when a program runs. For simplicity, the machine code commands being executed are represented by assembly language code. This assembly language co

From playlist Computer Hardware and Architecture

Video thumbnail

Java: working with HashMaps

Learn how to read key-value pairs from a text file into a HashMap.

From playlist Intermediate Java

Video thumbnail

(IC 2.4) Decoding - prefix versus non-prefix

Examples to illustrate the ease of decoding a prefix code versus a non-prefix code. A playlist of these videos is available at: http://www.youtube.com/playlist?list=PLE125425EC837021F

From playlist Information theory and Coding

Video thumbnail

Locally testable and locally correctable codes approaching the GV bound - Shubhangi Saraf

Computer Science/Discrete Mathematics Seminar I Topic: Locally testable and locally correctable codes approaching the Gilbert-Varshamov bound Speaker: Shubhangi Sara Affiliation: Rutgers University Date: November 27, 2017 For more videos, please visit http://video.ias.edu

From playlist Mathematics

Video thumbnail

Fetching Weather Data with Swift

►► Get my Python Programming Bootcamp Series for $9.99 ( Expires April 8th ) : bit.ly/SavePython6 (SEE HOW TO GET THE COURSE FOR $1 BELOW) ►► Highest Rated Python Udemy Course + 23 Hrs + 99 Videos + New Videos Every Week Get the Code Here : bit.ly/WeatherSwift Part #1 of this Series : ht

From playlist iOS Development

Video thumbnail

Algorithmizing the Multiplicity Schwartz-Zippel Lemma - Prahladh Harsha

Computer Science/Discrete Mathematics Seminar I Topic: Algorithmizing the Multiplicity Schwartz-Zippel Lemma Speaker: Prahladh Harsha Affiliation: Tata Institute of Fundamental Research Date: January 31, 2022 The degree mantra states that any non-zero univariate polynomial of degree at

From playlist Mathematics

Video thumbnail

List decodability of randomly punctured codes - Mary Wootters

Mary Wootters University of Michigan March 24, 2014 We consider the problem of the list-decodability of error correcting codes. The well-known Johnson bound implies that any code with good distance has good list-decodability, but we do not know many structural conditions on a code which gu

From playlist Mathematics

Video thumbnail

List decoding with double samplers - Inbal Livni-Navon

Computer Science/Discrete Mathematics Seminar I Topic: List decoding with double samplers Speaker: Inbal Livni-Navon Affiliation: Weizmann Institute Date: December 6, 2021 The ABNNR encoding is a classical encoding scheme that amplifies the distance of an error correcting code. The enco

From playlist Mathematics

Video thumbnail

Thresholds for Random Subspaces, aka, LDPC Codes Achieve List-Decoding Capacity - Mary Wootters

Computer Science/Discrete Mathematics Seminar I Topic: Thresholds for Random Subspaces, aka, LDPC Codes Achieve List-Decoding Capacity Speaker: Mary Wootters Affiliation: Stanford University Date: November 30, 2020 For more video please visit http://video.ias.edu

From playlist Mathematics

Video thumbnail

Deep Learning for Audio and Natural Language Processing

In the third webinar in the Machine Learning webinar series, learn to use machine learning for audio analysis with some real-world applications of neural net models. Also featured is a demonstration of using neural net models for natural language processing.

From playlist Machine Learning Webinar Series

Video thumbnail

How To Build A Image Inpainting and Super Resolution Tool | Session 02 | #keras | #python

Don’t forget to subscribe! Ever thought of creating a tool that can perform Image Inpainting and Super Resolution? This project will teach you how to create an Image Inpainting Tool using Keras. This series will cover all the details (resources, tools, languages, etc) that are necessary

From playlist Image Inpainting & Super Resolution Tool

Video thumbnail

Searching and Sorting Algorithms (part 4 of 4)

Introductory coverage of basic searching and sorting algorithms, as well as a rudimentary overview of Big-O algorithm analysis. Part of a larger series teaching programming at http://codeschool.org

From playlist Searching and Sorting Algorithms

Related pages

Reed–Solomon error correction | Folded Reed–Solomon code | Permanent (mathematics) | Hamming distance | Coding theory | Hard-core predicate | One-way function | Richard Hamming | Computational complexity theory | Claude Shannon | Johnson bound | Extractor (mathematics) | Stochastic | Guruswami–Sudan list decoding algorithm | Pseudorandom generator | Binary symmetric channel | Analysis of algorithms | Cryptography