# 3.2.4.5.2. Polar MK Decoder parameters¶

## 3.2.4.5.2.1. --dec-type, -D¶

Type: text SC SCL ASCL CHASE ML SC --dec-type SCL

Select the decoder algorithm.

Description of the allowed values:

Value Description
SC Select the original SC algorithm from [Ari09].
SCL Select the SCL algorithm from [TV11], also support the improved CA-SCL algorithm.
ASCL Select the A-SCL algorithm from [LST12], only the PA-SCL variant is available.
CHASE See the common --dec-type, -D parameter.
ML See the common --dec-type, -D parameter.

At this time, the SC, SCL and ASCL decoders support only a subset of polar kernels listed below.

$\begin{split}T2_{Arikan} = \begin{bmatrix} 1 & 0 \\ 1 & 1 \end{bmatrix}.\end{split}$

$$T2_{Arikan}$$ is the original $$2 \times 2$$ kernel proposed by Arikan [Ari09]. This matrix is invertible and can be used for systematic encoding/decoding schemes.

$\begin{split}T3_{Huawei1} = \begin{bmatrix} 1 & 1 & 1 \\ 1 & 0 & 1 \\ 0 & 1 & 1 \end{bmatrix}.\end{split}$

$$T3_{Huawei1}$$ is a $$3 \times 3$$ kernel proposed in [GBLB17]. This matrix is not invertible and cannot be used for systematic encoding/decoding schemes.

$\begin{split}T3_{Huawei2} = \begin{bmatrix} 1 & 0 & 0 \\ 1 & 1 & 0 \\ 1 & 0 & 1 \end{bmatrix}.\end{split}$

$$T3_{Huawei2}$$ is a $$3 \times 3$$ kernel proposed in [BL18]. This matrix is invertible and can be used for systematic encoding/decoding schemes.

$\begin{split}T4_{Huawei} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 \\ 1 & 0 & 1 & 0 \\ 1 & 1 & 1 & 1 \end{bmatrix}.\end{split}$

$$T4_{Huawei}$$ is a $$4 \times 4$$ kernel proposed in [BL18]. This matrix is invertible and can be used for systematic encoding/decoding schemes.

$\begin{split}T5_{Huawei} = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 \\ 1 & 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 1 & 0 \\ 1 & 1 & 1 & 0 & 1 \end{bmatrix}.\end{split}$

$$T5_{Huawei}$$ is a $$5 \times 5$$ kernel proposed in [BL18]. This matrix is invertible and can be used for systematic encoding/decoding schemes.

## 3.2.4.5.2.2. --dec-implem¶

Type: text NAIVE NAIVE --dec-implem NAIVE

Select the implementation of the decoder algorithm.

Description of the allowed values:

Value Description
NAIVE Select the naive implementation which is typically slow.

## 3.2.4.5.2.3. --dec-lists, -L¶

Type: integer 8 --dec-lists 1

Set the number of lists to maintain in the SCL decoder.

## 3.2.4.5.2.4. --dec-node-type¶

Type: text MS SPA MS --dec-node-type SPA

Select the type of computations to make in the decoding functions.

Description of the allowed values:

Value Description
MS $$L_a \boxplus L_b \simeq \text{sign}(L_a).\text{sign}(L_b).\min(|L_a|,|L_b|)$$.
SPA $$L_a \boxplus L_b = 2\tanh^{-1}(\tanh(\frac{L_a}{2}).\tanh(\frac{L_b}{2}))$$.