On the Analysis of Puncturing for Finite-Length Polar Codes: Boolean Function Approach
11 On the Analysis of Puncturing forFinite-Length Polar Codes:Boolean Function Approach
Song-Nam Hong ∗ and Dennis Hui †∗ Ajou University, Suwon, Korea,Email: [email protected] † Ericsson Research, San Jose, CA,Email: [email protected]
Abstract
This paper investigates the impact of puncturing on finite-length polar codes in which a puncturingpattern p N = ( p , ..., p N ) is applied to a length- N polar code.. We first introduce two virtual channelsto stochastically model the punctured (untransmitted) bits, which are respectively called useless channelmodel (UCM) and deterministic channel model (DCM). Under each model, we derive boolean functionsin variables p , ..., p N − that can indicate which polarized channels should carry frozen bits. Based onthis, we present an efficient method to jointly optimize a puncturing pattern and an information set.Focusing on a fixed information set, we show that there exist the so-called catastrophic puncturingpatterns that will surely lead to a block error and derive their weight distributions recursively. We thenpropose the two construction methods of a rate-compatible (RC) polar code which ensures that eachpuncturing pattern in the family is non-catastrophic. Simulation results demonstrate that the proposedRC polar code outperform the RC Turbo code adopted in LTE. October 18, 2018 DRAFT a r X i v : . [ c s . I T ] J a n Index Terms
Polar codes, puncturing, shortening, rate-compatible code, HARQ.
I. I
NTRODUCTION
Polar codes, proposed by Arikan [1], achieve the symmetric capacity of binary-input discretememoryless channels (BI-DMCs) under a low-complexity successive cancellation (SC) decoder.The finite-length performance of polar codes can be enhanced by using list decoder that enablespolar codes to approach the performance of optimal maximum-likelihood (ML) decoder [2]. Itwas further shown in [2] that a polar code concatenated with a simple CRC outperforms well-optimized LDPC and Turbo codes even for short lengths. Due to their good performance andlow-complexity, polar codes are currently considered for possible deployment in future wirelesscommunication systems (i.e., 5G).Puncturing is widely used to support various lengths and to construct rate-compatible (RC)codes. In [5]–[7], a puncturing pattern is produced by a heuristic algorithm and then the informa-tion set of the mother polar code is optimized by taking into account the puncturing pattern. Also,an efficient algorithm to jointly optimize a puncturing pattern and the corresponding informationset was recently proposed [10], where an exhaustive search over all possible puncturing patternsis performed, significantly reducing the search-space by using certain symmetry of the polarencoder. It can achieve an optimized frame-error-rate (FER) performance but still require ahigher optimization complexity. A low-complexity method for joint optimization was furtherdeveloped in [13]. It is remarkable that the above methods cannot be directly used to constructa RC polar code since in this case, all punctured polar codes in the family and the motherpolar code should use the identical information set, i.e., the information set cannot be optimizedaccording to puncturing patterns. In [8], [9], puncturing patterns are optimized for the giveninformation set of the mother polar code. In general, this approach considerably reduces theoptimization complexity, at the cost of an increased FER.
DRAFT October 18, 2018
In this paper, we investigate the impact of puncturing on polarized channels of finite-lengthpolar coded and, based on this, we present an efficient method to construct good (rate-compatible)puncturing patterns. First of all, we introduce two virtual channels that stochastically modelpunctured bits, which are referred to as useless channel model (UCM) and deterministic channelmodel (DCM), respectively. On the one hand, in UCM, it is assumed that the output of the virtualchannel is independent of its input and hence, the polar decoder is performed by assigning zerolog-likelihood ratios (LLRs) for the punctured bits. On the other hand, in DCM, it is assumedthat the channel output is equal to its input as a pre-agreed bit (e.g., zero) with probability 1and hence, the polar decoder is performed by assigning infinite LLRs for the punctured bits.Suppose that a puncturing pattern p N = ( p , ..., p N − ) is applied to a length- N polar code.Our main contributions are summarized as follows. • We derive boolean functions in variables p , ..., p N − indicating which polarized channelsshould be assigned by frozen bits. The index sets of such polarized channels in UCM andDCM are denoted by D p N and E p N , respectively. • We define a reciprocal puncturing pattern which ensures that B p N = D p N (or B p N = E p N ),where B p N denote the index set of the locations of punctured bits. Then, we derive anecessary and sufficient condition such that a puncturing pattern is reciprocal. This conditionis used to efficiently construct a good puncturing pattern and the corresponding informationset. • Next, focus on a fixed information set, we show that there exist the so-called catastrophic puncturing patterns which will surely lead to a block error. Also, we develop an efficientrecursive algorithm to characterize those puncturing patterns and their weight distributions. • Based on the above analysis, we present two simple methods to construct a RC polar codewhich ensures that each puncturing pattern in the family is non-catastrophic. Via simulationresults, we demonstrate that the proposed RC polar code can outperform the RC Turbo codeadopted in LTE.
October 18, 2018 DRAFT
This paper is organized as follows. In Section II, we provide some useful notations anddefinition to be used throughout the paper. In Section III, using boolean functions, we analyzethe impact of puncturing on the polarized channels of a polar code, and provide an efficientmethod to jointly optimize a puncturing pattern and an information set. In Section IV, we definethe catastrophic puncturing patterns (which should be avoided) for a given information set andderive their weight distributions. In Section , we propose two simple methods to construct aRC polar code having a family of non-catastrophic puncturing patterns. Simulation results areprovided in Section VI. Section VII concludes the paper.II. P
RELIMINARIES
In this section we provide some useful notations and definitions that will be used in the sequel.
A. Notation
Let [ a : b ] ∆ = { a, a + 1 , . . . , b } for any integers a and b ≥ a . A polar code of length N = 2 n isconsidered, in which the polarized channels are indexed by , , . . . , N − . We let A ⊆ [0 : N − denote the information set that contains all the indices of unfrozen-bit channels. Accordingly, A c contains all the indices of frozen bit channels. For any N = 2 n , let G N = G ⊗ log( N )2 be therate-one generator matrix of all polar codes with blocklength N , where G is the 2-by-2 ArikanKernel [1]. Also, for any M ⊆ [1 : N ] and N ⊆ [1 : N ] , let G N ( M , N ) denote the submatrixof G N obtained by selecting rows and columns whose indices belong to M and N , respectively.We define a function g ( (cid:96) ) : [0 : N − → { , } n which maps (cid:96) onto a binary expansion as g ( (cid:96) ) = ( b n , . . . , b ) , (1)such that (cid:96) = (cid:80) ni =1 b i n − i . B. Punctured Polar Codes
In this section, we formally define the polarized channels of a punctured polar code. Let s denote a number of punctured bits. Then, a polar code of blocklength N is punctured by DRAFT October 18, 2018 removing a set of s columns from its generator matrix, which has the effect of reducing thecodeword length from N to N p = N − s . Formally, a punctured polar code of post-puncturingblocklength N p is characterized by its “mother” (unpunctured) polar code of blocklength N anda puncturing pattern p N = ( p , . . . , p N − ) ∈ { , } N with p i = 0 indicating that the i -th codedbit is punctured and thus not transmitted. Let B p N = { i ∈ [0 : N −
1] : p i = 0 } be the index setwhich contains the zero locations in p N . Also, we let B c p N = [0 : N − \ B p N . Then, we have N p = w h ( p N ) = |B c p N | .For a given puncturing pattern p N , let π p N : Y N → Y N p be a projection operator that copies N p = w h ( p N ) coordinates of its input as its output based on the puncturing pattern specifiedby p N , where w h ( p N ) denotes the number of ones in p N , i.e. y N P = π p N ( y N ) containing thecoordinates of y N corresponding to the locations of ones in p N . The notion of polarized channelsin conventional polar codes can be extended to punctured polar codes in a straightforward manneras follows. For a given (unpunctured) polar code of blocklength N and puncturing pattern p N ,we define the transition probability of the i -th polarized channel of the corresponding puncturedpolar code as W ( i ) ( y N p , u i − , p N | u i ) = 12 N − (cid:88) u Ni +1 (cid:88) y N ∈ π − p N ( { y Np } ) W N ( y N | u N G N ) , (2)where π − p N ( S ) (cid:44) { y N ∈ Y N : π p N ( y N ) ∈ S } represents the inverse image of π p N ( · ) and thechannel transition probabilities are W N ( y N | x N ) = (cid:89) j ∈ [1: N ] W ( y j | x j ) , (3)where W ( ·|· ) denotes the channel transition probability of the underlying BI-DMC. For thesimplicity of notation, we let W ( i ) p N denote the i th polarized channel with the transition probabilityin (2), and let I ( W ( i ) p N ) denote the corresponding symmetric capacity. October 18, 2018 DRAFT
III. I
MPACT OF P UNCTURING ON P OLARIZED C HANNELS
As explained in Section II-B, punctured coded bits are not transmitted through an underlyingchannel. Conventionally, a length- N polar decoder is used regardless of the number of puncturedbits and thus, the proper LLR values for those bits should be assigned. In this section, weintroduce the two virtual channels that model those punctured bits stochastically, which arerespectively called useless and deterministic channels. Under the transmitter-receiver agreement,one of the modelings is applied to each punctured bit and according to a chosen model, theproper LLR values are assigned. Then, we analyze their impacts on the polarized channels usingboolean functions. A. Stochastic Modelings of Punctured Bits
We define the two virtual channels to stochastically model punctured bits, which are referredto as useless channel model (UCM) and deterministic channel model (DCM), respectively. Tobe specific, they are defined as follows. • In UCM, it is assumed that the punctured coded bits are transmitted over a useless
BI-DMC. In this case, a channel output is independent of its input and thus, the correspondingchannel can be defined as W ( y j | x j ) = P Y ( y j ) , (4)for some probability distribution P Y ( · ) . Under this model, the LLRs for the punctured codedbits are assigned by zeros since they are assumed to be equally likely of being one or zero. • In DCM, it is assumed that the punctured coded bits are transmitted over a deterministic (ornoiseless) BI-DMC. In this case, a channel output is identical to its input with probability 1.In fact, this can be established by assigning the punctured coded bits with some fixed valuesthat have been pre-agreed with the transmitter, so that the encoder restricts the transmittedcodewords to be in the offset subspace specified by the fixed values. In this paper, without
DRAFT October 18, 2018 loss of generality, the pre-agreed values are assumed to be zeros, i.e., x i = 0 for all i ∈ B p N .Accordingly, for an index set E p N , u E p N = ( u i : i ∈ E p N ) should be chosen such that uG N ([1 : N ] , B p N ) = , (5)which is equivalent to u E p N = u E c p N G N ( E c p N , B p N ) G N ( E p N , B p N ) − . (6)This condition shows that u E p N = ( u i : i ∈ E p N ) should not carry information and be usedas frozen bits. Also, the condition (6) is satisfied as long as G N ( E p N , B p N ) is a full-rank.Under this model, the LLRs for the punctured coded bits are assigned by + ∞ .In the following Sections III-B and III-C, we investigate the impact of puncturing on polarizedchannels under each virtual channel model. In UCM, we show that some polarized channel,determined by a puncturing pattern, should have zero capacity and then identify the index set,denoted by D p N , of such polarized channels. Namely, we obtain that I ( W ( i ) N ) = 0 for i ∈ D p N . (7)Next, in DCM, we identify the index set E p N defined above. Definitely, those index sets havean impact on the design of an information set A as in Remark 1 Remark 1:
The reliabilities of polarized channels of a polar code can be computed by severaltechniques such as density evolution under a Gaussian approximation (DE/GA), tracking themean value, Batthacharyya parameter or mutual information of the Gaussian L-densities [12].Let I = { i , i , ..., i N } denote the orderd index set such that the reliability of polarized channel i j is not lower than that of polarized channel i k for i ≥ k . From this, we can construct theinformation set A of the size K , by taking the first K indices from the I . Whereas, for apunctured polar code, we need to more carefully construct an information set as follows: • In UCM, the information set A is constructed by taking the first K indices from the orderedset I \ D p N where |I \ D p N | = N p . October 18, 2018 DRAFT 𝑊 " 𝑊 𝑢 " 𝑢 𝑦 " 𝑦 (a) The polar encoder of 𝑁 = 2 𝑊 ) ANDOR 𝑍 " 𝒑 ) 𝑍 𝒑 ) 𝑝 " 𝑝 (b) The corresponding AND-OR representation 𝑊 ) 𝑝 " 𝑝 𝑍 " (𝒑 ) ) 𝑍 (𝒑 ) ) Puncturing patternsPolarized channel capacities 𝑥 " 𝑥 Fig. 1. The capacity of polarized channel with a puncturing pattern p = ( p , p ) for N = 2 . AND 𝑝 " = 0𝑝 % = 0𝑝 & = 1𝑝 ( = 1𝑍 " 𝒑 + = 0𝑍 % 𝒑 + = 0 Stage 1ANDANDANDORORORORANDStage 2ANDORORANDANDORORANDStage 3ORANDORANDORANDOR 𝑝 , = 0𝑝 - = 0𝑝 . = 1𝑝 / = 1𝑍 & 𝒑 + = 1𝑍 ( 𝒑 + = 1𝑍 , 𝒑 + = 0𝑍 - 𝒑 + = 0𝑍 . 𝒑 + = 1𝑍 / 𝒑 + = 1 0011001100110011 (0,0,0)(0,0,1)(0,1,0)(0,1,1)(1,0,0)(1,0,1)(1,1,0)(1,1,1) Binary representation
Fig. 2. The capacity of polarized channel with a puncturing pattern p = ( p , p , ..., p ) for N = 8 . • Likewise, in DCM, the information set A is constructed by by taking the first K indicesfrom the ordered set I \ E p N where |I \ E p N | = N p . DRAFT October 18, 2018
B. Useless Channel Model (UCM)
Focusing on the perfect underlying channel (i.e., I ( W ) = 1 ), we first identify the D p N and thenshow its university with respect to the underlying B-DMC channel. By incorporating puncturinginto the channel, the resulting channel in this case can be either a perfect channel or a completelynoisy (i.e. zero-capacity) channel because a punctured bit is not transmitted. Without loss ofgenerality, it is assumed that N copies of the channel, denoted by W i , i ∈ [1 : N ] , are used inwhich I ( W i ) = 0 for i ∈ B p N and I ( W i ) = 1 for i / ∈ B p N . We let ¯ W ( i ) p N denote the i -th polarizedchannel particularly when the underlying B-DMC is a perfect channel.We start with the simplest case of N = 2 . From [1, Proposition 4], it is easily verified that I ( ¯ W (0) p ) ≤ min { I ( W ) , I ( W ) } (8) I ( ¯ W (1) p ) ≥ max { I ( W ) , I ( W ) } . (9)When p = (1 , is used, the capacities of resulting polarized channels are given by I ( ¯ W (0) p ) = 0 and I ( ¯ W (1) p ) = 1 , (10)because of I ( W ) = 1 and I ( W ) = 0 . From (8) and (9), we can easily obtain that I ( ¯ W (0) p ) = , p ∈ { (0 , , (0 , , (1 , } , p = (1 , (11) I ( ¯ W (1) p ) = , p = (0 , , p ∈ { (0 , , (1 , , (1 , } . (12)Also, we can simply express I ( ¯ W ( i ) p ) as a boolean function in variables p and p such as I ( ¯ W (0) p ) = p ∧ p and I ( ¯ W (1) p ) = p ∨ p , (13)where “ ∧ ” and “ ∨ ” denote the AND and OR operations, respectively, and to simplify notation,we will omit the “ ∨ ” in the following. To simplify the expression and emphasize the boolean October 18, 2018 DRAFT0 function, we let Z ( i ) ( p N ) denote the capacity of the i th polarized channel, i.e., Z ( i ) ( p N ) = I ( ¯ W ( i ) p N ) .Note that the boolean functions in (13) can be immediately obtained from Fig. 1 (b). Thenext level of recursion for N = 4 is shown in Fig. 2. We first define a binary-output function h : [0 , × [0 , → [0 , as h b ( p , p ) = p ∧ p , if b = 0 p p , if b = 1 . (14)Letting g ( i ) = ( b , b ) , we can obtain Z ( i ) ( p ) = h b ( h b ( p , p ) , h b ( p , p )) . (15)From this, we can obtain the boolean functions for N = 4 as follows: Z (0) ( p ) = p ∧ p ∧ p ∧ p (16) Z (1) ( p ) = p p ∧ p p ∧ p p ∧ p p (17) Z (2) ( p ) = p p ∧ p p (18) Z (3) ( p ) = p p p p . (19)Repeatedly applying the above recursions as in (15), we can derive the Z ( i ) ( p N ) , i = 0 , . . . , N − as a function of a puncturing pattern p N . When the perfect underlying channel (i.e., I ( W ) = 1 )is assumed, we obtain the index set of zero-capacity polarized channels as D p N = { i ∈ [0 : N −
1] : Z ( i ) ( p N ) = 0 } . (20)Also, the above set is universal with respect to the underlying B-DMC channel W becausefrom [11, Lemma 4.7], I ( W ( i ) p N ) ≤ I ( ¯ W ( i ) p N ) for any W , and thus I ( W ( i ) p N ) = 0 for any W if Z ( i ) ( p N ) = 0 . DRAFT October 18, 20181
C. Deterministic Channel Model (DCM)
Focusing on the simplest case of N = 2 , we can see that the condition (6) is satisfied bychoosing u and u according to a puncturing pattern as u = 0 , u = 0 p = (0 , u = u , p = (0 , u = 0 p = (1 , . (21)From the above, we can see that in the third case, u should be frozen bits, and in the secondcase, either u or u should be frozen bits. Since the second polarized channel has a highercapacity than the first polarized channel, we choose u as frozen bit in the second case. Let ¯ p N denote the 1’s complement of p N . Likewise the case of UCM, we can express the (21) usingboolean function as Z (0) (¯ p ) = ¯ p ∧ ¯ p and Z (1) (¯ p ) = ¯ p ¯ p , (22)and the condition (6) is satisfied if u i is chosen as frozen bit when Z ( i ) (¯ p ) = 1 . From this, weobtain the equivalent result with the (21) as follows: Z (0) ( p ) = 1 if p ∈ { (0 , } (23) Z (1) ( p ) = 1 if p ∈ { (0 , , (1 , , (1 , } . (24)In this simplest case, thus, we can identify the E p = { i ∈ [0 : 1] : Z ( i ) (¯ p ) = 1 } . (25)Following the same recursion procedures in UCM, we can obtain the E p N = { i ∈ [0 : N −
1] : Z ( i ) (¯ p N ) = 1 } . (26) Remark 2:
In UCM, the frozen bits u i for i ∈ D p N can be set by zero, without loss ofperformance. In DCM, however, the frozen bits u i for i ∈ D p N should be determined as a binaryaddition of other bits, and thus, we require another computations (i.e., encoding) to determine October 18, 2018 DRAFT2 the frozen bits. In the next section, it will be shown that for some class of puncturing patterns,those frozen bits can be simply chosen as zeros.
Example 1:
Consider the case of N = 4 . From (16)-(19), we obtain the corresponding booleanfunctions as Z (0) (¯ p ) = ¯ p ∧ ¯ p ∧ ¯ p ∧ ¯ p (27) Z (1) (¯ p ) = ¯ p ¯ p ∧ ¯ p ¯ p ∧ ¯ p ¯ p ∧ ¯ p ¯ p (28) Z (2) (¯ p ) = ¯ p ¯ p ∧ ¯ p ¯ p (29) Z (3) (¯ p ) = ¯ p ¯ p ¯ p ¯ p . (30)For p = (1 , , , , we have E p =(1 , , , = { , } from (26), which implies that the condition(6) is satisfied by assigning u and u as frozen bits. This is verified as G ( { , } , { , } ) = (31)is a full-rank. D. Reciprocal Puncturing Patterns
In Sections III-B and III-C above, we showed that for each p N , there exists the correspondingindex sets D p N ⊆ A c and E p N ⊆ A c for UCM and DCM, respectively. In order to construct agood information set, they should be identified. In this section, we show that for some puncturingpatterns, we can ensure that B p N = D p N (or B p N = E p N ). Formally, we define: Definition 1:
A puncturing pattern p N is referred to as reciprocal if B p N = D p N under UCM(or B p N = E p N under DCM).Using this, we provide the main theorems of this section below: Theorem 1:
In UCM, a puncturing pattern p N is reciprocal if and only if the following DRAFT October 18, 20183 properties are satisfied: zero-inclusion property: ∈ B p N , (32) one-covering property: if i ∈ B p N and i (cid:23) j, then j ∈ B p N , (33)where i (cid:23) j means that for every digit of ’1’ in the binary representation of index j , thecorresponding digit in the index i must also be ’1’ and i (cid:23) for every i > . Proof:
We first prove sufficiency and then prove necessity. a) Proof of sufficiency:
It suffices to show that the input and output sequences remain the sameafter each polarization stage in the modified encoder with AND-OR operators in Fig. 1 (b). Letthe binary representation of an index i be denoted by g ( i ) = ( b i , b i , ..., b in ) where n = log N .At each polarization stage k for k ∈ { , ..., n } , there are n − pairs of basic AND-OR operatorsin the form of that in Fig. 1 (b), each of which has the input pairs whose indices correspond to (cid:96) = ( b i , ..., b ik − , , b ik +1 , .., b in ) and (cid:96) = ( b i , ..., b ik − , , b ik +1 , .., b in ) . The input and the output ofeach pair are identical if ( p (cid:96) , p (cid:96) ) ∈ { (0 , , (0 , , (1 , } as in Fig. 1 (b). If the zero-inclusionand one-covering properties are satisfied, then the input and output of each pair of these AND-OR operators are identical. Since this argument holds for every polarization stage, it follows thatthose properties imply reciprocity. b) Proof of necessity: Note that if the input and the output of the modified polar encoder arethe same (i.e., B p N = D p N ), then the input and output after each polarization stage must bealso the same because the largest bit index with value ’0’ is monotonically non-increasing aftereach polarization stage as the output of the AND operator should be smaller than that of theOR operator for the same input. Now suppose there exist i and j such that i ∈ B p N and i (cid:23) j but j / ∈ B p N . There must exist (cid:96) , (cid:96) ∈ [1 : N ] such that i (cid:23) (cid:96) (cid:23) (cid:96) (cid:23) j , (cid:96) ∈ B p N , (cid:96) / ∈ B N p ,and that (cid:96) and (cid:96) differ only in one bit (say, k -th bit), where k ∈ { , , ..., n } . It follows that b (cid:96) k , b (cid:96) k = 0 , and b (cid:96) m = b (cid:96) m for all m (cid:54) = k . Since (cid:96) ∈ B p N and (cid:96) / ∈ B p N , the input to the pair ofAND-OR operators at stage k corresponding to (cid:96) and (cid:96) should be different from its output as October 18, 2018 DRAFT4 in the 3rd column of the table in Fig. 1 (b). It follows that the input and output after (at least)the k -th polarization stage must be different and thus the input and the output of the wholemodified polar encoder must be different. Thus, B p N (cid:54) = D p N . Theorem 2:
In DCM, a puncturing pattern p N is reciprocal if and only if the followingproperties are satisfied: N -inclusion property: N ∈ B p N , (34) zero-covering property: if i ∈ B p N and i (cid:23) j, then j ∈ B p N , (35)where i (cid:23) j means that for every digit of ’0’ in the binary representation of index j , thecorresponding digit in the index i must also be ’0’. Proof:
The proof follows the same procedures in the proof of Theorem 1.
Corollary 1:
Suppose DCM is assumed. If a puncturing pattern p N is reciprocal, then wehave u i = 0 for i ∈ E p N . (36) Proof:
Using zero-covering property in Theorem 2, we define Φ N ( i ) = { j ∈ [0 : N −
1] : i (cid:23) j } ∪ { N − } , (37)for any i ∈ [0 : N − . Due to the particular construction of G N = G ⊗ log( N )2 , we can see that x i , i -th coded bit, is determined as an addition of u i ’s with i ∈ Φ N ( i ) . Since the p N is reciprocalby Hypothesis assumption, we know that Φ N ( i ) ⊆ E p N for any i ∈ E p N . Thus, if we choose u i = 0 for all i ∈ E p N , x i = 0 for all i ∈ B p N . This completes the proof.From now on, we will prove a class of reciprocal puncturing patterns. Definition 2:
Let Π n denote the set of all possible permutation of (1 , , ..., n ) . For any π ∈ Π , π ( i ) denote the i -th element of π . For any length- n binary vector b = ( b , ..., b n ) , we define abit-permutation Ψ π with seed vector π ∈ Π n as Ψ π ( b ) = ( b π (1) , b π (2) , ..., b π ( n ) ) . (38) DRAFT October 18, 20185
Proposition 1:
Under UCM, suppose that p N is reciprocal. Then, for any π ∈ Π n , thepuncturing pattern p Nπ with zero-location set B p Nπ is also reciprocal, where B p Nπ = (cid:8) g − (Ψ π ( g ( i ))) : i ∈ B p N (cid:9) . (39)The above statement is also hold under DCM. Proof:
The proof follows the fact that one-covering property (or zero-covering property)definitely holds for any bit-permutation π . Example 2:
In this example, we provide some reciprocal puncturing patterns. First of all, wehave: • In UCM, the puncturing pattern p N with B p N = { , , ..., s − } is obviously reciprocal. • In DCM, the puncturing pattern p N with B p N = { N − s + 1 , N − s + 2 , ..., N } is obviouslyreciprocal.Using the above puncturing patterns and from Proposition 1, we are able to generate severalreciprocal puncturing patterns. In particular, when π = ( n, n − , ..., (called bit-reversepermutation), the corresponding puncturing patterns in UCM and DCM are called quasi-uniformpuncturing (QUP) and reverse QUP (RQUP), respectively. Fig. 5 shows the frame-error-rate(FER) performances of punctured polar codes where QUP and RQUP are used for UCM andDCM, respectively. In this example, we observe that UCM approach is slightly better than DCMapproach at lower rate and vice versa at higher rate.IV. C ATASTROPHIC P UNCTURING P ATTERNS
From the analysis in Section III, we learned that an information set A should be carefullydesigned for a punctured polar code, by taking into account a puncturing pattern and a chosenstochastic modelling. However, this approach cannot be used on constructing a rate-compatiblecode since an information set should not be changed according to the puncturing patterns inthe family, i.e., a common information set, usually optimized for a mother code, should be October 18, 2018 DRAFT6 -2 -1 0 1 2 3 4 5 6
SNR [dB] -4 -3 -2 -1 F E R UCM, (32,96) polar codeDCM, (32,96) polar codeUCM, (72,96) polar codeDCM, (72,96) polar codeR=1/3 R=3/4
Fig. 3. Performance comparisons of UCM and DCM approaches for various code rates. Here, the punctured polar codes of N p = 96 are obtained by puncturing bits from mother polar code of N = 128 . kept. Motivated by this, we in this section analyze the impact of puncturing patterns for a fixed(pre-designed) information set A . Definition 3:
A puncturing pattern p N is said to be catastrophic for a polarized channel i (obtained from any underlying channel W ) if Z ( i ) ( p N ) = 0 . (40)More generally, a puncturing pattern p N is called catastrophic for a set of polarized channels i ∈ A ⊆ [0 : N − if Z ( i ) ( p N ) = 0 for any i ∈ A . (41)Obviously, a catastrophic puncturing pattern is universal with respect to the underlying BI-DMC DRAFT October 18, 20187 channel W . If a catastrophic puncturing pattern is used, then the block-error-rate (BLER) ofthe corresponding punctured code is always 1 and thus, it should be avoid. From the booleanfunctions in Section III, we obtain the two interesting facts: • Any puncturing pattern p N with w h ( p N ) > N − wt ( i ) is non-catastrophic for the polarizedchannel i . • The boolean functions Z ( i ) ( p N ) can be always be expressed in the corresponding maximal forms, in which each term represents a catastrophic puncturing pattern.In the example of N = 4 , the first fact is verified from (16)-(19). Also, the maximal form of Z (2) ( p ) is obtained using the fact p i ∧ ¯ p i = 0 as Z (2) ( p ) = p p ∧ p p = p p ( p ∧ ¯ p )(¯ p ∧ p ) ∧ p p ( p ∧ ¯ p )(¯ p ∧ p )= p p p p ∧ p p p ¯ p ∧ p ¯ p p p ∧ p ¯ p p ¯ p ∧ p p ¯ p p ∧ ¯ p p p p ∧ ¯ p p ¯ p p , and the corresponding catastrophic puncturing patterns are { (0 , , , , (0 , , , , (0 , , , , (0 , , , , (0 , , , , (1 , , , , (1 , , , } . (42)Using the boolean function Z ( i ) ( p N ) , we can check if p N is a catastrophic or not for a givenpolarized channel i . Also, we can efficiently check it using the following lemma. Lemma 1:
A puncturing pattern p N is non-catastrophic for a polarized channel i if thefollowing rank-increment condition is satisfied:Rank (cid:0) G N (cid:0) [ i : N ] , B c p N (cid:1)(cid:1) − Rank (cid:0) G N (cid:0) [ i + 1 : N ] , B c p N (cid:1)(cid:1) = 1 . October 18, 2018 DRAFT8
Proof:
When p N is applied, the capacity of the polarized channel i is given by Z ( i ) ( p N ) = I ( u i ; { y j : j ∈ B c p N }| u i − )= H ( u i ) − H ( u i | u N G (cid:0) [1 : N ] , B c p N (cid:1) , u i − )= H ( u i ) − H ( u i |{ y j : j ∈ B c p N } , u i − )= 1 − H (cid:16) u i | u i G (cid:0) i, B c p N (cid:1) + u Ni +1 G (cid:0) [ i + 1 : N ] , B c p N (cid:1) (cid:17) , where the interference term caused by the known values u i − , i.e., u i − G ([1 : i − , B c p N ) , iseliminated. Then, we have that H (cid:0) u i |{ y j : j ∈ B c p N } , u i − (cid:1) = 0 , if G ( i, B c p N ) is linearly independent from the rows of G ([ i + 1 : N ] , B c p N ) . This completes theproof.In Section IV-A, we analyze the catastrophic puncturing patterns and then in Section ?? , wepresent an efficient algorithm to construct a non-catastrophic puncturing pattern. A. Analysis of Catastrophic Puncturing Patterns
For a given polarized channel i with g ( i ) = ( b n , . . . , b ) , we characterize all catastrophicpuncturing patterns and their weight distributions.
1) Characterization of catastrophic puncturing patterns:
Define C Na ( b n , . . . , b ) by the set ofcatastrophic puncturing patterns of the polarized channel i , i.e., C Na ( b n , . . . , b ) ∆ = { p N ∈ { , } N : Z ( i ) ( p N ) = 0 } . (43)Now we develop an efficient recursive method to characterize C Na ( b n , . . . , b ) . We first constructa binary tree consisting of N = 2 n leaf nodes and n levels. When n = 4 , there are four typesof binary trees, two of which are illustrated in Fig. 4. Note that the binary tree has two types DRAFT October 18, 20189
ANDOR OR 𝑝 " 𝑝 {00} {00}{0000,0001,0100,0101,0010,1000,1010} {00,01,10} {00,01,10}{0000,0001,0100,0010,0011,0110,1000,1001,1100} Stage 1Stage 2 𝑝 ) 𝑝 * ORAND AND 𝑝 " 𝑝 Stage 1Stage 2 𝑝 ) 𝑝 * Fig. 4. The binary trees to characterize the catastrophic puncturing patterns for n = 2 . of function nodes as “AND” node and “OR” node, and leaf nodes. Also, each level m containsthe same types of function nodes in which the type is completely determined by the b m as AND node , b m = 0 OR node b m = 1 . (44)For a given node v , we define the subtree that contains all child nodes of v . As before, we canderive the boolean function associated with the subtree. Then, the output of the node v (i.e., themessage value of its outgoing edge) represents the set of all binary sequences associated withthe leaf nodes in the subtree such that each binary sequence in the set is the root of the booleanfunction. Due to the symmetry of the binary tree, all edges in the same level have the samemessage value (see Fig. 4).We let I and O represent the incoming and outgoing message values at a node, respectively.From Fig. 4, the message value of the outgoing edge from v is computed using the followingupdate rules: • Update rule at OR node: O = { ( p , p ) : p , p ∈ I} . (45) October 18, 2018 DRAFT0 • Update rule at AND node: O = { ( p (cid:53) p ) : p , p ∈ I} , (46)where, for the ease of expression, we used the notation of { ( p (cid:53) p ) : p , p ∈ I} ∆ = { ( p , p ) : p ∈ I , p ∈ { , } l I }∪ { ( p , p ) : p ∈ { , } l I , p ∈ I} , where l I denote the length of binary sequences in I . Using the binary tree and the above updaterules, we can find all catastrophic puncturing patterns recursively. Starting with n = 1 , we have: C a (0) = { , , } and C a (1) = { } . (47)Using them, we obtain C a ( b , b ) as C a ( b , b ) = { ( p , p ) : p (cid:53) p ∈ C a ( b ) } , b = 0 { ( p , p ) : p , p ∈ C a ( b ) } , b = 1 . Repeatedly applying the above procedures, we have:
Proposition 2:
For a polarized channel i with g ( i ) = ( b n , . . . , b ) , the set of catastrophicpuncturing patterns are obtained recursively as C n − m a ( b n , . . . , b m +1 ) = { ( p (cid:53) p ) : p , p ∈ C n − m − a ( b n , . . . , b m +2 ) , b m +1 = 0 { ( p , p ) : p , p ∈ C n − m − a ( b n , . . . , b m +2 ) , b m +1 = 1 for m = n − , . . . , , , where the recursion starts with C a (0) = { , , } and C a (1) = { } . DRAFT October 18, 20181
2) Weight distributions:
We derive the weight distributions of catastrophic puncturing patternsrecursively, in which the recursion starts with simple polynomial of z at each coded bit location.First of all, for any two input polynomial D α ( z ) = (cid:80) ms =0 d α ( s ) z s and D β ( z ) = (cid:80) ns =0 d β ( s ) z s ,where d α ( s ) and d β ( s ) denote the corresponding numbers of catastrophic puncturing patternswith zero weight s (i.e. s zeros), we obtain the output polynomials after OR and AND operationsas: • OR operation: f ( D α ( z ) , D β ( z )) ∆ = D α ( z ) D β ( z ) . (48) • AND operation: f ( α ( z ) , β ( z )) ∆ = D α ( z )(1 + z ) m + D β ( z )(1 + z ) n − D α ( z ) D β ( z ) , (49)where m and n denote the highest degrees of D α ( z ) and D β ( z ) , respectively. Note that (48)and (49) are derived from (45) and (46), respectively. As performed in Section IV-A1, using thebinary tree and the above update rules, we get: Proposition 3:
The weight distribution of the set of catastrophic puncturing patterns for apolarized channel i of a length- N polar code can be computed recursively by D ( N ) i ( z ) ∆ = N (cid:88) s =2 wh ( i ) d ( N ) i ( s ) z s = f [ i ] mod 2 (cid:16) D ( N/ (cid:98) i/ (cid:99) ( z ) , D ( N/ (cid:98) i/ (cid:99) ( z ) (cid:17) , (50)for i ∈ { , , ..., N − } , where D (1)0 ( z ) ∆ = z .For example, from Theorem 3, we can derive the D (4)2 ( z ) = 2 z + 4 z + z , (51)which is well-matched to (42). October 18, 2018 DRAFT2
V. C
ONSTRUCTION OF R ATE -C OMPATIBLE P OLAR C ODE
In this section, we will construct a RC polar code to send k information bits with M variouscode rates R > R > · · · > R M , where a puncturing pattern p Ni is applied to a mother polarcode of length N = k/R M to achieve a target rate R i . For all code rates, a fixed informationset A is used. Also, for the simplicity, it is assumed that N has the form of power of 2. Then,we present the two efficient methods, named greedy and reciprocal constructions, to constructRC polar codes where each puncturing pattern p Ni in the family is non-catastrophic. Algorithm 1
Greedy algorithm to find p N Initialization: A o = { i , . . . , i k } denotes an ordered information set of A with respect to Hamming weight. p N = (0 , . . . , , B p N = φ , and t = 1 . while t ≤ k do for j = 1 , . . . , N : j / ∈ B p N do if Z ( i t ) ( p N + e j ) = 1 then p N = p N + e j (cid:46) e j denotes an unit vector with 1 in the j th location. t = t + 1 and go to else if j=N then p N = p N + e r (cid:46) r is randomly and uniformly chosen from the zero locations in p N t = t + 1 end if end for end while DRAFT October 18, 20183
A. Greedy Construction
The main idea of the greedy construction is as follows:1) Find a possibly minimum weight non-catastrophic p N such that Z ( i ) ( p N ) = 1 for all i ∈ A . (52)Note that if w H ( p N ) > w H ( p N ) , then it is impossible to construct the desired RC polarcode. In this section, it is assumed that w H ( p N ) ≤ w H ( p N ) .2) To obtain a non-catastrophic puncturing pattern p N , we add w H ( p N ) − w H ( p N ) ones tosome zero locations in p N .3) Next, to obtain a non-catastrophic puncturing pattern p N , we add w H ( p N ) − w H ( p N ) onesto some zero locations in p N .4) In general, to obtain a non-catastrophic puncturing pattern p Ni , we add w H ( p Ni ) − w H ( p Ni − ) ones to some zero locations in p N .5) Repeat the above procedures until obtaining all the puncturing patterns in the family.Note that in the above, the locations to add ones are chosen arbitrary (i.e., randomly anduniformly, or via a clever algorithm). Then, the proposed algorithm is established by devel-oping a greedy algorithm to find the p N (see Algorithm 1). In this algorithm, we used an ordered information set A o = { i , . . . , i k } (with respect to a Hamming weight) from A , where w H ( g ( i j )) ≥ w H ( g ( i k )) for any j, k ∈ A o with j ≥ k . This is motivated by the fact that apolarized channel i tends to have more non-catastrophic puncturing patterns as w H ( g ( i )) becomeslarger. Thus, the use of the A o makes it easier to satisfy the condition in line 6 in Algorithm1, by adding fewer ones’ in p N . Eventually, we are able to obtain a lower weight p N to satisfy(52). Note that Algorithm 1 is a randomized algorithm since, when the condition in line 6 inAlgorithm is not satisfied, i.e., we need to add more ones to p N to satisfy the condition, one isadded to an arbitrary zero location of p N . Note that although the use of A o is helpful to find alower weight p N , it does not ensure that Algorithm 1 finds the minimum weight p N . October 18, 2018 DRAFT4
B. Reciprocal Construction
In this section, we construct a family of rate-compatible puncturing patterns p N , ..., p NM − where they are reciprocal. We first focus on the design of p NM − = ( p M − , , ..., p M − ,N − ) . In theproposed approach, the |B N p M − | number of zero locations will be chosen so that the one-coveringproperty in Theorem 1 is satisfied. Then, we design the p NM − by adding the | p NM − | − | p NM − | number of additional zero locations to the p NM − . This process will be continued until constructingall the puncturing patterns in the family. The specific construction methods will be explained asfollows. Define the useful set operation below: Definition 4:
For any i, j ∈ [0 : N − , we say that i ⊥ j if w H ( g ( i ) ⊕ g ( j )) = w H ( g ( i )) + w H ( g ( j )) , where ⊕ denotes a binary addition. Then, for any two index sets M and N , definea set operation as M (cid:1) N = (cid:8) g − ( g ( i ) ⊕ g ( j )) : i ⊥ j, i ∈ N , j ∈ M (cid:9) . Using the above definitions and a given information set A , we derive the ordered sets L ( i ) A , i =0 , ..., n , in a recursive manner as L (0) A = { } ∆ = { i (0)1 }L (1) A = { i ∈ [0 : N −
1] : w H ( g ( i )) = 1 } \ A ∆ = { i (1)1 , ..., i (1) |L (1) A | }L ( j ) A = (cid:16) L ( j − A (cid:1) L (1) A (cid:17) \ A ∆ = { i ( j )1 , ..., i ( j ) |L ( j ) A | } , for j = 2 , ..., n . Then, we define a sequence of length (cid:80) nj =1 |L ( j ) A as I seed ( A ) = (cid:18) i (0)1 , i (1)1 , ..., i (1) |L (1) A | , ..., i ( n )1 , ..., i ( n ) |L ( n ) A | (cid:19) , (53)where this sequence depends on the choice of an information set. Leveraging this sequence, weconstruct the rate-compatible puncturing patterns (equivalently, B p Ni ) as follows:1) The B p NM − is constructed by taking the first |B p NM − | elements of I seed ( A ) . By constructionof L ( i ) A ’s, the corresponding puncturing pattern p NM − is reciprocal and non-catastrophicwith respect to A . DRAFT October 18, 20185
2) Next, the B p NM − is constructed by taking the first |B p NM − | elements of I seed ( A ) . Clearly, B p NM − ⊂ B p NM − , namely, rate-compatibility is satisfied.3) In general, the B p Ni is constructed by taking the first |B p Ni | elements of I seed ( A ) .Note that if |I seed ( A ) | < |B p N | , then it is impossible to construct the desired RC polar code. Inthis case, we need to change the highest code rate. In the following example, we show that thesupportable highest rate is determined as a function of an information set. Example 3:
Suppose that N = 8 (e.g., n = 3 ) and A = { , } . Then we have: L (0) A = { } and L (1) A = { , }L (2) A = ( L (1) A (cid:1) L (1) A ) \ A = { g − ((0 , , ⊕ (0 , , } = { }L (3) A = ( L (2) A (cid:1) L (1) A ) \ A = φ. Then, we have I seed ( { , } ) = (0 , , , . Also, in other example of A = { , } , we have: L (0) A = { } and L (1) A = { , , }L (2) A = ( L (1) A (cid:1) L (1) A ) \ A = { , }L (3) A = ( L (2) A (cid:1) L (1) A ) \ A = φ. Then, we have I seed ( { , } ) = (0 , , , , , . This example shows that the number of possiblepunctured bits varies according to the choice of information set A .VI. N UMERICAL R ESULTS
In this section, we evaluate the performances of the proposed puncturing methods. For thesimulation, AWGN channel and BPSK modulation are assumed.
Length-flexibility:
In this case, a puncturing is performed to construct a polar code whosecode length is not the power of 2. We employed a polar code with N = 128 . To construct thepunctured polar code of N p = 96 , we use the QUP and RQUP in Section III-D for UCM andDCM, respectively. Also, CRC-aided list decoder is used with 8-bit CRC and list-size 8. Fig. 3 October 18, 2018 DRAFT6 -2 -1 0 1 2 3 4 5 6 7 8 9
SNR [dB] -3 -2 -1 F E R R=1/3 R=1/2 R=3/4BLACK: LTE Turbo CodeRED: RC Polar Code (Greedy)BLUE: RC Polar Code (Reciprocal)
Fig. 5. Performance comparisons of RC polar codes and RC Turbo codes. Black lines denotes the performances of the RCTurbo code. Also, red and blue lines denote the performances of the RC polar codes constructed by greedy and reciprocalconstructions, respectively. shows that UCM performs better than DCM at rate 1/3, while vice versa, at rate 3/4. Hence, wecan learn that either UCM or DCM should be carefully chosen according to the code rate of atarget punctured polar code.
Rate-compatible polar code:
Fig. 5 shows the performance comparisons of the proposed RCpolar codes and RC Turbo code. For the simulation, we constructed the two RC polar codes wherewhere one is developed by greedy construction in Section V-A and the other is by reciprocalconstruction in Section V-B. As mother codes, both polar and Turbo codes have the length of256 (e.g., N = 256 ). Also, for polar code, CRC-aided list decoder is used with 5-bit CRC andlist-size 32. Hence, the number of information bits for polar code is 93 while that of Turbo DRAFT October 18, 20187 code is 88. From this simulation, we observe that the proposed RC polar codes outperform theRC Turbo code adopted in LTE. Also, we can see that a low-complexity reciprocal constructionperforms very well. VII. C
ONCLUSION
We derived the boolean expressions of the capacities of polarized channels of finite-lengthpolar codes. Based on this, we provided a guideline to jointly optimize a puncturing and thecorresponding information set, Also, it was shown that for each fixed information set, there existthe catastrophic puncturing patterns that should be avoided to yield a good performance. Fur-thermore, we presented two efficient methods to construct non-catastrophic puncturing patternsfor any fixed information set. Leveraging them, we designed the RC polar codes using non-catastrophic puncturing patterns. Via simulation results, it was demonstrated that the proposedRC polar codes can outperform the RC Turbo code adopted in LTE. Therefore, polar codes canbe a good candidate for 5G channel coding.R
EFERENCES [1] E. Arikan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-inputmemoryless channels,”
IEEE Trans. Inf. Theory, vol. 55, pp. 3051-3073, Jul. 2009.[2] I. Tal and A. Vardy, “List decoding of polar codes,”
IEEE Trans. Inf. Theory, vol. 61, pp. 2213-2226, May 2015.[3] A. Eslami and H. Pishro-Nik, “Practical approach to polar codes,” in
Int. Symp. Inf. Th., pp. 16-20, 2011.[4] K. Chen, K. Niu, and J. Lin, “A hybrid ARQ scheme based on polar codes,”
IEEE Commun. Letters, vol. 17, pp. 1996-1999,2013.[5] R. Wang and R. Liu, “A novel puncturing scheme for polar codes,”
IEEE Commun. Lett., vol. 18, no. 12, pp. 2081-2084,Dec. 2014.[6] D.-M. Shin, S.-C. Lim, and K. Yang, “Design of length-compatible polar codes based on the reduction of polarizingmatrices,”
IEEE Trans. Commun., vol. 61, no. 7, pp. 2593-2599, Jul. 2013.[7] K. Niu, K. Chen and J.-R. Lin, “Beyond turbo codes: rate-compatible punctured polar codes,” in
Proc. IEEE Int. Conf.Commun. (ICC),
Budapest, Hungary, Jun. 2013.[8] L. Zhang, Z. Zhang, X. Wang, Q. Yu, and Y. Chen, “On the Puncturing Patterns for Punctured Polar Codes,” in
Proc. IEEEInt. Symp. Inf. Theory (ISIT)
Huawaii, USA, Jul. 2014.
October 18, 2018 DRAFT8 [9] H. Saber and I. Marsland, “An incremental redundancy hybrid ARQ scheme via puncturing and extending of polar codes,”
IEEE Trans. Commun., vol. 63, no. 11, pp. 3964-3973, Nov. 2015.[10] V. Miloslavskaya, “Shortened Polar Codes,”
IEEE Trans. Inf. Theory, vol. 61, pp. 4852-4865, Sep. 2015.[11] S. Korada, “Polar codes for channel and source coding,” Ph.D. thesis, E’cole Polytechnique Fe’de’rale de Lausanne (EPFL),2009.[12] G. Sarkis, I. Tal, P. Giard, A. Vardy, C. Thibeault, and W. J. Gross, “Flexible and low-complexity encoding and decodingof systematic polar codes,”
IEEE trans. on commun., vol. 64, no. 7, pp. 2732-2745, Jul. 2016.[13] V. Bioglio, F. Gabry and I. Land, “Low-Complexity Puncturing and Shortening of Polar Codes,” in