Design of Polar Code Lattices of Small Dimension
Obed Rhesa Ludwiniananda, Ning Liu, Khoirul Anwar, Brian M. Kurkoski
DDesign of Polar Code Lattices of Small Dimension
Obed Rhesa Ludwiniananda , Ning Liu , Khoirul Anwar , and Brian M. Kurkoski Telkom University, Bandung, Indonesia Japan Advanced Institute of Science and Technology, Nomi, Ishikawa, Japan
Abstract —Polar code lattices are formed from binary polarcodes using Construction D. In this paper, we propose a designtechnique for finite-dimension polar code lattices. The dimension n and target probability of decoding error are parameters for thisdesign. To select the rates of the Construction D component codes,rather than using the capacity as in past work, we use the explicitfinite-length properties of the polar code. Under successivecancellation decoding, density evolution allows choosing coderates that satisfy the equal error probability rule. At an error-rate of − , a dimension n = 128 polar code lattice achievesa VNR of 2.5 dB, within 0.2 dB of the best-known BCH codelattice, but with significantly lower decoding complexity. I. I
NTRODUCTION An n -dimensional lattice Λ is a discrete additive subgroupof the n -dimensional Euclidean space R n . In communica-tions applications, lattices can provide shaping gain, andare integral to certain Gaussian network coding approachesincluding compute-forward relaying [1] and integer-forcingMIMO [2]. Low-dimension lattices with n ≤ have beenwell understood for some time [3], and recently results onlattices with dimension n ≥ have appeared [4] [5].However, there has been relatively little study of good latticeswith < n < , which is relevant for low-latencycommunications.Construction D builds lattices from two or more componentcodes, which are linear binary codes. Polar code lattices areappealing because the lattice inherits the good properties ofthe underlying polar codes. Liu et al. showed that polar codelattices are AWGN good, and can achieve the capacity of theAWGN channel [4].Polar codes have flexibility in rate selection, which isimportant for good lattice design. As far as we know, theonly existing design of a finite-dimension lattice is by Liu etal.; a dimension n = 1024 polar code lattice [4]. The designwas guided by channel capacity, but the actual design differednoticeably from what would be predicted by capacity. In highdimension, it is reasonable to use channel capacity as designguidance, but this breaks down when considering small andmedium-dimension lattices. Questions still remain about thebest way to design finite dimension polar code lattices.As a multi-level construction, Construction D lattices canbe designed using the decoder error rates for the componentcodes, under the equal error probability rule [6]. This has alsobeen used to design Construction D’ lattices based on LDPC This work was supported by JSPS Kakenhi Grant Number JP 19H02137.This work is also the output of the ASEAN IVO project, PATRIOT-41R-Net,financially supported by NICT, Japan. codes [5]; the shortcoming is that Monte Carlo simulations areslow and time-consuming. However, for binary polar codeswith successive cancellation decoding, decoder error rates canbe obtained using density evolution [7].This paper contributes a design technique for polar codelattices of finite dimension. As a Construction D lattice, thechallenge is to select the rates of the component codes thatgive the best lattice properties. Rather than using the capacity,we use the explicit finite-length code properties in the design.For a code of block length n , we define ρ as the code ratesuch that its decoder achieves a given target error rate, asa function of the channel noise σ . This allows systematicand efficient design of polar code lattices for a target errorrate. Under successive cancellation decoding, the ρ functionis found efficiently using density evolution. The function ρ ,based on finite-length code properties, has an S-shape whichis characteristic of a channel capacity curve.Under successive cancellation decoding, a dimension n =128 and n = 256 polar code lattice achieves VNR of . dBand . dB respectively, at WER of − . Under successivecancellation list decoding, a dimension n = 128 polar codelattice achieves VNR of . dB. This is within . dB of thebest-known n = 128 BCH code lattice [8], and SCL decodingcomplexity is significantly lower than OSD decoding.II. C
ONSTRUCTION
D L
ATTICES
A. Construction D Lattice
Construction D is a type of lattice construction [3] [9].Construction D uses multiple nested binary codes to producea multilevel construction [10]. Let C ⊆ C ⊆ · · · ⊆ C a − ⊆ C a = F n be nested binary linear codes with generator matrices ˜G , · · · , ˜G a − , ˜G , respectively. Code C i is an ( n, k i ) binarywith code rate R i = k i /n , and the code nesting gives: R ≤ R ≤ · · · ≤ R a k ≤ k ≤ · · · ≤ k a Construction D lattice Λ consists of all vectors of the form x = a − (cid:88) i =0 i (cid:101) G i · u i + 2 a (cid:101) G · z , (1)where z ∈ Z n and u i = ( u ,i , u ,i ··· , u ki,i ) t , i ∈ , , ..., a − and u j,i ∈ { , } are information bits; operations are over the The block length of a code and the dimension of a lattice are both denoted n ; for any design the block length of code is the dimension of the lattice. a r X i v : . [ c s . I T ] F e b ig. 1. Encoder, channel and multistage decoder for Construction D real numbers and not the binary field. The full Construction Dsystem of encoder, channel and decoder is depicted in Fig. 1. B. Construction D Generator Matrix
The Construction D generator matrix is constructed using (cid:101) G , a specific basis for F n , and k , k , ..., k a − . The Construc-tion D generator matrix G is given by: G = (cid:101) G · D − , (2)where D is a diagonal matrix with diagonal entries d ii : d ii = 2 − k for r k − ≤ i ≤ r k (3)with k = 0 , , ..., a . C. VNR and Channel Model
For Construction D, the lattice volume V (Λ) = | det( G ) | is V (Λ) = 2 an − n (cid:80) a − i =0 R i . (4)The unconstrained power channel is used in this paper, wherean arbitrary x ∈ Λ is transmitted over an AWGN channel withnoise power σ , and received as y . This allows evaluating thecoding properties of the lattice without considering a specificshaping constellation. Instead of a transmit power constraint,the lattice is constrained by the volume of the Voronoi region.The volume-to-noise ratio (VNR) isVNR = V (Λ) /n πeσ . (5)so that VNR is the distance to the Poltyrev limit. D. Decoding for Construction D
Construction D decoding uses successive cancellation de-coding, decoding C first, then C , C , . . . in order (not tobe confused with successive cancellation decoding of polarcodes). Before the component code decoding, a modulo oper-ation is performed to preserve distances to (0,1)mod ∗ ( y i ) = (cid:12)(cid:12) mod ( y i + 1) − (cid:12)(cid:12) (6)The result of modulo operation is the input to a binarypolar code decoder. The decoder produces an estimate of the information bits ˆu i and to obtain ˆx i use re-encodingwith generator matrix ˆx i = G i · ˆu i As at the encoder side,multiplication is over the reals. This estimate ˆx i is subtractedfrom the input, and this is divided by 2, y i +1 = y i − ˆ x i Theestimated lattice point is ˆx = ˆx +2 ˆx + · · · +2 a − ˆx a − +2 a ˆz .III. P OLAR C ODE L ATTICES
A. Polar Codes and Density Evolution
Polar codes were introduced by Arıkan [11]. They provablyachieve the symmetric capacity of binary input discrete mem-oryless channels with a low complexity decoder. Polar codesof block length n have two types of bits, k information bits I ⊂ { , , . . . , n } and n − k frozen bits; the rate is R = k/n .Successive cancellation (SC) decoding makes an estimate forbit position u j using hard decisions or frozen bits (cid:98) u j − andthe recursive LLR computation: L (2 j − n ( y n , (cid:98) u j − ) = 2 tanh − (cid:18) tanh( α n,j · tanh( β n,j (cid:19) L (2 j ) n ( y n , (cid:98) u j − ) = ( − (cid:98) u j − α n,j + β n,j where α n,j = L ( j ) n/ ( y n/ , (cid:98) u j − , even + (cid:98) u j − , odd ) ,β n,j = L ( j ) n/ ( y nn/ , (cid:98) u j − , even ) . Polar code design assigns the position of information bitsand frozen bits to indices. Mori and Tanaka described howto design polar codes using density evolution [7], under SCdecoding. Under the assumption of a symmetric channel, anal-ysis of the all-zeros codeword is sufficient. Let the probabilitydensity function of the memoryless channel LLR message be a (1)1 ( x ) . Then the densities may be calculated as: a (2 j )2 n ( x ) = ( a ( j ) n (cid:63) a ( j ) n )( x ) a (2 j − n ( x ) = ( a ( j ) n (cid:24) a ( j ) n )( x ) , for j = 1 , , . . . , n where (cid:63) is standard convolution forthe variable node and (cid:24) is specific check node convolutionoperation [12, p. 181] For a block length n polar code, thedistribution a ( j ) n ( x ) = Pr( L j = x | (cid:98) u j − = 0) is used to make ahard decision in position j . The probability of error in position j given positions to j − are correct is: p j = (cid:90) −∞ a ( j ) n ( x ) dx. (7)The information bits I are selected to be the k positions withthe k smallest values of p j . B. Polar Code Lattices
Polar code lattices are formed using a ≥ polar codes C , . . . , C a − [4]. The polar code generator matrices satisfythe requirement for Construction D if the polar codes satisfythe nesting condition, C ⊆ C ⊆ · · · ⊆ C a . For each polarcode C i the information set is I i . Then, a sequence of polarcodes can be used to form a polar code lattice if I ⊆ I ⊆ ig. 2. Equivalent encoder, channel and decoder for multilevel decoding ofConstruction D assuming each level is decoded successfully. · · · ⊆ I a . Thus, the information set structure can naturallyform the subcodes needed for Construction D. Example 1:
Consider a basis for F given by (cid:101) G , and nestedbinary codes with k = 2 , k = 3 , with generator matrices (cid:101) G and (cid:101) G , given as: (cid:101) G = ( G m ) t (cid:101) G = (8) (cid:101) G = and (cid:101) G = . From Construction D definition with a = 2 , a lattice pointsatisfies x = (cid:101) G · u + 2 (cid:101) G · u + 4 (cid:101) G · z , (9)where u = [ u , , u , ] t and u = [ u , , u , , u , ] t are binaryvectors and z ∈ Z . C. Equal Error Probability Rule Design Method
Due to the multilievel structure of the decoder, level i is decoded successfully only if level i − was decodingsuccessfully. Assuming successful decoding at all levels, eachlevel can be seen as coding over independent channels; Fig. 2shows Enc and Enc as an illustration of Example 1. Eachchannel is a modulo AWGN channel called AMGN (additivemodulo Gaussian noise) channel. The channel noise variancesare σ , σ / , σ / . . . for level i = 0 , , , . . . , respectively.A lattice decoder error is the event that (cid:98) x (cid:54) = x , and P e isthe probability of this event (also, word error rate (WER) is P e ). Let P e ( C i , σ ) be the probability of decoder error for C i when used on the AMGN with noise variance σ . Then bythe union bound: P e ≤ P e ( C , σ ) + P e ( C , σ · · · + P e ( C a , σ a ) . (10) The equal error probability rule was given by Wachsmannet al. for the design of multilevel codes [6], and ConstructionD lattices are a special case of a multilevel code. Under theequal error probability rule, the codes C i are selected suchthat P e ( C i , σ i ) are equal.Using n = 1024 and a = 2 , Liu et al. gave a polarcode lattice design with ( R , P e ( C )) = (0 . , · − ) , ( R , P e ( C )) = (0 . , · − ) , and ( R , P e ( C )) = (1 , · − ) . This design achieved VNR of . dB for P e = 10 − (and VNR ≈ . dB for P e = 10 − ) [4]. These code ratesdiffer noticeably from those predicted by a capacity-orienteddesign, due to capacity losses at finite length.IV. P ROPOSED D ESIGN M ETHOD
In this section we describe the proposed polar code latticedesign, which explicitly uses the finite-length properties ofpolar codes with the equal error probability rule. A. ρ Function for Binary Polar Codes
Consider a binary polar code C on the σ AMGN channeland a target decoder error rate of P trgt . As the code rateincreases, the SNR = 1 /σ needed to achieve a given word-error rate also increases. Equivalently as k increases, the valueof σ needed to achieve P e will decrease.This tradeoff is expressed by a function ρ . Given σ , let ρ ( σ , P trgt ) be the greatest code rate such that the decoderword-error rate P e ( C, σ ) is not greater than a target errorrate P trgt . When n is small, P e ( C, σ ) may be noticeably lessthan P trgt because k is an integer. Evidently, the function ρ depends on the decoding algorithm, the number of CRC bits,and the method to select the frozen bits.For polar codes with successive cancellation decoding, ρ may be found by density evolution. Since the AMGN channelis symmetric, density evolution assuming the all-zeros code-word is sufficient. Recall that p j is the error rate for bit position j assuming that positions to j − are correct, see (7) and I is the set of information bit positions. Then the probabilityof word error under density evolution for polar code C is: P e ( C, σ ) = 1 − (cid:89) j ∈I (1 − p j ) . For a fixed channel, ρ is equal to the rate R such that thedecoder error rate P e ( C, σ ) under density evolution is as highas possible while satisfying P e ( C, σ ) ≤ P trgt .For other decoders for which density evolution is notfeasible, such as successive cancellation list decoding, ρ maybe found by Monte Carlo simulations. For a given number ofinformation bits k find the noise variances σ which producedecoder error rates both above and below P trgt . Interpolationmay helpful in improving the estimate of σ which will resultin P trgt .The function ρ is shown in Fig. 3. For successive cancella-tion decoding, n = 128 , . . . , are shown for a target errorrate of P trgt = − . For SCL decoding with list size 8 and10 CRC bits, n = 128 is shown for P trgt = 10 − . As expected,SC decoding requires lower rates (smaller k ) to achieve the (dB) C ode R a t e AMGN Channel CapacitySC Decoding N=2048SC Decoding N=1024SC Decoding N=512SC Decoding N=256SC Decoding N=128SCL Decoding N=128K with 6dB gap (SC N=128)
Fig. 3. The function ρ ( σ , P trgt ) is the rate R for a polar code to achieveSCL decoder P trgt = 10 − and SC decoder P trgt = − on a AMGNchannel with noise σ . The SCL decoder uses 10 CRC bits and decoder listsize 8. target P e . Also shown is the capacity of the AMGN channel[4, Fig. 6] [6, Fig. 7]. Interestingly, the ρ curve exhibits thesame S-shape characteristic of the capacity curve. B. Design of Polar Code Lattices
To design a polar code lattice of dimension n , the goal is tochoose k , . . . , k a − , or equivalently rates R , . . . R a − suchthat the polar code lattice has the lowest possible VNR fora target probability of word error P e . Under the equal-errorprobability rule, each component code C , C , . . . , C a shouldhave equal error rates P trgt when decoding on its respectiveequivalent channel. Each layer sees an AMGN channel asdescribed in Section III. Let σ , σ , · · · be the AMGN noisevariance for level i = 0 , , · · · .The ρ function for a polar code of block length n is usedto design a polar code lattice of dimension n with a designedlattice error rate of P e . Following the union bound (10), choose P e = ( a + 1) P trgt for an a -level lattice. Under the equalerror probability rule, we allow P e ( C i , − i σ ) ≈ P trgt , for i = 0 , , . . . , a .Let σ a = 4 − a σ be the noise variance for which the decoderat level a achieves P trgt . Since this is the uncoded level, k a = n : σ a = ρ − ( n, P trgt ) (11)The probability of error in level a can be computed explicitly[5, eqn. (5)], and the inverse of this function gives: σ a = 18 · (cid:0) erfc − (1 − n (cid:112) − P trgt ) (cid:1) , (12)where erfc − is the inverse of the complementary error func-tion. TABLE IP
OLAR CODE LATTICE DESIGNS UNDER SC DECODING AND P E = 10 − . n = 64 n = 128 n = 256 n = 512 n = 1024 k k
40 88 192 410 866 k
64 128 256 512 1024 σ a Once σ a is fixed, use the function ρ to find R i for i =0 , . . . , a − : R i = ρ (4 a − i σ a , P e ) . (13)This results in nested binary codes C , . . . , C a − that formsa polar code lattice.V. D ESIGN E XAMPLES
In this section, we use the proposed design method and giveexamples of polar code lattices with a = 2 , evaluate their errorrate and complexity. A. Polar Code Lattices Under SC Decoding
Under SC decoding, design a polar code lattice with a = 2 , n = 128 and a target error rate P e = 10 − . Since a = 2 ,using P trgt = − and (12) to find σ = 0 . , whichis . dB. Let σ i be the noise seen in the equivalent AMGNchannel in level i , as shown in Fig. 2. Continuing the designprocedure, we seek k for which σ has a 6 dB gap from σ , and similarly we seek k for which σ has a 6 dB gapfrom σ (6 dB gap corresponds to the factor of 4). Since σ = 20 . dB, from Fig. 3, we obtain the design of k = 7 at 8.26 dB and k = 88 at 14.26 dB.Table I shows polar code lattice designs for various dimen-sions n , based on density evolution result in Fig. 3. The targeterror rate is P e = 10 − . B. Polar Code Lattices Under SCL Decoding
Successive cancellation list (SCL) decoders are considered.SCL decoding has good performance-complexity trade-off,but CRC bits are needed. In the short block-length regime,selecting the number of CRC bits is particularly important tothe performance of the SCL decoder; the number of CRC bitsare chosen to balance the tradeoff between reliability and coderate [13].We use the polarization weight method [14] to allocatefrozen bits, this is a channel-independent approximationmethod [15]. For this method, the information bits satisfy I ⊆ I ⊆ · · · ⊆ I a , thus the subcode condition neededby Construction D is met.The design to obtain k and k is similar to the SC design.Density evolution is not suitable for SCL decoding due tolist decoding. For this design we target P e = 3 · − , so P trgt = 10 − and σ corresponds to . dB. From Fig 3, weobtain the designs of k = 7 at . dB and k = 95 at . dB. VNR (dB) -5 -4 -3 -2 -1 W E R Polar lattice with SC - n = 128Polar lattice with SC - n = 256Polar lattice with SCL - n = 128BCH lattice with OSD (1,4) - n = 128
Fig. 4. WER on the unconstrained power channel, comparison between n =128 BCH code code lattice with OSD decoding [8] and n = 128 , polarcode lattices with SC decoding and SCL decoding (SCL with CRC-6 and listsize 128). C. Evaluation by Simulation
We evaluated these polar code lattices with their respectivedecoders by simulation, WER is shown in Fig. 4. For SCdecoding, the n = 128 polar code lattice achieves a VNR of . dB. The n = 256 polar code lattice achieves a VNR of . dB under similar conditions. For SCL decoding, the polar codelattice achieves a VNR of . dB with 6 CRC bits and list size L = 128 . For reference, the WER of the (128 , , (128 , BCH code lattice with order-(1,4) OSD decoding achieves aVNR of . dB [8], all at a WER or P e = 10 − . D. Performance-Complexity Trade-off
While polar code lattices comes within 0.2 dB of theBCH code lattice, OSD decoding [16] of BCH lattices hassignificantly higher complexity. SCL decoding with list size L complexity scales as O ( Ln log n ) while order- l OSD decodingcomplexity is proportional to (cid:80) li =0 (cid:0) ki (cid:1) .However, for fixed n , we compare complexity by evaluatingthe wall clock time, the complexity as measured by the averagerunning time to decode one codeword. Fig. 5 shows the wallclock time versus VNR to achieve WER of − . We found thewall clock time of OSD decoding with order (1,3) and (1,4);the wall clock time of SCL decoding is evaluated with listsizes 4, 8, 16, 32, and 128. The result shows OSD has higherwall clock time than SCL. OSD with order (1,3) requires1.763 seconds/codeword and order (1,4) requires 140.738seconds/codeword. The wall clock time for SCL with list size L = 4 with 0.023 seconds/codeword and the wall clock timewith list size L = 128 in 0.519 seconds/codeword. The SCLdecoding with L = 128 is better than OSD order (1,3) in both VNR to achieve 10 -4 WER (dB) -2 -1 W a ll c l o ck t i m e ( s ) OSD DecoderSCL Decoder
Order (1, 4) List = 8 List = 4List = 16List = 32Order (1, 3)List = 128
Fig. 5. Performance (VNR to achieve P e = 10 − ) vs complexity (wall clocktime) for OSD decoding and SCL decoding. wall clock time and VNR, and it has lower wall clock timethan OSD order (1,4), although the performance is worse for0.177 dB gap. VI. C ONCLUSION
Polar code lattices can be designed in small dimensionregime, using the equal error probability rule applied to afunction ρ , which expresses the greatest rate which achievesa target P e . To find the function ρ , density evolution is moreefficient than Monte Carlo simulations.While capacity-based design [4] can be used to design large-dimensional polar code lattices, this technique is not sufficientfor small dimensions. As can be seen from Fig. 3, there is asignificant gap between capacity and finite-length rates.The equal-error probability rule has already been used todesign Construction D’ lattices based on LDPC codes [5];the challenge is that Monte Carlo simulations are slow andtime-consuming. For polar codes with successive cancellationdecoding, density evolution allows obtaining probability oferror quickly and efficiently.R EFERENCES[1] B. Nazer and M. Gastpar, “Compute-and-forward: Harnessing interfer-ence through structured codes,”
IEEE Trans. on Inf. Theory , vol. 57,no. 10, pp. 6463–6486, Oct. 2011.[2] J. Zhan, B. Nazer, U. Erez, and M. Gastpar, “Integer-forcing linearreceivers,”
IEEE Trans. on Inf. Theo. , vol. 60, pp. 7661–7685, 2014.[3] J. H. Conway and N. J. A. Sloane,
Sphere packings, lattices and groups .Springer Science & Business Media, 2013, vol. 290.[4] L. Liu, Y. Yan, C. Ling, and X. Wu, “Construction of capacity-achievinglattice codes: Polar lattices,”
IEEE Transactions on Communications ,vol. 67, no. 2, pp. 915–928, 2019.5] P. R. Branco da Silva and D. Silva, “Multilevel LDPC lattices withefficient encoding and decoding and a generalization of constructionD’,”
IEEE Transactions on Information Theory , vol. 65, no. 5, pp. 3246–3260, 2019.[6] U. Wachsmann, R. F. Fischer, and J. B. Huber, “Multilevel codes:theoretical concepts and practical design rules,”
IEEE Transactions onInformation Theory , vol. 45, no. 5, pp. 1361–1391, July 1999.[7] R. Mori and T. Tanaka, “Performance of polar codes with the construc-tion using density evolution,”
IEEE Communications Letters , vol. 13,no. 7, pp. 519–521, 2009.[8] T. Matsumine, B. M. Kurkoski, and H. Ochiai, “Construction D latticedecoding and its application to BCH code lattices,” in , 2018, pp. 1–6.[9] E. S. Barnes and N. J. A. Sloane, “New lattice packings of spheres,”
Canadian Journal of Mathematics , vol. XXXV, no. 1, pp. 117–130,1983.[10] H. Imai and S. Hirakawa, “A new multilevel coding method using error-correcting codes,”
IEEE Transactions on Information Theory , vol. 23,no. 3, pp. 371–377, May 1977.[11] E. Arikan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels,”
IEEETransactions on Information Theory , vol. 55, no. 7, pp. 3051–3073,2009.[12] T. J. Richardson and R. Urbanke,
Modern Coding Theory . New York,NY, USA: Cambridge University Press, 2008.[13] T. Murata and H. Ochiai, “On design of CRC codes for polar codeswith successive cancellation list decoding,” in
International Symposiumon Information Theory . Aachen, Germany: IEEE, June 2017, pp. 1868–1872.[14] Y. Zhou, R. Li, H. Zhang, H. Luo, and J. Wang, “Polarization weightfamily methods for polar code construction,” in , 2018, pp. 1–5.[15] O. Ludiwiniananda Handoko, K. Anwar, and B. Syihabuddin, “Inves-tigating Bhattacharyya parameters for short and long polar codes inAWGN and Rayleigh fading channels,” in , Bandung, Indone-sia, July 2019.[16] M. P. Fossorier and S. Lin, “Soft-decision decoding of linear block codesbased on ordered statistics,”