Performance of Polar Codes With The Construction Using Density Evolution
Performance of Polar Codes With The Construction Using Density Evolution
Abstract—Polar coding, proposed by Arıkan, makes it possible For any n ∈ N, let N = 2n , and we consider an N × N
to construct capacity-achieving codes for symmetric binary- ⊗n 1 0
input discrete memoryless channels, with low encoding and matrix GN := PN F where F := , where ⊗n is the
1 1
decoding complexity. Complexity of the originally proposed Kronecker power, and where PN is an N × N permutation
code construction method, however, grows exponentially in the
matrix. Let uN 1 = (u1 , u2 , . . . , uN ) denote an N -dimensional
blocklength unless a channel is the binary erasure channel. Re-
cently, the authors have proposed a new capacity-achieving code row vector, and let uji = (ui , ui+1 , . . . , uj ) denote a subvector
construction method with linear complexity in the blocklength for of uN 1 . Given GN , a vector channel WN : {0, 1}
N
→ RN
N N N N N
arbitrary symmetric binary-input memoryless channels. In this is defined as WN (y 1 | u1 ) := W (y1 | u1 GN ), where
letter, we evaluate performance of polar codes designed with the N
W N (y1N | uN 1 ) := i=1 W (yi | ui ) and where the product
new construction method, and compare it with that of the codes
constructed with another heuristic method with linear complexity
uN1 GN is taken in the GF(2) arithmetic. A polar code for
proposed by Arıkan. a symmetric B-MC is a linear code whose generator matrix
is a submatrix of GN . Determining the submatrix amounts
Index Terms—Channel polarization, polar codes, code con-
struction, belief propagation, density evolution. to selection of rows of GN as well as selection of the
permutation matrix PN , which in turn defines subchannels
(i) (i)
WN : {0, 1} → RN × {0, 1}i−1 as WN (y1N , ui−1 1 |
I. I NTRODUCTION −N +1 N N
ui ) := 2 W N (y | u ). We consider successive
P
N
ui+1 1 1
OLAR coding, proposed by Arıkan [1], makes it possi- cancellation (SC) decoding, in which each bit is decoded and
ble to construct capacity-achieving codes for symmetric fixed to be 0 or 1 sequentially, with the maximum likelihood
binary-input discrete memoryless channels (B-DMCs), which (i)
(ML) decoding using WN as follows. If i-th bit is not selected
require only low encoding and decoding complexity. However, as an information bit, the decoding result of the i-th bit is
complexity of the code construction method introduced in [1] always 0. On the other hand, if i-th bit is selected as an
is polynomial in the blocklength only for the binary erasure information bit, the decoding result of the i-th bit is given as
channel (BEC) and is exponential in the blocklength for Ûi (y1N , ûi−1
(i) N i−1
1 ) := argmaxui =0,1 WN (y1 , û1 | ui ), where
other B-DMCs. In [2], Arıkan also suggested a heuristic
û1 denotes the results of SC decoding for ui−1
i−1
1 . If the two
construction method with linear complexity in the blocklength
likelihoods are equal, the decoding result of the i-th bit is 0
for arbitrary symmetric binary-input memoryless channels (B-
or 1 with probability 1/2. Hence, the order of the decoding,
MCs). Although the method is not guaranteed to achieve
or equivalently, the choice of the permutation matrix PN ,
capacity, he noted that the resulting codes have high perfor-
affects the performance of SC decoding. We follow Arıkan [1]
mance in experiments. In [3], the authors have proposed a new
and assume in the following the bit-reversal operator as the
provably capacity-achieving code construction method with
permutation matrix PN .
linear complexity in the blocklength for arbitrary symmetric
Arıkan has proved the following polarization phenomenon
B-MCs. In this letter, we evaluate performance of polar codes
of mutual information. The mutual information between U1N
constructed with the method proposed in [3], and compare
and Y1N which obey a joint probability WN (y1N | uN 1 )2
−N
is
it with that of the codes constructed with Arıkan’s heuristic
split by applying the chain rule as
method.
N
N
II. P OLAR C ODES I(U1N ; Y1N ) = I(Ui ; Y1N | U1i−1 ) = I(Ui ; Y1N U1i−1 ).
Communication over a symmetric B-MC is considered. We i=1 i=1
assume without loss of generality that output of a channel is a (1)
real number since the log-likelihood ratio (LLR) of output of As N becomes large, every term in the rightmost side of (1)
an original channel is a sufficient statistic and can be regarded tends to take a value near one or zero. Since I(U1N ; Y1N ) =
as output [4, page 178]. A channel W : {0, 1} → R is said to N I(X; Y ), where I(X; Y ) denotes the mutual information
be symmetric if W (y | 0) = W (−y | 1). between input and output of the original channel W , the num-
bers of those terms which take values near one and zero are
Manuscript received February 25, 2009. The associate editor coordinating approximately N I(X; Y ) and N (1 − I(X; Y )), respectively.
the review of this letter and approving it for publication was S. Yousefi. The summand I(Ui ; Y1N U1i−1 ) is the mutual information of
The authors are with the Department of Systems Science, Kyoto Univer- (i)
sity, Kyoto, 606-8501, Japan (e-mail: [email protected], [email protected] the subchannel WN . Hence, one can select a fraction ar-
u.ac.jp). (i)
bitrarily close to I(X; Y ) of the subchannels {WN } with
This work was supported by the Grant-in-Aid for Scientific Research on
Priority Areas (No. 18079010), MEXT, Japan. mutual information arbitrarily close to 1 when the blocklength
Digital Object Identifier 10.1109/LCOMM.2009.090428 is sufficiently large. Arıkan has also proved that the speed of
1089-7798/09$25.00
c 2009 IEEE
520 IEEE COMMUNICATIONS LETTERS, VOL. 13, NO. 7, JULY 2009
(i) N/2
000 + (−1)û2i−1 LN/2 (y1 , û2i−2 2i−2
1,e ⊕ û1,o )
001 evaluated at check and variable nodes, respectively, where
ûi1,e and ûi1,o denote subvectors which consist of elements
010
of ûi1 with even and odd indices, respectively, and where ⊕
011 denotes modulo-2 addition. After calculation of LLR, one can
determine whether i-th bit is 0 or 1 by observing the sign of
(i)
100 LN (y1N , ûi−1
1 ).
101
IV. P ERFORMANCE AND C ONSTRUCTION
110
In this section, we briefly review the discussion leading to
111 the code construction method using density evolution, which
was proposed in [3]. We first observe that the block error
Fig. 1. The decoding graph for i-th bit is shown by thick solid lines when probability of SC decoding is upper bounded by the sum, over
i = 4 and n = 3. Known edges are shown by dashed lines. Edges which are information bits, of the error probabilities of the ML decoding
not used for the i-th bit are shown by thin solid lines. A binary expansion of (i)
(i − 1) is 011. Bits 0 and 1 correspond to check nodes and variable nodes, over subchannels {WN }. An event of block error is expressed
respectively. as a union of mutually-exclusive events {Bi } that the first error
occurs at i-th bit, i.e.,
i−1
the polarization is sufficiently fast so that the resulting code Bi := { uN N N
1 , y1 , c1 | û1 = ui−1 N i−1
1 , Ûi (y1 , û1 ) = ui }
asymptotically achieves capacity with SC decoding. From
where cN N
1 ∈ {0, 1} denotes the N independent fair coin flips
the above elegant properties, capacity-achieving codes with
with ci used as the decoding result of the i-th bit when the
efficient decoding algorithm are in principle constructed by
(i) two likelihoods are equal. It holds that
selecting subchannels {WN } with high mutual information.
For practical code construction, it is important to provide a Bi ⊆ { uN N N N i−1
1 , y1 , c1 | Ûi (y1 , u1 ) = ui } =: Ai .
criterion of how to select the subchannels with low complexity.
Since the block error probability
of polar codes with a set of
III. S UCCESSIVE C ANCELLATION D ECODING information
bits A is i∈A P (B i ), it is upper bounded by
i∈A P (Ai ).
In this section, we observe that each step of SC decoding The probability P (Ai ) is regarded as the error probabil-
can be regarded as belief propagation (BP) decoding. When (i)
ity of the ML decoding over the subchannel WN . In [1],
we decode i-th bit, we have already determined j-th bit as 0
Arıkan uses, as an upper bound of P (Ai ), the Bhattacharyya
or 1 for all j < i, so that these nodes and associated edges are (i)
parameter for the subchannel WN , which, however, is still
eliminated from the graph. On the other hand, for all j > i,
difficult to evaluate when the channel W is an arbitrary B-
the j-th bit is regarded undetermined even if the j-th bit is
MC. On the other hand, direct evaluation of P (Ai ) is possible
not an information bit, since one uses the likelihood associated
(i) via density evolution [4, page 217], since each decoding
with WN , instead of the true likelihood, for ML decoding in
graph associated with the SC decoding is a tree. Once having
each step of SC decoding. Degree-3 check nodes connected to (i)
such undetermined nodes do not work in decoding the i-th bit, obtained {P (Ai )}, one can select subchannels {WN } with
and are hence eliminated. Thus, the decoding factor graph for small {P (Ai )} for minimizing the upper bound i∈A P (Ai ).
an information bit is a tree, as shown in Fig. 1. Furthermore, Since the Bhattacharyya parameter coincides with P (Ai ) if
the decoding tree is characterized by the binary expansion and only if the channel is the BEC, the following result is the
bn · · · b1 of (i − 1), such that nodes at depth t of the decoding same as the result for the BEC shown by Arıkan [1], [2].
tree are check nodes and variable nodes if bt = 0 and bt = 1, In the evaluation of {P (Ai )} via density evolution, we can
respectively. In counting the depth we omit nodes in the tree safely assume that the all-zero information is transmitted be-
where no processing is performed in the decoding. On the cause we have assumed that the channel W is symmetric. Let
(i) (i)
tree graph, ML decoding can be implemented as BP decoding aN denote a probability density function of LN (Y1N , 0i−1 1 )
with low complexity. BP decoding calculates LLR defined as when the all-zero information is transmitted. The rule of
(i)
LN (y1N , ûi−1
(i) N i−1 (i)
| 0)/WN (y1N , ûi−1 calculating the densities is as follows:
1 ) := log(WN (y1 , û1 1 |
1)). An LLR for i-th bit is calculated recursively via the update (2i) (i)
a2N = aN aN ,
(i) (2i−1)
a2N
(i) (i)
= aN aN , a1 = aW
(1)
(2)
rules [1],
(2i−1)
where aW is the probability density function of LLR of the
LN (y1N , û2i−2
1 ) original channel W when 0 is transmitted, and where and
= 2 tanh−1 (tanh(LN/2 (y1
(i) N/2
, û2i−2 2i−2 are the convolution operations in a variable node domain and
1,e ⊕ û1,o )/2) (i)
(i)
a check node domain, respectively [4, page 181]. After aN
N
× tanh(LN/2 (yN/2+1 , û2i−2
1,e )/2)) (i)
is computed, P (Ai ) is calculated via integration of aN over
0 (i)
and the interval (−∞, 0 ] as P (Ai ) = −∞ 2−I(x=0) aN (x)dx.
The number of the convolutions for evaluating {P (Ai )} is
(2i) (i)
LN (y1N , û2i−1
1
N
) = LN/2 (yN/2+1 , û2i−2
1,e ) O(N ) [3].
MORI and TANAKA: PERFORMANCE OF POLAR CODES WITH THE CONSTRUCTION USING DENSITY EVOLUTION 521
0
10 equal to, and larger than P (A3 ) when the channel is the BEC,
binary symmetric channel (BSC), and binary additive white
Gaussian noise channel (BAWGNC), respectively, irrespective
of the channel parameters.
10-1 One can therefore expect that construction methods based
on evaluation of {P (Ai )} would yield better performance
PB
upper bound
optimized for the BSC VI. N UMERICAL C ALCULATIONS AND S IMULATIONS
-3
optimized for the BEC
10
0.25 0.3 0.35 0.4 0.45 0.5
In this section, numerical calculation results and simulation
R results are shown. Figures 2 and 3 show the results for the
BSC and for the BAWGNC, respectively. The capacities of
Fig. 2. Polar codes over the BSC whose crossover probability is 0.11. The both channels are 0.5. In the numerical calculation for each
blocklength is 1024. The number of trials is 107 . of these channels, we computed {P (Ai )} and sorted the
10
0
indices of subchannels by the values of P (Ai ). We then
obtained the smallest upper bound i∈A P (Ai ) for each of
the rates R = k/N , k = 1, . . . , N , by defining A to be the
set of indices of subchannels with the k smallest P (Ai )s.
The block error probabilities PB , evaluated via numerical
10-1 simulations, of the codes constructed with our method, and
the upper bounds i∈A P (Ai ) are shown. The block error
PB