You are on page 1of 13

254 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO.

2, FEBRUARY 2016

Polar Subcodes
Peter Trifonov, Member, IEEE, and Vera Miloslavskaya, Member, IEEE

Abstract—An extension of polar codes is proposed, which allows RM codes, and are therefore likely to provide better finite
some of the frozen symbols, called dynamic frozen symbols, to length performance. However, there are still no efficient MAP
be data-dependent. A construction of polar codes with dynamic decoding algorithms for these codes.
frozen symbols, being subcodes of extended BCH codes, is pro-
posed. The proposed codes have higher minimum distance than It was suggested in [17] to construct subcodes of RM codes,
classical polar codes, but still can be efficiently decoded using the which can be efficiently decoded by a recursive list decoding
successive cancellation algorithm and its extensions. The codes algorithm. In this paper we generalize this approach, and pro-
with Arikan, extended BCH and Reed-Solomon kernel are con- pose a code construction “in between” polar codes and EBCH
sidered. The proposed codes are shown to outperform LDPC and codes. The proposed codes can be efficiently decoded using the
turbo codes, as well as polar codes with CRC.
techniques developed in the area of polar coding, but provide
Index Terms—Polar codes, generalized concatenated codes,
BCH codes, Reed-Solomon codes. much higher minimum distance, which can be accurately con-
trolled. The obtained codes outperform state-of-the art LDPC,
I. I NTRODUCTION turbo and polar codes. More specifically, in Section III we intro-
duce an extension of generalized concatenated codes (GCC),
P OLAR codes were recently shown to be able to
achieve the capacity of binary input memoryless output-
symmetric channels [1]. Low-complexity construction, encod-
called interlinked generalized concatenated codes (IGCC).
Recursive application of this construction enables one to repre-
ing and decoding algorithms are available for polar codes. sent a linear block code in a form which, in principle, enables its
However, the performance of polar codes of moderate length decoding by the SC algorithm (Section IV). This form, called
appears to be quite poor. This is both due to suboptimality of the polar codes with dynamic frozen symbols, can be considered
successive cancellation (SC) decoding algorithm and low min- as a generalization of polar codes. We show that EBCH codes
imum distance of polar codes. The first problem can be solved are particularly well suited for such representation, although
by employing list/stack SC decoding techniques [2]–[7], which their SC decoding is still not very efficient. Furthermore, we
far outperform the SC algorithm. Alternatively, one can use the present a special case of IGCC, called polar subcodes, with
belief propagation algorithm [8]. Its performance, however, is good performance under the SC algorithm and its derivatives
still inferior to list/stack SC decoding. (Section V). The proposed codes are subcodes of EBCH codes.
The second problem can be solved by constructing a gen- We consider polar subcodes with Arikan, EBCH and Reed-
eralized concatenated code with inner polar codes [9]–[11], Solomon kernel. Simulation results presented in Section VI
or employing a serial concatenation of an error detecting or show that the proposed codes outperform state-of-the-art polar,
error correcting code and a polar code [2], [8], [12]–[14]. LDPC and turbo codes.
However, in the second case it is not clear how the parameters
of the outer codes affect the minimum distance and finite-length II. BACKGROUND
performance of the concatenated code. A. Generalized Concatenated Codes
It was shown recently that a sequence of linear codes
A generalized concatenated code (GCC) [18] over Fq is
achieves capacity on a memoryless erasure channel under MAP
defined using a family of nested inner (n, ki , di ) codes Ci :
decoding if their blocklengths are strictly increasing, rates con-
C0 ⊃ C1 ⊃ · · · ⊃ Cν−1 , and a family of outer (N , K i , Di )
verge to some r ∈ (0, 1), and the permutation group of each
codes Ci , where the i-th outer code is defined over
code is doubly transitive [15], [16]. This class of codes includes
Fq ki −ki+1 , 0 ≤ i < ν, kν = 0. It will be assumed in this paper
Reed-Muller (RM) and extended primitive narrow-sense BCH
(EBCH) codes. Observe that RM codes can be considered as a that ki = ki+1 + 1, ν = n. Let G be a n × n matrix, such
special case of polar codes. On the other hand, EBCH codes are that its rows i, . . . , n − 1 generate code Ci . GCC encoding
known to have much higher minimum distance than comparable is performed as follows. First, partition a data vector into n
blocks of size K i , 0 ≤ i < n. Second, encode these blocks
Manuscript received April 3, 2015; revised September 5, 2015; accepted with codes Ci to obtain codewords (c̃i,0 , . . . , c̃i,N −1 ). Finally,
October 23, 2015. Date of publication November 26, 2015; date of current
version January 14, 2016. This work was supported in part by the Russian multiply vectors (c̃0, j , . . . , c̃n−1, j ), 0 ≤ j < N , by G to
Foundation for Basic Research under Grant 12-01-00365-a and in part by obtain a GCC codeword (c0,0 , . . . , cn−1,0 , c0,1 , . . . , cn−1,N −1 ).
the Samsung Global Research Outreach grant. This work was presented in Figure 1 illustrates this construction. A GCC generator matrix
part at the 2013 IEEE Information Theory Workshop and in part at the 2014 can be obtained as
International Symposium on Information Theory and Its Applications.
⎛ ⎞
The authors are with the Distributed Computing and Networking G (0) ⊗ G0,−
Department, Saint-Petersburg Polytechnic University, Saint-Petersburg
⎜ G (1) ⊗ G1,− ⎟
194021, Russia (e-mail: petert@dcn.icc.spbstu.ru). ⎜ ⎟
G=⎜ .. ⎟,
Color versions of one or more of the figures in this paper are available online ⎝ . ⎠
at http://ieeexplore.ieee.org.
G (n−1) ⊗ Gn−1,−
Digital Object Identifier 10.1109/JSAC.2015.2504269

0733-8716 © 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 255

The SC decoding algorithm at phase i computes


(i) (i) i n−1
Wn (y0n−1 , u i−1
0 |u i ), u i ∈ Fq (or Wn (u 0 |y0 ), which is
more convenient for implementation), and makes decisions

(i)
arg maxu i ∈Fq Wn (u i0 |y0n−1 ), i ∈ F

ui = (1)
0, otherwise.

Fig. 1. Encoding with a generalized concatenated code. This decision is used at subsequent steps instead of the true
value of u i to determine the values of u i+1 , . . . , u n−1 . It was
shown in [1] that these calculations can be implemented with
complexity O(n log n). For example, in the case of l = 2, q = 2
these probabilities can be computed as

Wn(2i) u 2i n−1
0 |y0


1  n   
2i+1  2 −1 2i+1  n−1
Fig. 2. Multistage decoding. = W n(i) u 2i+1
0,even ⊕ u 
0,odd 0y W (i)
n u 0,odd  y n
2 2 2
u 2i+1 =0
(2)
where G (i) is a generator matrix of Ci , and Gi,− denotes the 
i-th row of G. It ispossible to show that this encoding method Wn(2i+1) u 2i+1
0 |y0n−1
n−1
results in a (N n, i=0 K i , ≥ mini di Di ) linear block code.  n   
2i+1  2 −1  n−1
GCC can be decoded with a multistage decoding = W n(i) u 2i+1
0,even ⊕ u 0,odd  y0 W n(i) u 2i+1
0,odd  y n . (3)
(MSD) algorithm [19]–[21]. For i = 0, 1, . . . , N − 1, this 2 2 2

algorithm takes as input noisy instances yt, j of codeword For q = 2 the Bhattacharyya parameters Z n,i of the bit
(i)
symbols ct, j , 0 ≤ t < n, 0 ≤ j < N , successively computes subchannels Wn (y0n−1 , u i−1
0 |u i ) satisfy [22]
estimates of c̃i, j using a SISO decoder of Ci , and passes these
 
estimates to a decoder of Ci to recover the corresponding j
Z n/l,i ≤ Z n,il+ j ≤ 2l− j Z n/l,i
j
, (4)
codeword. Then it proceeds with decoding of Ci+1 and Ci+1 ,
as shown in Figure 2. The performance of the MSD algorithm where Z 1,0 is the Bhattacharryya parameter of the original
depends strongly on parameters of outer codes. An extensive binary memoryless symmetric channel, and i , 0 ≤ i < l, are
survey of various methods for their selection can be found partial distances of matrix Fl . Similar bounds are provided in
in [21]. [23] for q > 2. For the case of l = 2 (Arikan kernel), one can
obtain more precise estimates as [1], [24]

Z n/2,i 2 − Z n/2,i
2 ≤ Z n,2i ≤ 2Z n/2,i − Z n/2,i
2
(5)
B. Polar Codes
Z n,2i+1 = Z n/2,i
2
. (6)
(n = l m , k) polar code over Fq is a linear block code gen-
erated by k rows of matrix A = Bl,m Fl⊗m , where Bl,m is the Furthermore, for the case of the binary erasure channel, one has

matrix, Fl is a l × l matrix called
digit-reversal permutation Z n,2i = 2Z n/2,i − Z n/2,i
2 .
1 0 Let Pi = 1 − P{Ci |C0 , . . . , Ci−1 } be the error probability
kernel (e.g. F2 = is the Arikan kernel), and ⊗m denotes
1 1 of symbol u i under SC decoding, where Ci is the event cor-
m-times Kronecker product of the matrix withitself [1]. The responding to correct estimation of symbol u i . Then the SC
digit-reversal permutation maps integer i = m−1 j=0 i j l , 0 ≤
j
decoding error probability is given by
m−1 m−1− j
i j < l, onto j=0 i j l . The particular rows to be used 
in a generator matrix are selected so that the error probability P =1− (1 − Pi ). (7)
under the below described successive cancellation (SC) decod- i ∈F
/
ing algorithm is minimized. Hence, a codeword of a classical Efficient techniques are available for computing Pi in the case
polar code is obtained as c = u A, where u i = 0, i ∈ F, and of Arikan kernel [9], [25]. The standard way to construct prac-
F ⊂ {0, . . . , n − 1} is the set of n − k frozen symbol indices. It tical polar codes is to select F as the set of n − k indices i with
is possible to show that matrix A transforms the original binary the highest error probability Pi .
(0)
input memoryless output-symmetric channel W1 (y|c) into bit For any s, 0 < s ≤ m, polar codes can be considered as GCC
(i)
subchannels Wn (y0n−1 , u i−1 0 |u i ), the capacities of these sub- with inner codes generated by the rows of matrix Fl⊗s , and
channels converge with m to 0 or 1 symbols per channel use, ⊗(m−s)
outer codes generated by some submatrices of Fl . The
and the fraction of subchannels with capacity close to 1 con- SC decoding algorithm can be considered as an instance of
(0)
verges to the capacity of W1 (y|c). Here ast = (as , . . . , at ), the MSD method, where symbol-by-symbol decoding of outer
and y0 , . . . , yn−1 are the noisy symbols obtained by trans- codes is used. It was shown in [9] that significant performance
mitting codeword symbols c0 , . . . , cn−1 over a binary input improvement can be achieved by employing near-ML decod-
(0)
memoryless output-symmetric channel W1 (y|u). ing algorithms for outer codes. Even better performance can
256 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

of non-negative integers η, k : η > k, if there exists a (η, k, d)


GCC, then there also exists a (η, k, ≥ d) IGCC.
The MSD algorithm can be used to decode IGCC. However,
one needs to perform decoding not in outer codes, but in their
cosets. This can be done with any decoder for Ci , provided that
its input LLRs are appropriately adjusted.

B. Generalized Plotkin Decomposition of Linear Codes


As a special case of IGCC, which corresponds
to
the case
10
of inner codes generated by rows of G = F2 = , we con-
Fig. 3. Interlinked generalized concatenated code. 11
sider an extension of the classical Plotkin construction. This
extension will be used below to derive a generalization of
be obtained by employing list or stack decoding algorithms Arikan polar codes.
[2]–[6]. These algorithms keep track of a number of vectors Theorem 1: Any linear (2n, k, d) code C has a generator
û i−1
0 , and at each step increase the length of one or more of matrix given by
these vectors by 1, and compute probabilities Wn(i) (û i0 |y0n−1 ) ⎛ ⎞

G1 0
(or related values). Vectors with low probabilities are discarded, I 0 I ⎝ ˜
so that there are at most L vectors of length i for each i. The G = k1 G2 G2⎠ , (8)
0 Ik 2 0
worst-case complexity of these algorithms is O(Ln log n). G3 G3
where Il is a l × l identity matrix, G i , 1 ≤ i ≤ 3, are ki × n
matrices, k = k1 + k2 , and I˜ is obtained by stacking a (k1 −
C. BCH Codes k3 ) × k3 zero matrix and Ik3 , where k3 ≤ k1 .
 
An (n = q m , k, ≥ d) extended primitive narrow-sense Proof: Let G̃ = G
G

, where G
and G

are some
BCH (EBCH) code is a set of vectors c0n−1 ∈ Fqn , such k × n matrices, be a generator matrix of the code, and let H̃ =
n−1 j 
that i=0 ci x i = 0, 0 ≤ j < d − 1, where (x 0 , . . . , x n−1 ) H
H

be the corresponding parity check matrix. Let G 2 be a


is a vector of distinct values of Fq m , called code loca- maximum rank solution of matrix equation G 2 (H
+ H

)T =
tors. Setting x0 = 0, xi = α i−1 , 1 ≤ i < n, results in an ⎛ elimination
0. Gaussian ⎞ can be used to construct matrix G =
extended cyclic code with generator polynomial g(x) = G5 0
LC M(M1 (x), . . . , Md−2 (x)), where Mi (x) is a minimal poly- Q G̃ = ⎝G 4 G 3 ⎠, such that Q is an invertible matrix, rows
nomial of α i , and α is a primitive element of Fq m . However, in G2 G2
this paper, unless stated otherwise, it will be assumed of G 3 are linearly independent with rows of G 2 , and k =
 that xi are
arranged in the standard digit order, where xi = m−1 j=0 X i, j β j ,
k2 + k3 + k5 . It can be seen that
m−1 ⎛ ⎞
i = j=0 X i, j q , X i, j ∈ {0, . . . , q − 1}, and β0 , . . . , βm−1 is
j ⎛ ⎞ G5 0
Ik 5 0 0 0 ⎜
some basis of Fq m . G4 − G3 0 ⎟
G = ⎝ 0 Ik 3 0 Ik 3 ⎠ ⎜ ⎝ G2
⎟. (9)
G2⎠
0 0 Ik 2 0
G3 G3
III. I NTERLINKED G ENERALIZED C ONCATENATED C ODES

G5
A. The Construction Then the statement follows by setting G 1 = . 
G4 − G3
In this section we present an extension of the general- Another way to construct G 1 is to compute G
+ G

, and
ized concatenated codes, called interlinked GCC (IGCC). This eliminate linearly dependent rows from the obtained matrix.
extension can be used to represent a broad class of linear block Classical Plotkin concatenation of two codes corresponds to
codes. It enables one to decode such codes using the tech- the case of k3 = 0, so the representation of a generator matrix in
niques developed in the area of generalized concatenated and the form (8) will be referred to as a generalized Plotkin decom-
multilevel coding. These decoding algorithms, however, are not position (GPD) of G or the corresponding code C. Applying
guaranteed to perform well for an arbitrary IGCC. But it will the GPD to equivalent codes may result in codes C1 , C2 with
be shown below how to construct IGCC with good performance different dimensions and performance.
under MSD (actually, SC) and its list extensions. Example 1: Consider a (16, 7, 6) EBCH code generated by
Interlinked GCC encodes the subvector u (i) ∈ FqK i of the data ⎛ ⎞
vector not with the outer code Ci , as in the classical GCC, 1 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0
i−1 (s) (s,i)  ⎜0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1⎟
⎜ ⎟
but with its coset given by Ci + s=0 u M , where ⎜0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1⎟
⎜ ⎟
M (s,i) ∈ FqK s ×N are some matrices, as shown in Figure 3. This G=⎜ ⎜0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1⎟.

results ⎜0 0 1 0 1 0 1 1 0 0 0 1 1 0 0 0⎟
n−1 in a linear block code of length N n and dimension ⎜ ⎟
⎝1 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0⎠
i=0 K i . It is, however, quite difficult to estimate the min-
imum distance of the obtained code. Obviously, for any pair 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 257

⎛ ⎞
0 0 1 1 0 0 1 1 constraint matrix V = Q H A T , where Q is an invertible matrix,
Its GPD is given by G 1 = ⎝0 1 0 1 1 0 1 0⎠ , G 2 = such that all rows
 of V end in distinct columns, i.e. the val-
⎛ ⎞
1 1 1 1 1 1 1 1 ues ji = max t|Vi,t = 0 , 0 ≤ i < n − k are distinct. It can be
10010110
assumed without loss of generality that Vi, ji = −1. Let F =
⎜0 1 0 1 0 1 0 1⎟ { ji |0 ≤ i < n − k}. Then one obtains
⎜ ⎟ , G3 = 0 0 0 1 1 0 0 0 .
⎝0 0 1 1 0 0 1 1⎠ 11011000
ji −1

00001111
GPD enables one to perform hard-decision decoding of code u ji = u s Vi,s , 0 ≤ i < n − k. (10)
C as follows. Let Ci be the code generated by G i . Consider a s=0
noisy codeword (y
|y

) = (c
|c

) + (e
|e

), where e = (e
|e

) These equations can be considered as a generalization of the


is an error vector. Compute z = y
+ y

= (c
+ c

) + (e
+ concept of frozen symbols, i.e. constraints of the form u ji =
e

). One can decode z in C1 to identify information vector 0, ji ∈ F, used in the construction of polar codes. Observe
u
and codeword c
+ c

= u
G 1 . If this step is completed that symbols u ji , ji ∈ F can take arbitrary values, which, how-
successfully, one can compute ỹ
= y
− u
(G 1 + I˜G 3 ) and ever, depend on the values of some other symbols with smaller

= y

− u
I˜G 3 , and try to decode these vectors in C2 . This indices. Therefore, symbols u ji given by (10) will be referred
algorithm can be easily tailored to implement soft-decision to as dynamic frozen symbols.
decoding. Example 2: Consider (16, 7, 6) EBCH code C over F2 . The
One can see from (8) that C2 has minimum distance d2 ≥ generator polynomial of the corresponding non-extended code
d/2. However, d1 can be very low. Hence, the above described has roots α, α 3 and their conjugates, where α is a primitive
algorithm may fail to correct even t ≤ (d − 1)/2 errors. A root of x 4 + x 3 + 1. The constraints on vector u 150 , such that
workaround for this problem is to employ list decoding for C1
u 0 A ∈ C, are given by the equation at the bottom of this page.
15
to identify a number of possible vectors u
, for each of them
Multiplying matrices, expanding their elements in the standard
decode the corresponding vectors ỹ
, ỹ

in C2 , and select the


basis and applying elementary linear operations, one obtains
codeword (c
|c

) closest to the received sequence.


⎛ ⎞T
GPD may be also applied recursively. This results in codes 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
of length 1 and dimension at most 1, as discussed below. ⎜0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0⎟
⎜ ⎟
⎜0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0⎟
⎜ ⎟
IV. DYNAMIC F ROZEN S YMBOLS ⎜0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0⎟
⎜ ⎟
⎜ ⎟
A. Representation of a Linear Code for SC Decoding 0 ⎜0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0⎟ = 0
u 15
⎜0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0⎟
⎜ ⎟
Consider an (n = l m , k, d) code C over Fq with check matrix ⎜0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0⎟
⎜ ⎟
H . Let A = Bl,m Fl⊗m be a matrix of an n × n polarizing ⎝0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎠
transformation. Since A is invertible, any vector of length n 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
can be obtained as an output c0n−1 = u n−1
0 A of the polarizing
transformation. Let us investigate the constraints which need This means that u 0 = u 1 = u 2 = u 4 = u 8 = 0,
to be imposed on u n−1
0 , so that the output of the polarizing and u 6 = u 3 , u 9 = u 5 , u 10 = u 3 + u 5 , u 12 = u 10 . Symbols
transformation is a codeword of C. u 3 , u 5 , u 7 , u 11 , u 13 , u 14 , u 15 are non-frozen.
These constraints are given by the equation u n−1 0 AH T = Observe that any linear code of length l m can be represented
0. By applying Gaussian elimination, one can construct the by a system of equations (10). This enables one to employ the

⎛ ⎞⎛ ⎞
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
⎜1 ⎜1 ⎟
⎜ 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0⎟⎟⎜
1 1 ⎟
⎜1 ⎜ ⎟
0⎟ α α
1 3
⎜ 0 0 0 1 0 0 0 0 0 0 0 0 0 0 ⎟⎜⎜ ⎟
⎜1 ⎟ 1+α (1 + α) 3 ⎟
⎜ 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 ⎟ ⎜1 ⎟
⎜1 ⎟ ⎜1 α 2 1+α+α +α ⎟
2 3
⎜ 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0⎟⎜ ⎟
⎜1 ⎜1 ⎟
⎜ 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0⎟⎟⎜⎜ 1 + α 2 1 + α ⎟
⎜1 ⎟ α(1 + α) 1+α 2 ⎟
⎜ 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 ⎟ ⎜1 ⎟
⎜ ⎟ ⎜ ⎟
15 ⎜ 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 ⎟ ⎜1 1+α+α 2 1+α+α +α ⎟
2 3
u0 ⎜ ⎟ ⎜ ⎟ = 0.
⎜1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ⎟ ⎜1 α 3 1+α 2

⎜1 ⎟ ⎜ ⎟
⎜ 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 ⎟ ⎜1 1+α 3 1+α ⎟
⎜1 ⎟ ⎜ ⎟
⎜ 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 ⎟ ⎜1 α(1 + α )2 1 ⎟
⎜1 ⎟ ⎜ ⎟
⎜ 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 ⎟ ⎜1 1+α+α 3 1 ⎟
⎜1 ⎟ ⎜ ⎟
⎜ 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 ⎟ ⎜1 α (1 + α)
2 1+α ⎟
⎜1 ⎟ ⎜ ⎟
⎜ 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 ⎟ ⎜1 1 + α 2 + α 3 α 3 ⎟
⎝1 ⎠ ⎜ ⎟
1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 ⎝1 α(1 + α + α 2 ) 1+α 2 ⎠
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1+α+α +α 2 3 α 3
  
HT
258 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

SC decoding algorithm and its variations for decoding of arbi- (c0 , . . . , cn−1 ) can be associated with some xi ∈ F2m , so that
trary linear codes of length l m . That is, one can successively all xi are distinct, and all codewords satisfy check equations
make decisions

n−1
arg maxu ∈F Wn(i) (u i0 |y0n−1 ), i ∈ F
j
ci xi = 0, 0 ≤ j < d − 1. (12)

u i = i−1 i q (11)
s=0 u s Vti ,s , otherwise, i=0

The standard digit ordering is given by xi = m−1 j=0 X i, j β j ,
where ti is an integer, such that jti = i. Observe that if u i−1
0 m−1
are the correct values of the input symbols of the polarizing where i = j=0 X i, j 2 , X i, j ∈ {0, 1}, and β0 , . . . , βm−1 is
j

transformation, the probability of symbol error Pi in this case some basis of F2m . In what follows, more detailed characteri-
remains the same as in the case of classical polar codes. Hence, zation of the set of dynamic frozen symbols for EBCH codes
the error probability of the considered code under SC decoding will be derived.
can be still computed via (7). Let
The set F of dynamic frozen symbol indices for a generic  
linear code is not guaranteed to contain all symbols with high Ct = t2i mod 2m−1 |0 ≤ i < m t , t2m t ≡ t mod 2m − 1
error probability. Hence, for most linear codes the SC decoding
error probability, given by (7), far exceeds the error probability be a cyclotomic coset generated by t. Let Q be the set of min-
of other decoding algorithms. Substantially better performance imal cyclotomic coset representatives. It can be seen that all
can be obtained by employing list or stack SC decoding tech- elements of a cyclotomic coset have the same weight. Therefore


niques. However, the list size (i.e. the decoding complexity) m


needed to obtain near-ML performance, in general, increases ms = .
r
exponentially with code dimension. s∈Q
wt(s)=r
(i)
The complexity of computing Wn (u i0 |y0n−1 ) is exactly the
same as in the case of classical polar codes, i.e. O(n log n). Theorem 2: Consider a (2m , k, d) extended prim-
However, evaluation of the expression (10) may increase the itive narrow-sense BCH code over F2 . Let S =
decoding complexity to O(n 2 ). {i ∈ Q|0 ≤ i < d − 1}. Let Nt be the number of dynamic
frozensymbols u i for this code, such that wt(i) = t. Then
Nt = s∈St m s , where St = {s ∈ S|wt(s) = t}, and m s is the
B. Extended BCH Codes and Arikan Kernel size of the cyclotomic coset generated by s.
Let us investigate in more details the structure of the set m−1 Proof: Consider parity check equation (12). Let xi =
of dynamic frozen symbol indices of binary extended primi- s=0 X i,s βs , X i,s ∈ {0, 1}. Then
tive narrow-sense BCH (EBCH) codes for the case of Arikan m−1 j m−1 m−1 jt 2t
polarizing transformation. Observe that in this case construc- j
  t=0

tion of the system of equations (10) can be viewed as a recursive xi = X i,s βs = X i,s βs
application of the GPD to the considered code. s=0 s=0
It was shown in [26]–[28] that a punctured RM code of order m−1  jt

m−1   
m−1
2t es
r and length 2m is equivalent to a cyclic code with generator = X i,s βs = v j;em−1 X i,s ,
0
polynomial g(x) having roots α i : 1 ≤ wt(i) < m − r, 1 ≤ i ≤ t=0 s=0 wt(e0m−1 )≤wt( j) s=0
2m − 2, where α is a primitive element of F2m , and wt(i) is the es ∈{0,1}
number of non-zero digits in the binary expansion of integer
i. Furthermore, it was shown in [29] that an EBCH code C
of where v j;em−1 ∈ F2m j are some coefficients. Hence, any code-
0
length 2m with design distance d ≥ δ(r, m) + 3 is a subcode of word c0n−1 satisfies
the RM code of order m − r − 1, where
   
n−1 
m−1
es
δ(r, m) = max min i2 j mod (2m − 1)|0 ≤ j < m . 0= v j;em−1 ci X i,s , j ∈ S̃,
0
i:wt(i)=r i=0 s=0
wt(e0m−1 )≤wt( j)
es ∈{0,1}
A recursive expression for δ(r, m) is derived in [29]. One can
consider a RM code of order m − r − 1 as a polar code with  
where S̃ = j2l | j ∈ S, 0 ≤ l < m j , j2m j ≡ j mod 2m − 1 .
the set of frozen symbol indices F

= {i|wt(i) ≤ r }. Hence, the


It can be seen that the i-th row of A = B2,m F2⊗m
set of dynamic frozen symbol indices F
for the EBCH code
is
m−1a sequence of values of various monomials X (a) =
includes F

. It can be seen from (5)–(6) that Z n,i = O(Z 1,0


2wt(i) ).
am−1−s
s=0 X s , as ∈ {0, 1} at point (X i,0 , . . . , X i,m−1 ) ∈ Fm
2.
Hence, the set of frozen symbols for EBCH codes includes all n−1 m−1 es
those ones, such that their Bhattacharyya parameters (and error Hence, u e
= i=0 ci s=0 X i,s is the value of the e
-th ele-
probability Pi ≤ 12 Z n,i ) decrease slowly while decreasing the ment of the input vector of the polarizing transformation, where
Bhattacharyya parameter Z 1,0 of the original channel. Most of e
= s=0m−1
es 2m−1−s , es ∈ {0, 1}, and u n−1
0 = c0n−1 A, so that
these symbols have high error probability Pi . 
0= v j;em−1 u e
, j ∈ S̃
The above statement is true only if one employs standard 0
wt(e0m−1 )≤wt( j)
digit ordering. That is, each coordinate ci of a codeword
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 259

Any such equation gives rise to m j equations ρwith


 coeffi-
cients in F2 . Observe that there are Mt = i=t s∈Si m s
equations, which involve symbols u e
: t ≤ wt(e
) ≤ ρ, where
ρ = max0≤ j<d−1 wt( j). Hence, the number M t = ρ Nt of
i=t
dynamic frozen symbols u i : t ≤ wt(i) ≤ ρ, is upper bounded
by Mt . It can be also seen that M 0 = M0 .
The equality N0 = 1 = m 0 holds  for any EBCH code
with d ≥ 2. Assume that Nt = s∈St m s for all t < t0 , so
t0 − Nt0 ≤ Mt0 +1 = Mt0 −
 Mt0 = Mt0 . Since Mt0 +1 =
that M
m
s∈St0 s , one obtains N t0 ≥ s∈St0 m s . Assume that this
inequality is strict.
Any codeword of the considered EBCH code can be repre-
sented as a vector of values of polynomial

f (x) = T rm t (γt x n−1−t ) (13)
t∈Q\S Fig. 4. Performance of list/stack SC decoding of extended BCH codes.
in distinct points xi ∈ F2m , where γi ∈ F2m i , T rm (x) =
m−1 2i list/stack SC decoding, while Arikan polar codes achieve the
i=0 x . This polynomial can be represented in multivariate
form as near-ML performance already for L = 4.
⎛  1−t j ⎞
  m−1
m−1  j
f (X 0 , . . . , X m−1 ) = T rm t ⎝γt βl2 X l ⎠ V. P OLAR S UBCODES
t∈Q\S j=0 l=0 It is possible to show that the minimum √ distance of polar
 
m−1 codes with Arikan kernel is given by O( n) [33]. This results
= u e
X l1−el (14) in quite poor ML decoding performance.
e0 ,...,em−1 ∈{0,1} l=0 Exact performance analysis of the list/stack SC decoding
 algorithm, which is commonly used to implement near-ML
where t = m−1 j=0 t j 2 , t j ∈ {0, 1}, so that ci = f (x i ) =
j
decoding of polar codes, still remains an open problem. It was
f (X i,0 , . . . , X i,m−1 ). Observe that the e
-th row of matrix empirically observed that in the low-SNR region codes with
m−1 1−el
A can be considered as a table of values of l=0 Xl in lower SC decoding error probability provide lower error proba-
various points of Fm 2 . Hence, u e
can be considered as input bility under list SC decoding. However, in the high-SNR region
symbols of the polarizing transformation. the performance of list/stack SC decoding algorithm depends
Hence, the set of polynomials f (X 0 , . . . , X m−1   ) correspond-

mainly on code minimum distance. Therefore, we propose
ing to the considered code contains K t0 = m t0 − s∈St0 m s
to explicitly construct codes with a given minimum distance,
linearly independent polynomials given by (14) of degree m − which would minimize the SC decoding error probability.
t0 . Observe also that the forms of degree m − t0 of these Definition 1: Consider a q-ary input memoryless output
polynomials are also linearly independent. However, symmetric channel W (y|c) and an (n = l m , k
, d) code C
over
 this is Fq , called parent code. Let F
be the set of dynamic frozen sym-
not possible since, by assumption, there are Nt > s∈St m s
constraints on the coefficients of these forms. The obtained
0
bol indices of C
for the case of kernel Fl . An (n, k ≤ k
, ≥ d)
contradiction proves the theorem.  polar subcode C of code C
is defined as the set of vectors
⊗m
The particular set of dynamic frozen symbol indices F
of the c0n−1 = u n−1
0 Bl,m Fl , where u n−1
0 simultaneously satisfies the
EBCH code depends on the basis being used. One may enumer- dynamic freezing equations (10) for code C
, and additional
ate different bases of F2m and select the one which minimizes constraints u s = 0 for k
− k indices s ∈ / F
with the highest
the SC decoding error probability (7). Similar approach was error probabilities Ps for a given channel W (y|c).
used in [30], [31] to obtain trellis diagrams of EBCH codes. Encoding of polar subcodes can be performed as
Theorem 2 and the existence of a RM supercode suggest that c = x W A, (15)
the SC algorithm and its variations may work for EBCH codes.
Unfortunately, experiments show that this is true only for small where x is an information vector, W is a matrix, such that
n. Figure 4 illustrates the performance of EBCH codes under W V T = 0, and V is the dynamic freezing constraint matrix.
list/stack SC algorithm with list size L and box-and-match [32] This can be considered as pre-coding the data with some outer
algorithm with reprocessing order t, as well as Arikan polar code with generator matrix W , and encoding its codeword with
codes. It can be seen that Arikan polar codes far outperform a polar code. However, we do not explicitly specify an outer
extended BCH codes in the case of list size L equal to 1 (i.e. code for this construction. Instead, we require that the obtained
classical SC decoding). However, higher minimum distance codeword c should belong to the parent code with sufficiently
results in significant performance gain of EBCH codes under high minimum distance.
box-and-match near-ML decoding algorithm. Huge list size L Polar codes with CRC [2] and LDPC outer codes [8]
is needed in order to obtain comparable performance under can be considered as a special case of the proposed
260 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

construction. However, these codes employ ad-hoc constraints a (1024, 512, ≥ 28) polar subcode with dynamic frozen sym-
(10). Therefore, it is difficult to control their minimum distance. bols. The specification of the obtained code includes only f =
It must be recognized that the SC decoding error probabil- 20 non-trivial equations (10) with T = 111 terms, so the cost of
ity P given by (7) of a polar subcode cannot be less than the evaluation of dynamic frozen symbols is negligible compared to
SC decoding error probability of a classical polar code of the the cost of multiplication by matrix A.
same length and dimension, constructed for the same channel Observe that the SC decoding error probability P of a
using the same kernel Fl . Therefore, polar subcodes provide no (n, k, d) polar subcode of any code cannot be less than the
advantage with respect to classical polar codes if SC decoding SC decoding error probability P for a classical (n, k) polar
is used. However, significant performance gain under list/stack code constructed for the same channel using the same kernel.
SC decoding can be obtained. Experiments show that for given However, the performance of a polar subcode under list/stack
values of n, k, d polar subcodes with lower P provide lower SC decoding with sufficiently large list size L may be substan-
list/stack SC decoding error probability. Hence, one should tially better. It was empirically observed that the size of the list
select C
so that its set F
includes as many as possible indices L needed to obtain such gain increases with P. Hence, one
ji corresponding to symbols with high error probability P ji . needs to quantify the value of P/P needed to obtain a given
minimum distance d. However, it would be easier to character-
ize the rate of a polar subcode with a given minimum distance,
A. Arikan Kernel
such that it has the same SC decoding error probability as a
1) The Construction: We propose to employ EBCH codes given classical polar code of the same length.
as parent ones in the proposed construction of polar subcodes. Let C be a polar code with kernel F2 of rate ρ(z), such
Theorem 2 implies that the indices of the most of the frozen that all symbols with Z n,i < z are not frozen. Consider
symbols of EBCH codes have low weight. Bounds (5)–(6) now an (n, k, d) polar subcode C of rate ρ(z, d) = k/n,
imply that the Bhattacharyya parameter of the i-th bit subchan- obtained from a (n = 2m , k
= β(m, d)n, d) EBCH code
nel is given by Z n,i = O(Z 1,02wt(i) ). Hence, employing EBCH C
by freezing all symbols u i with Z n,i ≥ z. The set
codes as parent ones in the proposed construction enables one to of non-frozen symbols of code C can be represented
avoid freezing of bit subchannels with low Z n,i . This improves as (d, z) = ∪rm−1 (r, m,

z) \ Fd,r , where (r, m, z) =


=0
the performance of the obtained code under SC decoding and  

i|0 ≤ i < 2 , wt(i) = r, Z 2m ,i < z , and Fd,r


m is the set of
its variations.

Observe that increasing minimum distance of the parent code dynamic frozen symbol indices u e of C , such that wt(e) = r .
causes more bit subchannels with low Z n,i to be frozen. In order It is quite difficult to find |(r, m, z)| analytically, although
to keep code dimension k fixed, one needs to unfreeze some bits it can be computed in polynomial time for any specific binary
subchannels with high Z n,i . This results in higher SC decoding input output symmetric memoryless channel and values r, m
error probability. This can be compensated to a certain extent [25]. Therefore, we propose to approximate it by employing an
by employing list SC decoding and its variations with larger asymptotic expression for the fraction of common non-frozen m 
list size. Unfortunately, there are still no analytical techniques symbols of a RM code of rate R(m − r, m) = 2−m m−r j=0 j
for finding a trade-off between the performance and decoding and a polar code of length n = 2m and rate ρ. This value
complexity. We have to use simulations in order to find optimal was shown in [34] to converge
 with m → ∞ to φ(ρ, r, m) =
values of the code minimum distance. C min Cρ , R(m − r, m) , where C is the capacity of the con-
Example 3: Let us construct a (16, 6, 6) polar subcode sidered channel. Hence, the 2−m |(r, m, z)| ≈ φ(ρ(z), r, m) −
of (16, 7, 6) EBCH code considered in Example 2, by φ(ρ(z), r + 1, m).
optimizing it for the case of the binary erasure chan- Therefore, one obtains
nel with erasure probability Z 1,0 = 0.5. The vector of bit

|(r, m, z) \ Fd,r | ≥ max(0, |(r, m, z)| − |Fd,r |), (16)


subchannel Bhattacharyya parameters (i.e. symbol erasure
probabilities) equals Z 16 = (0.999, 0.992, 0.985, 0.77, 0.96, so that
0.65, 0.53, 0.1, 0.9, 0.47, 0.35, 3.7 · 10−2 , 0.23, 1.5 · 10−2 ,
7.8 · 10−3 , 1.5 · 10−5 ). Here the values corresponding to 
m
 
ρ(z, d) ≥ 2−m

max 0, |(r, m, z)| − |Fd,r |


dynamic frozen symbols of the EBCH code are underlined. It
r =0
can be seen that u 3 has the highest erasure probability 0.77
among not yet frozen symbols. Therefore, we propose to intro- 
m
 
≈ max 0, φ(ρ(z), r, m) − φ(ρ(z), r + 1, m) − Nr 2−m ,
duce an additional constraint u 3 = 0. This is equivalent to
r =0
removing the first row from matrices G 1 and G 3 presented in
Example 1. where Nr is given by Theorem 2.
Example 4: Consider construction of a (1024, 512) code. Figure 5 illustrates this bound together with the actual rate
There exists a (1024, 513, 116) EBCH code, which cannot of (n, k, d) polar subcodes of EBCH codes of length n = 1024.
be decoded efficiently with (list) SC decoder. On the other The dimension k of these subcodes was selected so that they
hand, the classical polar code optimized for AWGN channel achieve approximately the same successive cancellation decod-
with E b /N0 = 2d B has minimum distance 16. One can take ing error probability at E s /N0 = −1 dB as the classical Arikan
a (1024, 893, 28) EBCH parent code C
: R M(5, 10) ⊂ C
⊂ polar code (1024, 512, 16) constructed for the same value of
R M(8, 10) and freeze 381 additional bit subchannels to obtain E s /N0 . It can be seen that the bound is quite loose. This is both
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 261

f Ln + C W L bit operations, where L is the list size, since the


additional arrays need to be copied while cloning the paths. In
the second case the complexity depends on the specific structure
of dynamic freezing constraints.
The sequential decoding algorithm [5] and its block general-
ization [36] were shown to be able to decode polar codes with
very low average complexity and good performance. These
algorithms can be naturally used in the case of polar subcodes.

B. Improved Polar Subcodes With Arikan Kernel


Let us consider a (n = 2m , k, d) polar subcode constructed
as described in Section V-A. It can be represented as an IGCC
with outer codes of length 2s , s < m. It appears that most outer
codes obtained in this way are classical Arikan polar codes with
quite low minimum distance and high decoding error probabil-
Fig. 5. Rate of polar subcodes of length 1024.
ity. Therefore we propose to employ the approach suggested
in [37]. Namely, we impose the requirement on outer codes
due to (16), which assumes that all dynamic frozen symbols to be (2s , ki , di ) EBCH codes (or their subcodes). The param-
induced by the EBCH code correspond to subchannels with the eters ki , di are selected in order to minimize the MSD error
lowest possible Bhattacharyya parameters, and application of probability, which is given by
an asymptotic expression for approximation of |(r, m, z)|. −1
2m−s
It can be seen that the degradation of polar subcode rate with P =1− (1 − πi )
respect to a classical polar code is negligible for d up to twice i=0
the minimum distance of the original polar code. 2m−s −1
2) Encoding and Decoding Complexity: Encoding of the under the constraint i=0 ki = k. Here πi denotes the
proposed polar subcodes of binary EBCH codes can be per- decoding error probability of the code utilized at the i-th level
formed via (15) with complexity C W + 12 n log n, where C W = of the IGCC. These probabilities can be estimated, for example,
T − f is the cost of multiplication by matrix W , T is the num- using the tangential sphere bound [38] together with density
ber of terms evolution [25] or Gaussian approximation [9].
 in the right-hand side of non-trivial equations (10), The obtained IGCC can be also represented via a system of
and f ≤ t Nt is the number of such equations. Systematic
encoding can be implemented using the approach introduced in equations (10). The corresponding matrix V is given by
⎛ ⎞
[35] with complexity C W + n log n. V

Theorem 2 implies that the set of dynamic frozen sym- ⎜ V0 0 . . . 0 ⎟


⎜ ⎟
bol indices for a parent EBCH code includes only the ones ⎜ 0 V1 . . . 0 ⎟
V =⎜ ⎟,
with sufficiently small weight. Furthermore, one can see that ⎜ .. .. . . .. ⎟
⎝ . . . . ⎠
a dynamic freezing equation for symbol u i cannot involve
symbols u j : wt( j) > wt(i). On the other hand, most of the 0 0 . . . V2m−s −1
constraints u s = 0, imposed on bit subchannels with high error where V
is a constraint matrix for a parent (2m , K ≥ k, d)
probability Ps , correspond to low-weight
 integers s. This causes EBCH code, and Vi are constraint matrices for outer (2s , ki , di )
f to be much less than the value t Nt predicted by Theorem 2 codes.
for the parent code, so that matrix W appears to be sparse. This The codes obtained in this way are supposed to be decoded
was illustrated in Example 4. Hence, the encoding complexity by the block sequential decoding algorithm [36] with block
of the proposed polar subcodes does not exceed that of polar size at least 2s . This algorithm employs the fast tree-trellis list
codes with f -bit CRC. Viterbi algorithm [39] for decoding of outer codes of the IGCC.
Decoding of polar subcodes can be performed using the same However, more efficient decoding techniques can be designed
algorithms as classical polar codes, which should be augmented for specific outer codes.
with a subroutine for evaluation of dynamic frozen symbols. The proposed approach can be considered as a generalization
Hence, the number of operations with probabilities or log- of the construction suggested in [40]. The Mondelli-Hassani-
likelihood ratios remains the same as in the case of classical Urbanke codes can be considered as GCC with inner Arikan
polar codes. However, the cost of bit manipulations increases codes and outer RM or polar codes. Since EBCH codes provide
at least by O(C W ). For example, in the case of Tal-Vardy list higher minimum distance, one may expect the improved polar
decoding algorithm and its derivatives, the values u j , which are subcodes to provide better performance.
needed for evaluation of the dynamic frozen symbols, are not
stored explicitly. One should either introduce for each path an
C. Polar Subcodes With EBCH kernel
additional array of size f , where the values of dynamic frozen
symbols are accumulated, or recover u j from intermediate val- For l = 2μ an extended BCH kernel can be obtained as
ues. In the first case the decoding complexity increases by matrix Fl , where ((Fl )i+1,1 , . . . , (Fl )i+1,l−1 ) is a vector of
262 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

The obtained polar subcode can be considered as an instance


of the IGCC introduced in Section III. Indeed, let us consider
a subset Fs = { ji ∈ F| ji /l = s} of the set of dynamic frozen
symbol indices corresponding to the s-th block, 0 ≤ s < l m−1 ,
and let V (s) be the corresponding |Fs | × l m submatrix of V .
It can be assumed without loss of generality that V (s) has an
identity submatrix in columns with indices in Fs , so that V (s) =
(s | ( s |I ) s |0), where s is a l × l permutation matrix, and
  
|Fs |×l
s , s are some matrices. Therefore, one obtains a system of
equations
m−1 +l−1 m−1 −1
u sl
sl m−1
(( s |I ) s )T = u 0sl sT .

Its solution is given by


m−1
sl +l−1 m−1 −1
u sl m−1 = v(I | s ) s + u 0sl sT (0|I ) s ,
Fig. 6. Extended BCH kernel F32 .

l−|F |
where v is an arbitrary vector in F2 s . Hence, instead of suc-
coefficients of x j gi
(x), where gi
(x) is a generator polyno- cessive decoding of symbols u sl m−1 , . . . , u sl m−1 +l−1 according
mial of a (l − 1, l − 1 − i
) BCH code, and j is the smallest to (11), one can recover them jointly by decoding in a coset
non-negative integer, such thati = j + i
. Furthermore, one has xs + Cs , where Cs is a code generated by matrix (I | s ) s Fl ,
and xs = u 0sl −1 sT (0|I ) s Fl , as shown in Figure 2. This
m−1
(Fl )0,0 = 1 and (Fl )i+1,0 = l−1 j=1 (Fl )i+1, j . Figure 6 presents
an example of the EBCH kernel. enables one to improve the performance and/or reduce the
Let C(q, s, m, J ) be a code over Fq of length q sm , decoding complexity.
which consists of evaluation vectors of m-variate
(q s −1)m A(x 0 , . . . , x m−1 ),
1
polynomials such that all
their coefficients A j0 ,..., jm−1 are equal to zero for D. Reed-Solomon Kernel
( j0 , . . . , jm−1 ) ∈ J , in various points (x0 , . . . , xm−1 ) ∈ Fqms .
   The results of [41] allow us to extend the proposed con-
Let L(h) =  ( j0 , . . . , jm−1 )|0 ≤ ji < q s , i ji > h,
m−1 struction of polar subcodes of EBCH codes to the case of
and L ∗ (h) = j = i=0 ji q si |( j0 , . . . , jm−1 ) ∈ L(h) . Reed-Solomon (RS) kernel over Fq . The RS kernel is given
It was shown in [41] that codes C(q, s, m, L(h)) and by matrix Fl , where (Fl )i, j = β l−1−i
j , and β j are some distinct
C(q, sm, 1, L ∗ (h)) are equivalent. That is, these codes can elements of Fq , l ≤ q. It was shown in [23] that for l ≤ q the
be considered as GCC with inner and outer extended cyclic Reed-Solomon kernel provides the highest possible polariza-
codes. Furthermore, outer codes in this construction can be tion rate. However, polar codes with RS kernel still suffer from
recursively decomposed in the same way. This implies that an low minimum distance.
EBCH code has a supercode, which is equivalent to a GCC In order to obtain a code with better performance, one can set
with inner and outer extended cyclic codes. This is similar to l = q and represent an (n = q m , k
, d) EBCH code  of length
the fact of existence of a RM supercode for any EBCH code, q m over Fq , such that its t-th locator is xt = m−1 j=0 βt j γ j ,
which was used above to show that EBCH codes have “not where (γ0 , . . . , γm−1 ) is a basis of Fq m considered as a vec-

so bad” set of dynamic frozen symbol indices in the case of tor space over Fq , t = m−1 j=0 t j q , 0 ≤ t j < q , via a system
j m
Arikan polarizing transformation. of equations (10), and introduce additionally k
− k static freez-
Therefore, we propose the following code construction. Let (i)
ing constraints u i = 0 for non-frozen subchannels Wn with the
C
be an (2μm , k
, d) EBCH code, such that its t-th locator is
highest error probability. Again, simulations have to be used for
xt = m−1 j=0 βt j γ j , where (γ0 , . . . , γm−1 ) is a basis of F2μm con-
 performance evaluation of bit subchannels. The obtained codes
sidered as a vector space over F2μ , t = m−1 μj
j=0 t j 2 , 0 ≤ t j < can be decoded using the techniques presented in [6], [43].
2μ , and βi is the i-th element of F2μ . The above described con- Example 5: Consider construction of a (16, 8, 6) polar sub-
struction of EBCH kernel corresponds to the case β0 = 0, βi = code over F4 . The 4 × 4 Reed-Solomon kernel is given by
α i−1 , 1 ≤ i < 2μ , where α is a primitive element of F2μ . Then ⎛ ⎞
one can construct polar subcode of C
using the polarizing 01 1 1
transformation A = Bl,m Fl⊗m . ⎜0 1 β + 1 β ⎟
F4 = ⎜⎝0 1 β β + 1⎠ ,

The proposed construction requires one to be able to compute
symbol error probabilities Pi . To the best of our knowledge, 11 1 1
there are still no analytical techniques for solving this prob-
lem, except for the case of the binary erasure channel [42]. where β is a primitive element of F4 . The check matrix of the
Therefore, we use simulations to obtain these values. (16, 9, 6) parent EBCH code is
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 263

Fig. 7. Performance of polar subcodes with Arikan kernel of length 1024.

⎛ ⎞
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
⎜0 1 β β2 0 1 β β2 0 1 β β2 0 1 β β2 ⎟
⎜ ⎟
⎜0 0 0 0 1 1 1 1 β β β β β2 β2 β2 β2 ⎟
⎜ ⎟
H =⎜
⎜0 1 β2 β β β2 1 0 1 0 β β2 β2 β 0 1 ⎟⎟
⎜0 0 0 0 1 1 1 1 β2 β2 β2 β2 β β β β ⎟
⎜ ⎟
⎝0 1 1 1 β 1 0 β β β 1 0 β 0 β 1 ⎠
0 0 0 0 β2 β2 β β β2 β β2 β β2 β β β2

This corresponds to the following constraint matrix for the


polarizing transformation A = B4,2 F4⊗2 :
⎛ ⎞
0 0 0 0 0 0 1 0 0 β2 0 0 1 0 0 0
⎜ 0 0 0 β2 0 0 1 0 0 1 0 0 0 0 0 0 ⎟
⎜ ⎟
⎜0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0⎟
⎜ ⎟
V =⎜ ⎜0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0⎟.

⎜0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0⎟
⎜ ⎟
⎝0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎠ Fig. 8. Decoding complexity for polar subcodes with Arikan kernel.
100 0 00000 0 000000
is the length of outer codes in the IGCC representation of the
In the case of transmission of a binary image of the output of
corresponding polar subcode. For polar codes with the BCH
the polarizing transformation A over the AWGN channel with
kernel, the sequential decoding algorithm [7] was used, which
E s /N0 = −1 dB, the symbol error probabilities were found to
is based on the order-statistics soft-input hard-output decoding
be (0.74, 0.7, 0.55, 0.27, 0.58, 0.33, 0.12, 0.02, 0.23, 0.04, 4 ·
of the component codes. Both probability-domain implemen-
10−3 , 2 · 10−4 , 0.03, 4 · 10−4 , 3 · 10−6 , < 10−6 ). Hence, we
tation of the Tal-Vardy list decoding algorithm (TV) and the
propose to set additionally u 5 = 0.
block sequential decoding algorithm were used for decoding of
polar codes with Arikan kernel an CRC. Observe that in the
VI. N UMERIC R ESULTS case of polar codes with CRC the block sequential decoding
algorithm provides slightly worse performance compared to the
In this section we present simulation results illustrating the original Tal-Vardy algorithm, but has much lower complexity.
performance of proposed polar subcodes of EBCH codes in Belief propagation algorithm with flooding schedule was used
the case of AWGN channel and BPSK modulation. For com- for decoding of LDPC codes.
parison, we present also the results for the case of classical Figure 7 illustrates the performance of codes2 of length
polar codes with the corresponding kernels, polar codes with ≈1024. It can be seen that polar subcodes of EBCH codes
Arikan kernel and CRC-16 (Arikan-CRC) [2], LTE turbo code, provide significant performance gain with respect to the clas-
as well as LDPC codes specified in WiMAX and CCSDS stan- sical polar codes of the same code length and dimension.
dards. For polar subcodes with Arikan kernel we have used the Furthermore, they outperform polar codes with Arikan kernel
block sequential (BS(s)) [36] decoding algorithm1 , where 2s and CRC. Observe that increasing s in the case of the block
1 For s ≤ 3 the block sequential decoding algorithm provides slightly infe-
rior performance compared to the probability-domain implementation of the 2 In order to ensure reproducibility of the results, we have set up a web site
Tal-Vardy list decoding algorithm with the same list size L, but requires much http://dcn.icc.spbstu.ru/index.php?id=polar containing the specifications of the
smaller number of arithmetic operations. considered polar subcodes with Arikan kernel.
264 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

Fig. 9. Performance of codes of length 2048.

Fig. 10. Performance of codes with non-Arikan kernels.

sequential decoding algorithm, i.e. employing in the decoder improved construction of polar subcodes. We also believe that
a representation of a polar subcode as an IGCC with longer the block sequential decoding algorithm can be further simpli-
outer codes, results in better performance. The best perfor- fied by employing more efficient decoding algorithms for outer
mance is achieved by improved polar subcodes, where outer EBCH codes.
EBCH codes of length 32 were selected so that the MSD error Figure 9 presents the performance of codes of length 2048. It
probability of the corresponding IGCC is minimized. can be seen that the proposed improved polar subcodes with
Figure 8 illustrates the average number of summation opera- Arikan kernel provide substantially better performance com-
tions performed by the block sequential and belief propagation pared to the case of LDPC and turbo codes. Observe that
decoding algorithms for the case of polar subcodes and LDPC increasing minimum distance of the polar subcode results in
codes, respectively. Observe that decoding polar subcodes better performance in the high SNR region. For comparison,
requires slightly lower average number of operations compared we provide also the results for the MHU construction, repro-
to polar codes with CRC, since the dynamic freezing constraints duced from [40]. As it may be expected, the improved polar
prevent the sequential decoder from constructing wrong paths subcode, which employs EBCH outer codes, provides better
up to the final phase of decoding. performance than the MHU code, which employs outer RM and
It can be also seen that for s = 3 decoding of polar codes Arikan polar codes. For comparison, we report also results for
requires 10 times less operations compared to LDPC codes. For the case of a GCC with outer EBCH codes of length 32, which
s = 5 the complexity becomes comparable. Furthermore, the was obtained as described in [37], and decoded with the block
average number of operations for the case of L = 256, s = 3 sequential algorithm. It appears that some of the outer codes of
is less than in the case of L = 32, s = 5. From these results the IGCC corresponding to the improved polar subcode, which
one may conclude that it is more advantageous to increase correspond to good bit subchannels, have higher rate, while
L instead of s. However, increasing s enables one to use the those corresponding to bad bit subchannels have lower rate than
TRIFONOV AND MILOSLAVSKAYA: POLAR SUBCODES 265

in the case of the classical GCC optimized for the same SNR. R EFERENCES
This causes the performance of the improved polar subcode to [1] E. Arikan, “Channel polarization: A method for constructing capacity-
be better than that of the classical GCC. achieving codes for symmetric binary-input memoryless channels,” IEEE
Figure 10(a) presents the performance of codes with the Trans. Inf. Theory, vol. 55, no. 7, pp. 3051–3073, Jul. 2009.
[2] I. Tal and A. Vardy, “List decoding of polar codes,” in Proc. IEEE Int.
EBCH kernel F32 . It can be seen that these codes outperform Symp. Inf. Theory, 2011, pp. 1–5.
those with Arikan kernel. For the case of polar subcodes, even [3] K. Niu and K. Chen, “Stack decoding of polar codes,” Electron. Lett.,
better performance can be obtained by increasing the list size L vol. 48, no. 12, pp. 695–697, Jun. 2012.
[4] K. Chen, K. Niu, and J. Lin, “Improved successive cancellation decoding
at the cost of higher decoding complexity. Figure 10(b) presents of polar codes,” IEEE Trans. Commun., vol. 61, no. 8, pp. 3100–3107,
the performance of the binary image of polar codes and polar Aug. 2013.
subcodes with 4 × 4 Reed-Solomon kernel over F22 . It can be [5] V. Miloslavskaya and P. Trifonov, “Sequential decoding of polar codes,”
IEEE Commun. Lett., vol. 18, no. 7, pp. 1127–1130, Jul. 2014.
seen that classical polar codes with Reed-Solomon kernel have [6] P. Trifonov and V. Miloslavskaya, “Polar codes with dynamic frozen sym-
quite low minimum distance, similarly to the case of Arikan bols and their decoding by directed search,” in Proc. IEEE Inf. Theory
kernel, but still provide better performance compared to a polar Workshop, Sep. 2013, pp. 1–5.
[7] V. Miloslavskaya and P. Trifonov, “Sequential decoding of polar codes
code with Arikan kernel with comparable parameters. In both with arbitrary binary kernel,” in Proc. IEEE Inf. Theory Workshop, 2014,
cases employing the proposed construction of polar subcodes pp. 377–381.
of EBCH codes results in improved minimum distance and [8] J. Guo, M. Qin, A. G. Fabregas, and P. Siegel, “Enhanced belief propaga-
tion decoding of polar codes through concatenation,” in Proc. IEEE Int.
even better performance compared to the codes presented in Symp. Inf. Theory, 2014, pp. 2987–2991.
Figures 7(a) and 9(b). [9] P. Trifonov, “Efficient design and decoding of polar codes,” IEEE Trans.
Commun., vol. 60, no. 11, pp. 3221–3227, Nov. 2012.
[10] H. Mahdavifar, M. El-Khamy, J. Lee, and I. Kang, “On the construction
and decoding of concatenated polar codes,” in Proc. IEEE Int. Symp. Inf.
Theory, 2013, pp. 952–956.
VII. C ONCLUSIONS [11] Y. Wang and K. R. Narayanan, “Concatenations of polar codes with outer
In this paper the construction of polar subcodes of linear BCH codes and convolutional codes,” in Proc. 52nd Annu. Allerton Conf.
Commun. Control Comput., 2014, pp. 813–819.
block codes was introduced, which is based on the concept [12] M. Bakshi, S. Jaggi, and M. Effros, “Concatenated polar codes,” in Proc.
of dynamic frozen symbols. It enables one to obtain codes IEEE Int. Symp. Inf. Theory, 2010, pp. 918–922.
with higher minimum distance than classical polar codes, which [13] B. Li, H. Shen, and D. Tse, “An adaptive successive cancellation list
decoder for polar codes with cyclic redundancy check,” IEEE Commun.
can still be efficiently decoded using the derivatives of the list Lett., vol. 16, no. 12, pp. 2044–2047, Dec. 2012.
successive cancellation algorithm. Although we do not have [14] K. Niu and K. Chen, “CRC-aided decoding of polar codes,” IEEE
a proof that the proposed codes achieve the channel capacity, Commun. Lett., vol. 16, no. 10, pp. 1668–1671, Oct. 2012.
[15] S. Kumar and H. D. Pfister, “Reed-Muller codes achieve capacity on
they were shown to outperform some of the existing LDPC and erasure channels,” 2015 [Online]. Available: http://arxiv.org/pdf/1505.
turbo codes of moderate lengths. Many existing constructions 05123v2.pdf
based on polar codes, such as polar codes with CRC, can be [16] S. Kudekar, M. Mondelli, E. Sasoglu, and R. Urbanke, “Reed-Muller
codes achieve capacity on the binary erasure channel under MAP decod-
considered as a special case of the proposed polar subcodes. ing,” 2015 [Online]. Available: http://arxiv.org/pdf/1505.05831.pdf
Unfortunately, due to lack of analytical techniques for pre- [17] I. Dumer and K. Shabunov, “Soft-decision decoding of Reed-Muller
dicting the performance of list/stack SC decoding algorithms, codes: Recursive lists,” IEEE Trans. Inf. Theory, vol. 52, no. 3, pp. 1260–
1266, Mar. 2006.
heuristical methods were used in this paper to construct the [18] E. Blokh and V. Zyablov, “Coding of generalized concatenated codes,”
codes. Any progress in the performance analysis of these algo- Probl. Inf. Transmiss., vol. 10, no. 3, pp. 45–50, 1974.
rithms may lead to design of better codes. Another way to [19] H. Imai and S. Hirakawa, “A new multilevel coding method using error
correcting codes,” IEEE Trans. Inf. Theory, vol. IT-23, no. 3, pp. 371–
improve the performance of the proposed codes is to use longer 377, May 1977.
outer EBCH codes. This, however, requires development of [20] T. Takata, N. Yamashita, T. Fujiwara, T. Kasami, and S. Lin,
efficient list soft decision decoding algorithms for them. “Suboptimum decoding of decomposable block codes,” IEEE Trans. Inf.
Theory, vol. 40, no. 5, pp. 1392–1405, Sep. 1994.
Furthermore, an extension of the concept of generalized con- [21] U. Wachsmann, R. F. H. Fischer, and J. B. Huber, “Multilevel codes:
catenated codes was provided, as well as a new method for Theoretical concepts and practical design rules,” IEEE Trans. Inf. Theory,
representing linear block codes in a form, which enables appli- vol. 45, no. 5, pp. 1361–1391, Jul. 1999.
[22] S. B. Korada, E. Sasoglu, and R. Urbanke, “Polar codes: Characterization
cation of the SC algorithm and its variations for their decoding. of exponent, bounds, and constructions,” IEEE Trans. Inf. Theory, vol. 56,
This approach enables one to construct polar subcodes with no. 12, pp. 6253–6264, Dec. 2010.
improved performance, as well as a more efficient decoding [23] R. Mori and T. Tanaka, “Source and channel polarization over finite
fields and reed-solomon matrix,” IEEE Trans. Inf. Theory, vol. 60, no. 5,
algorithm for them. It allows also near-ML decoding of short pp. 2720–2736, May 2014.
Reed-Solomon codes [44]–[46]. [24] S. H. Hassani and R. Urbanke, “On the scaling of polar codes: I. The
behavior of polarized channels,” in Proc. IEEE Int. Symp. Inf. Theory,
2010, pp. 874–878.
[25] I. Tal and A. Vardy, “How to construct polar codes,” IEEE Trans. Inf.
Theory, vol. 59, no. 10, pp. 6562–6582, Oct. 2013.
ACKNOWLEDGEMENTS [26] V. Kolesnik and E. Mironchikov, “Cyclic Reed-Muller codes and their
decoding,” Probl. Inf. Transmiss., vol. 4, no. 4, pp. 15–19, 1968.
The authors thank R. Morozov for help in running simula- [27] T. Kasami, S. Lin, and W. Peterson, “New generalizations of the Reed-
tions for polar codes with Reed-Solomon kernel. Muller codes part I: Primitive codes,” IEEE Trans. Inf. Theory, vol. IT-14,
The authors thank the anonymous reviewers and the Guest no. 2, pp. 189–199, Mar. 1968.
[28] P. Delsarte, J. Goethals, and F. MacWilliams, “On generalized Reed-
Editor for their helpful comments, which have greatly improved Muller codes and their relatives,” Inf. Control, vol. 16, pp. 403–442,
the quality of the paper. 1970.
266 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 34, NO. 2, FEBRUARY 2016

[29] V. Zinoviev and S. Litsyn, “On the dual distance of BCH codes,” Probl. [42] V. Miloslavskaya and P. Trifonov, “Design of polar codes with arbitrary
Inf. Transmiss., vol. 22, no. 4, 1986, pp. 272–277. kernels,” in Proc. IEEE Inf. Theory Workshop, 2012, pp. 119–123.
[30] A. Vardy and Y. Beery, “Maximum-likelihood soft decision decoding of [43] P. Trifonov, “Binary successive cancellation decoding of polar codes
BCH codes,” IEEE Trans. Inf. Theory, vol. 40, no. 2, pp. 546–554, Mar. with Reed-Solomon kernel,” in Proc. IEEE Int. Symp. Inf. Theory, 2014,
1994. pp. 2972–2976.
[31] T. Kasami, T. Takata, E. Fujiwara, and S. Lin, “On the optimum bit orders [44] P. Trifonov, “Successive cancellation decoding of Reed-Solomon codes,”
with respect to the state complexity of trellis diagrams for binary lin- Probl. Inf. Transmiss., vol. 50, no. 4, pp. 303–312, 2014.
ear codes,” IEEE Trans. Inf. Theory, vol. 39, no. 1, pp. 242–245, Jan. [45] P. Trifonov, “Successive cancellation permutation decoding of Reed-
1993. Solomon codes,” in Proc. IEEE Inf. Theory Workshop, 2014,
[32] A. Valembois and M. Fossorier, “Box and match techniques applied to pp. 386–390.
soft-decision decoding,” IEEE Trans. Inf. Theory, vol. 50, no. 5, pp. 796– [46] V. Miloslavskaya and P. Trifonov, “Sequential decoding of Reed-
810, May 2004. Solomon codes,” in Proc. Int. Symp. Inf. Theory Appl., 2014,
[33] N. Hussami, S. B. Korada, and R. Urbanke, “Performance of polar codes pp. 424–428.
for channel and source coding,” in Proc. IEEE Int. Symp. Inf. Theory,
2009, pp. 1488–1492.
[34] S. H. Hassani, R. Mori, T. Tanaka, and R. Urbanke, “Rate-dependent anal- Peter Trifonov (S’02–M’05) was born in St.
Petersburg, U.S.S.R., in 1980. He received the
ysis of the asymptotic behavior of channel polarization,” IEEE Trans. Inf.
M.Sc. degree in computer science and the Ph.D.
Theory, vol. 59, no. 4, pp. 2267–2276, Apr. 2013.
degree (Candidate of Science) from Saint-Petersburg
[35] G. Sarkis, I. Tal, P. Giard, A. Vardy, C. Thibeault, and W. J. Gross,
Polytechnic University, Saint Petersburg, Russia, in
“Flexible and low-complexity encoding and decoding of systematic polar
2003 and 2005, respectively. Currently, he is an
codes,” 2015 [Online]. Available: http://arxiv.org/pdf/1507.03614v2.pdf
Associate Professor with the Distributed Computing
[36] G. Trofimiuk and P. Trifonov, “Block sequential decoding of polar
codes,” in Proc. Int. Symp. Wireless Commun. Syst., 2015, pp. 326–330. and Networking Department of the same university.
His research interests include coding theory and its
[37] P. Trifonov and P. Semenov, “Generalized concatenated codes based on
applications in telecommunications and other areas.
polar codes,” in Proc. IEEE Int. Symp. Wireless Commun. Syst., 2011,
pp. 442–446.
[38] G. Poltyrev, “Bounds on the decoding error probability of binary linear
codes via their spectra,” IEEE Trans. Inf. Theory, vol. 40, no. 4, pp. 1284– Vera Miloslavskaya (S’12–M’15) received the
1292, Jul. 1994. B.Sc., M.Sc., and Ph.D. degrees (Candidate of
[39] M. Roder and R. Hamzaoui, “Fast tree-trellis list Viterbi decoding,” IEEE Science) in computer science from Saint-Petersburg
Trans. Commun., vol. 54, no. 3, pp. 453–461, Mar. 2006. Polytechnic University, Saint Petersburg, Russia, in
[40] M. Mondelli, S. H. Hassani, and R. Urbanke, “From polar to Reed- 2010, 2012, and 2015, respectively. Her research
Muller codes: A technique to improve the finite-length performance,” interests include coding theory and its applications in
IEEE Trans. Commun., vol. 62, no. 9, pp. 3084–3091, Sep. 2014. telecommunications.
[41] B. Liesenfeld and B. Dorsch, “On the equivalence of some generalized
concatenated codes and extended cyclic codes,” in Proc. IEEE Int. Symp.
Inf. Theory, 1993, p. 399.

You might also like