# Polar code (coding theory)

Type of error correcting code / From Wikipedia, the free encyclopedia

In information theory, a **polar code** is a linear block error-correcting code. The code construction is based on a multiple recursive concatenation of a short kernel code which transforms the physical channel into virtual outer channels. When the number of recursions becomes large, the virtual channels tend to either have high reliability or low reliability (in other words, they polarize or become sparse), and the data bits are allocated to the most reliable channels. It is the first code with an explicit construction to provably achieve the channel capacity for symmetric binary-input, discrete, memoryless channels (B-DMC) with polynomial dependence on the gap to capacity.[1] Notably, polar codes have modest encoding and decoding complexity *O*(*n* log *n*), which renders them attractive for many applications. Moreover, the encoding and decoding energy complexity of generalized polar codes can reach the fundamental lower bounds for energy consumption of two dimensional circuitry to within an *O*(*n*^{ε} polylog *n*) factor for any ε > 0.[2]