Polar code[1] 


In its basic version, a binary linear polar code encodes \(K\) message bits into \(N=2^n\) bits. The linear transformation that defines the code is given by the matrix \(G^{(n)}=B_N G^{\otimes n}\), where \(B_N\) is a certain \(N\times N\) permutation matrix, and \(G^{\otimes n}\) is the \(n\)th Kronecker power of the \(2\times 2\) kernel matrix \(G=\left[\begin{smallmatrix}1 & 0\\ 1 & 1 \end{smallmatrix}\right]\). To encode \(K\) message bits, one forms an \(N\)-vector \(u\) in which \(K\) coordinates represent the message bits. The remaining \(N-K\) coordinates are set to some fixed values and are said to be frozen. The codeword \(x \in \{0,1\}^N\) is obtained as \(x=u G^{\otimes n}\).

The choice of the frozen coordinates depends on the communication channel, and they correspond to the least reliable bits on the output of the channel under a particular decoding procedure called successive cancellation decoding. If the communication channel is input-symmetric, the values of the frozen bits can be set to zero.

There are multiple variants of the above basic construction, in particular relying on other kernel matrices [2]. The codes can be defined for nonbinary alphabets, and they can be adjusted to support tasks such as lossless and lossy compression, successive refinement, communication over the mulitple access channel, communication over the wiretap channel, and many others.


Protects against various types of noise in the communication channel, for instance, errors, erasures, or other types of noise. Distance plays no role in the analysis of its properties, and is much lower than the largest possible value given \(K,N\). Polar codes often need to be tailored for a given channel, but universal constructions also exist [3].


Supports reliable transmission at rates \(K/N\) approaching the Shannon capacity of the channel under the successive cancellation decoder [1,4]; see also Refs. [5,6].


Successive cancellation (SC) decoder [1].Successive cancellation list (SCL) decoder [7] and a modification utilizing sequence repetition (SR-List) [8].Soft cancellation (SCAN) decoder [9,10].Belief propagation (BP) decoder [11].Noisy quantum gate-vased decoder [12].


Code control channels for the 5G NR (New Radio) interfaces [13].


For more details, see Ref. [14].See Kaiserslautern database [15] and the pretty-good-codes database [16] for explicit representatives and benchmarking.Codes have been benchmarked using AFF3CT toolbox [17].Polar codes are also useful for source coding [18].



  • Reed-Muller (RM) code — RM codes rely on the same generator matrix, but place message bits in different coordinates. There are families interpolating between the two codes [19].
  • Polar c-q code — Quantum-classical polar codes generalize polar codes for transmission through channels with quantum output.
  • Cyclic redundancy check (CRC) code — CRC codes concataned with polar codes yield improved performance of the SCL polar-code decoder [7,20].
  • Quantum polar code — Without entanglement assistance, quantum polar codes are just CSS codes constructed out of polar codes.


E. Arikan, “Channel Polarization: A Method for Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels”, IEEE Transactions on Information Theory 55, 3051 (2009) DOI
S. B. Korada, E. Sasoglu, and R. Urbanke, “Polar Codes: Characterization of Exponent, Bounds, and Constructions”, IEEE Transactions on Information Theory 56, 6253 (2010) DOI
S. H. Hassani and R. Urbanke, “Universal polar codes”, 2014 IEEE International Symposium on Information Theory (2014) DOI
N. Hussami, S. B. Korada, and R. Urbanke, “Performance of polar codes for channel and source coding”, 2009 IEEE International Symposium on Information Theory (2009) DOI
M. Mondelli, S. H. Hassani, and R. L. Urbanke, “Unified Scaling of Polar Codes: Error Exponent, Scaling Exponent, Moderate Deviations, and Error Floors”, IEEE Transactions on Information Theory 62, 6698 (2016) DOI
S. B. Korada et al., “An empirical scaling law for polar codes”, 2010 IEEE International Symposium on Information Theory (2010) DOI
I. Tal and A. Vardy, “List Decoding of Polar Codes”, IEEE Transactions on Information Theory 61, 2213 (2015) DOI
Y. Ren et al., “A Sequence Repetition Node-Based Successive Cancellation List Decoder for 5G Polar Codes: Algorithm and Implementation”, IEEE Transactions on Signal Processing 70, 5592 (2022) arXiv:2205.08857 DOI
U. U. Fayyaz and J. R. Barry, “Low-Complexity Soft-Output Decoding of Polar Codes”, IEEE Journal on Selected Areas in Communications 32, 958 (2014) DOI
U. U. Fayyaz and J. R. Barry, “Polar codes for partial response channels”, 2013 IEEE International Conference on Communications (ICC) (2013) DOI
E. Arkan, “A performance comparison of polar codes and Reed-Muller codes”, IEEE Communications Letters 12, 447 (2008) DOI
S. Kasi et al., “Decoding Polar Codes via Noisy Quantum Gates: Quantum Circuits and Insights”, (2022) arXiv:2210.10854
3rd Generation Partnership Project (3GPP), Technical specification group radio access network, 3GPP TS 38.212 V.15.0.0, 2017.
N. Presman, Simon Litsyn, "Polar codes." Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021) DOI
Michael Helmling, Stefan Scholl, Florian Gensheimer, Tobias Dietz, Kira Kraft, Stefan Ruzika, and Norbert Wehn. Database of Channel Codes and ML Simulation Results. URL, 2022.
G. Liva, F. Steiner. “pretty-good-codes.org: Online library of good channel codes”, URL: http://pretty-good-codes.org/
A. Cassagne et al., “AFF3CT: A Fast Forward Error Correction Toolbox!”, SoftwareX 10, 100345 (2019) DOI
S. B. Korada and R. L. Urbanke, “Polar Codes are Optimal for Lossy Source Coding”, IEEE Transactions on Information Theory 56, 1751 (2010) DOI
M. Mondelli, S. H. Hassani, and R. L. Urbanke, “From Polar to Reed-Muller Codes: A Technique to Improve the Finite-Length Performance”, IEEE Transactions on Communications 62, 3084 (2014) DOI
B. Li, H. Shen, and D. Tse, “An Adaptive Successive Cancellation List Decoder for Polar Codes with Cyclic Redundancy Check”, IEEE Communications Letters 16, 2044 (2012) DOI
Page edit log

Your contribution is welcome!

on github.com (edit & pull request)— see instructions

edit on this site

Zoo Code ID: polar

Cite as:
“Polar code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/polar
@incollection{eczoo_polar, title={Polar code}, booktitle={The Error Correction Zoo}, year={2022}, editor={Albert, Victor V. and Faist, Philippe}, url={https://errorcorrectionzoo.org/c/polar} }
Share via:
Twitter | Mastodon |  | E-mail
Permanent link:

Cite as:

“Polar code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/polar

Github: https://github.com/errorcorrectionzoo/eczoo_data/edit/main/codes/classical/bits/polar.yml.