consequently, failed decoding of this bit happens with probability $\delta_1 = \delta^2 < \delta$. As a result, input bit $u_0$ is transmitted over a degraded synthetic BEC with erasure probability $\delta_0 > \delta$, while $u_1$ is transmitted over an enhanced synthetic BEC with erasure probability $\delta_1 < \delta$.

Code design
-----------

![Virtual bit-channels capacities over a BEC $1/2$.[]{data-label="fig:BEC_pol"}](figures/BEC_pol.pdf){width="45.00000%"}

Polar codes are based on the concatenation of several basic polarization kernels, creating a cascade reaction that speeds up the synthetic channels polarization while limiting encoding and decoding complexity. This concatenation generates a channel transformation matrix of the form $\mathbf{G_N} = \mathbf{G_2}^{\otimes n}$, defined by the $n$-fold Kronecker product of $\mathbf{G_2}$, and that can be recursively calculated as $\mathbf{G_N} = \left[\begin{smallmatrix} \mathbf{G_{N/2}}&0\\\mathbf{G_{N/2}}&\mathbf{G_{N/2}} \end{smallmatrix}\right]$. While for $n \rightarrow \infty$ this construction creates channels that are either perfectly noiseless or completely noisy, for smaller values of $n$ the synthetic channels polarization may be incomplete, generating intermediary channels that are only partially noisy. Figure \[fig:BEC\_pol\] shows the bit-channels polarization enabled by the concatenation of $n=10$ basic polarization kernels for a BEC with erasure probability $\delta = 1/2$.

By construction, polar codes only allow for code lengths that are powers of two, in the form $N=2^n$; 