Polar codes have been proved to achieve the capacity by the successive cancellation (SC) decoding as the code length goes to infinity . However, when the code length is small or medium, the performance is unsatisfying. Thus, successive cancellation list (SCL) decoding [2, 3] is introduced to improve the performance of polar codes. Furthermore, the performance is improved by the CRC-aided SCL (CA-SCL) decoding , which introduces the CRC detector into the SCL decoding. Based on the CA-SCL, Li et al. propose adaptive SCL (ADSCL) decoding which makes a trade-off between performance and complexity .
Although the list decoding of polar codes has a satisfying performance, it cannot achieve the maximum likelihood (ML) performance with small or medium list size. To reach the ML performance, sphere decoding (SD) algorithm of polar codes is first proposed in  with a cubic complexity . Then, the CRC codes are considered into SD and CRC-aided SD (CA-SD) algorithm  is proposed to achieve the ML performance of the CRC-polar concatenated codes. However, even though some methods, such as optimizing the path metric  and the radius constraint , are used to reduce the complexity, it is still high for short code length. Then, the List-SD algorithm  proposed with the idea of SCL decoding is also a trade-off between performance and complexity.
Furthermore, to improve the ML performance and approach the finite blocklength capacity, polarization-adjusted convolutional (PAC) codes with the Reed-Muller design rule are proposed by , but the code rate is fixed as .
In this letter, the performance limits of short polar codes are explored. Interestingly, we find that the ML performance of a simple CRC-polar concatenated scheme can approach the finite blocklength capacity. Then, a CRC-aided hybrid decoding (CA-HD) algorithm for short CRC-polar concatenated codes is proposed so as to approach ML decoding with a low average complexity. The decoding process of CA-HD is divided into two steps. In the first step, ADSCL is used to decode the received sequence. In the second step, when the ADSCL decoding is failed and the maximum list size is reached, CA-SD with a reasonable initial radius is started to correct the decoding errors. In order to facilitate the decoder switching from ADSCL to CA-SD, the CRC bits of the survival paths in ADSCL are first recalculated to make the survival paths passing the CRC detection. Then, the initial radius of CA-SD is set to the minimum Euclidean distance between the CRC-recalculated survival path and the received sequence.
Moreover, since most of the received sequences are decoded correctly in the first step and the reasonable initial radius can reduce the average decoding complexity of CA-SD in the second step, CA-HD has a low average decoding complexity and is useful to evaluate the ML performance. The simulation results show that the average complexity of the CA-HD is close to that of the ADSCL with short code length as the signal-to-noise ratio (SNR) increases. Particularly, we find that the CRC-polar concatenated codes with code length and code rate can achieve within about dB of the finite blocklength capacity at the block error ratio (BLER) .
The remainder of the paper is organized as follows. Section II describes the preliminaries of CRC-polar concatenated codes and gives a description of SCL decoding, ADSCL decoding, and CA-SD. Then, the CA-HD is addressed in Section III. Section IV provides the simulation results of different decoding algorithms and presents the decoding complexity comparison. Finally, Section V concludes the letter.
Notation Conventions: In this letter, scalars are denoted by the lowercase letters (e.g., ). The bold lowercase letters (e.g.,
) are used to denote vectors. Notationdenotes the subvector and denotes the -th element of . The calligraphic characters, such as , are used to denote sets. The bold capital letters, such as , denote matrices and the element in the -th row and the -th column of the matrix is written as . Throughout this letter, means an all-one vector and means “logarithm to base 2”.
Ii-a CRC-Polar Concatenated Codes
For an CRC-polar concatenated code with code length and code rate , the message sequence is first encoded by a CRC code, and the CRC bits are attached to the end of message sequence, where is the length of message sequence, is the length of CRC bits and is . Given the CRC generator polynomial , the polynomial of the CRC encoded sequence is denoted by
where is the polynomial of message sequence .
Then, is treated as the information bits of an polar code and inserted into the information sequence in terms of the information set , where is an -length sequence and is assigned to information bit if , or 0 if . Furthermore, a codeword of the polar code is calculated by , where is a bit-reversal permutation matrix, is , is an -th Kronecker power of and is .
Without loss of generality, the BI-AWGN channel and BPSK modulation are considered in this letter. Thus, each coded bit is modulate into the transmitted signal by . Then, the received sequence is , where
is i.i.d. AWGN with zero mean and variance. Thus, the SNR is defined as , i.e.,
where is the energy of the transmitted signal and is the one-sided power spectral density of the noise.
Ii-B SCL Decoding and ADSCL Decoding
Polar codes can be decoded by the SC decoding algorithm with the decoding complexity . Although SC decoding can achieve the channel capacity with the infinite code length, its performance is unsatisfied for the short or medium code length.
Thus, the SCL decoding is proposed and its decoding process is similar to the SC decoding except keeping at most survival paths. When an information bit is decoded, the -th survival path is split into two paths with attempting and , where is the -th decoded bit of the -th survival path. Then, when the number of paths is larger than , the best paths are reserved and other paths are discarded. Furthermore, by introducing the CRC detector and the maximum list size , ADSCL is proposed to make a trade-off between performance and complexity.
Ii-C CA-SD Algorithm
ML decoding of CRC-polar concatenated codes is equivalent to the minimization problem as follows
CA-SD can solve (3) by means of enumerating the sequence satisfying the constraint
where the elements of the set can pass the CRC detection and is the radius for the CA-SD. To make sure , the bits of are divided into information bits, frozen bits and parity check bits, where parity check bits are directly computed by the previous decoded bits to avoid the redundant search.
Iii CA-HD Algorithm
In this section, we first introduce the decoder structure of CA-HD. Then, the details of CA-HD are described.
Iii-a Decoder Structure
The decoder structure of CA-HD is illustrated in Fig. 1. In Fig. 1, the received sequence is first decoded by the ADSCL with the maximum list size . During the ADSCL, when a survival path can pass the CRC detection, this path is regarded as the decoded sequence and the CA-HD is finished. Otherwise, if is reached and no paths can pass the CRC detection, CA-SD is used to decode , where the initial radius is calculated by the survival paths.
Iii-B Detailed Description
For the ADSCL, it begins from the SCL with list size . Then, if no survival paths can pass the CRC detection, is set to , and the received sequence is decoded by SCL continuously until passing CRC detection or larger than . The path metric in the ADSCL based on log likelihood ratio (LLR)  is computed as
where is the LLR of .
For the CA-SD, CRC is used to improve the distance spectrum of polar codes rather than detecting error. Then, since is an -th Kronecker power of , it is a lower triangular matrix. Thus, the partial square-Euclidean distance along with is defined as
which is recursively calculated as
where ‘’ denotes summation over . Therefore, according to (7), the search order of CA-SD is from to . When a valid sequence satisfying (4) is found, the radius is updated with and CA-SD continues until we find the ML solution.
The process of optimizing the initial radius is described in line to line of Algorithm 1. A reasonable initial radius should make sure that at least one information sequence passing the CRC detection can satisfy the radius constraint of the CA-SD, i.e,
where the elements of the set can pass the CRC detection and is an initial radius. However, since the survival paths of ADSCL cannot pass the CRC detection when ADSCL is failed, the initial radius calculated by the survival paths directly is unreasonable. This means that if the initial radius is assigned based on the survival path, there will be no information sequence satisfying the radius constraint (8). Thus, using this assignment, CA-SD cannot find the ML sequence.
In order to obtain a reasonable initial radius, should be modified to make . A simple method is to revise the CRC bits of . To calculate the new CRC bits, we first obtain the decoded message sequence from according to . Then, is encoded into by (1) and the new CRC bits are the last bits of . Next, the CRC bits of are replaced by these new CRC bits and the newly survival path is denoted by . Due to , the initial radius calculated by it is reasonable. Thus, the optimized initial radius of CA-SD is
Iv Performance Evaluation
In this section, the BLER performance and the complexities of CA-HD, CA-SD, CA-SCL, and ADSCL are provided. We also provide the normal approximation of the finite blocklength capacity of BI-AWGN channel , i.e.,
where is the channel capacity, is the channel dispersion and
is the error probability. The Gaussian approximation (GA) is applied to construct polar codes. The maximum list size in ADSCL decoding and CA-HD is set as . The list sizes of CA-SCL are 8 and 32
Table I provides the optimized CRC polynomials for short polar codes with code length , code rate and CRC length , where is denoted as a vector , is the minimum Hamming weight and is the number of the codewords with . The CRC polynomial is optimized by brute-force searching and of the CRC-polar concatenated codes.
Fig. 2 illustrates the BLER performance of CA-HD, CA-SD, CA-SCL and ADSCL with code length and code rates , and . For the three code rates, the performance of CA-HD is better than that of ADSCL and CASCL. In addition, it coincides with the performance of CA-SD, which means the proposed CA-HD can approach the ML performance. Moreover, when is , the performance of CA-HD can approach the finite blocklength capacity. When is , the BLER curve of CA-HD is close to the finite blocklength capacity in the low to medium SNR regions and the performance gap between the two curves becomes larger with the increase of SNR. When is , the performance of CA-HD is close to the finite blocklength capacity in the low SNR region only.
Fig. 3 provides the BLER performance with and the three code rates. For the three code rates, the trend of CA-HD performance with is similar to that with . Then, the comparison between CA-HD and PAC codes  with is also provided. The performance of the CA-HD is almost the same as that of and the PAC code in the low to medium SNR region, but the performance gap between the two curves becomes larger as the SNR increases and the performance of CA-HD is better in the high SNR region. Specifically, at the BLER and , the performance of the CA-HD is better than that of the PAC code.
Interestingly, when is and is , the performance gap between the CA-HD and the finite blocklength capacity is about dB at the BLER . Further, we find that the CA-HD with and can achieve within about dB of the finite blocklength capacity at the BLER . To the best of our knowledge, this result is the first example close to the finite blocklength capacity so much.
Fig. 4 shows the complexities of the four decoding algorithms with and the three code rates. The complexity is counted by the average visited nodes (AVN). The AVN of ADSCL and CA-SCL are counted as and , respectively, where is the average list size of ADSLC and or is the list size of CA-SCL. It is observed that for the three code rates, the complexity of CA-HD is located between the complexities of ADSCL and CA-SD. Then, it approaches the complexity of ADSCL as the SNR increases and is lower than that of CA-SCL in the high SNR region. Moreover, although CA-HD and CA-SD both achieve the ML performance, the average complexity of CA-HD is up to times lower than that of CA-SD. The reasons are that most of the received sequences can be decoded correctly in the first step and the reasonable initial radius can reduce the average decoding complexity of CA-SD in the second step. Thus, the average complexity of CA-HD is close to that of ADSCL and lower than that of CA-SCL, which makes CA-HD useful to evaluate the ML performance of short polar codes.
In this letter, we explore the performance limits of short polar codes and propose a CA-HD algorithm to approach the ML performance. The performance of CA-HD coincides with that of CA-SD and a lower average complexity. Thus, it is useful to evaluate the ML performance of short polar codes. The simulation results show that CA-HD can achieve within about dB of the finite blocklength capacity at BLER with code length and code rate .
-  E. Arıkan, “Channel polarization: A method for constructing capacity achieving codes for symmetric binary-input memoryless channels,” IEEE Trans. Inf. Theory, vol. 55, no. 7, pp. 3051–3073, Jul. 2009.
-  I. Tal and A. Vardy, “List decoding of polar codes,” IEEE Trans. Inf. Theory, vol. 61, no. 5, pp. 2213–2226, May. 2015.
-  K. Chen, K. Niu, and J. R. Lin, “List successive cancellation decoding of polar codes,” Electron. Lett., vol. 48, no. 9, pp. 500–501, 2012.
-  K. Niu and K. Chen, “CRC-aided decoding of polar codes,” IEEE Commun. Lett., vol. 16, no. 10, pp. 1668–1671, Oct. 2012.
-  B. Li, H. Shen and D. Tse, “An Adaptive Successive Cancellation List Decoder for Polar Codes with Cyclic Redundancy Check,” IEEE Commun. Lett., vol. 16, no. 12, pp. 2044–2047, December 2012.
-  S. Kahraman and M. E. Celebi, “Code based efficient maximum-likelihood decoding of short polar codes,” in Proc. 2012 IEEE Int. Symp. Inf. Theory, Cambridge, MA, pp. 1967–1971, 2012.
-  B. Hassibi and H. Vikalo, “On the sphere-decoding algorithm I. expected complexity,” IEEE Trans. Signal Processing, vol. 53, no. 8, pp. 2806–2818, Aug. 2005.
-  J. Piao, J. Dai and K. Niu, “CRC-Aided Sphere Decoding for Short Polar Codes,” IEEE Commun. Lett., vol. 23, no. 2, pp. 210–213, Feb. 2019.
-  K. Niu, K. Chen and J. Lin, “Low-Complexity Sphere Decoding of Polar Codes Based on Optimum Path Metric,” IEEE Commun. Lett., vol. 18, no. 2, pp. 332–335, Feb. 2014.
-  J. Guo and A. Guill n i F bregas, “Efficient sphere decoding of polar codes,” in Proc. 2015 IEEE Int. Symp. Inf. Theory, Hong Kong, pp. 236–240, 2015.
-  S. A. Hashemi, C. Condo and W. J. Gross, “List sphere decoding of polar codes,” in Proc. 2015 49th Asilomar Conference on Signals, Systems and Computers, Pacific Grove, CA, pp. 1346–1350, 2015.
-  E. Arıkan, “From sequential decoding to channel polarization and back again,” arXiv preprint arXiv:1908.09594 (2019).
-  A. Balatsoukas-Stimming, M. B. Parizi and A. Burg, “LLR-Based Successive Cancellation List Decoding of Polar Codes,” IEEE Trans. Signal Processing, vol. 63, no. 19, pp. 5165–5179, Oct.1, 2015.
-  Y. Polyanskiy, H. V. Poor and S. Verdu, “Channel Coding Rate in the Finite Blocklength Regime,” IEEE Trans. Inf. Theory, vol. 56, no. 5, pp. 2307–2359, May 2010.
-  P. Trifonov, “Efficient design and decoding of polar codes,” IEEE Trans. Commun., vol. 60, no. 11, pp. 3221–3227, Nov. 2012.