# Low-Dimensional Shaping for High-Dimensional Lattice Codes

###### Abstract

We propose two low-complexity lattice code constructions that have competitive coding and shaping gains. The first construction, named systematic Voronoi shaping, maps short blocks of integers to the dithered Voronoi integers, which are dithered integers that are uniformly distributed over the Voronoi region of a low-dimensional shaping lattice. Then, these dithered Voronoi integers are encoded using a high-dimensional lattice retaining the same shaping and coding gains of low and high-dimensional lattices. A drawback to this construction is that there is no isomorphism between the underlying message and the lattice code, preventing its use in applications such as compute-and-forward. Therefore we propose a second construction, called mixed nested lattice codes, in which a high-dimensional coding lattice is nested inside a concatenation of low-dimensional shaping lattices. This construction not only retains the same shaping/coding gains as first construction but also provides the desired algebraic structure. We numerically study these methods, for point-to-point channels as well as compute-and-forward using low-density lattice codes (LDLCs) as coding lattices and and Barnes-Wall as shaping lattices. Numerical results indicate a shaping gain of up to dB, compared to the state-of-the-art of dB; furthermore, the proposed method has lower complexity than state-of-the-art approaches.

## I Introduction

Lattice codes can achieve the capacity of the AWGN channel [erez:IT04, Ling:IT14]; they use the same real algebra as the AWGN channel; and they have algebraic structure that makes them suitable for physical layer network coding, compute-and-forward, and interference alignment, etc., [nazer:IT11, Ferdinand:TWC15, Feng:IT13, ordentlich:IT12, hong:IT13]. These information-theoretic results rely on random constructions of high-dimensional pairs of “good” lattices: one lattice provides the coding gain for AWGN channel, and the other lattice provides the shaping gain.

Recent years have seen the development of practical, low-complexity lattice codes with good coding gain [sommer:IT08, Sadeghi:IT06, dipietro:ISIT13, shalvi:IT11, yona:AL13]. However, in order for these high coding gain lattices to be put in practice, they should satisfy a power constraint. In the lattice domain, the power constraint is satisfied by selecting a set of coding lattice points that are in a specific shaping region. One approach for this task is to use discrete Gaussian shaping as pointed out in [Ling:IT14, Palgy:IEEEI12]. Based on the concept of [Ling:IT14], the discrete Gaussian shaping has been used in [Yan:IT15]. Another approach, named systematic shaping, was proposed in [naftali:ITW09]. Although systematic shaping alone does not provide shaping gains, it was suggested in [naftali:ITW09], to use systematic shaping together with trellis shaping [forney:IT92T] or shell mapping [Laroia:IT94] to obtain shaping gains.

Another way to perform shaping is nested lattice shaping, in which the Voronoi region of a high-dimensional sublattice is used as the shaping region. One of the advantages of nested lattice shaping over other shaping methods is it retains the algebraic structure between the messages and the lattice codes [nazer:IT11]. However, the use of a high-dimensional lattice for shaping is costly, as the complexity of shaping increases sharply with the dimension. Further, developing high-dimensional lattices with good shaping gain is a challenging task. For example, [naftali:ITW09] proposes a nested lattice shaping scheme for low-density lattice codes using the suboptimal -algorithm, and this approach yields only dB of the possible dB shaping gain.

In this paper, we propose two low-complexity lattice codebook constructions that result in good shaping/coding gains. Our approach is to develop shaping schemes using low-dimensional shaping lattices and high-dimensional coding lattices. The first construction is named systematic Voronoi shaping. In this construction, as the first step, we propose an efficient algorithm to simultaneously maps short blocks of integers to the Voronoi region of a low-dimensional lattice. These mapped points are named dithered Voronoi integers. When we do not use the dither, these Voronoi points result in Voronoi integers, that is, integers that are uniformly distributed over the Voronoi region. Low-dimensional lattices such as , the Barnes-Wall lattice (), and the Leech lattice can be used for this step. The second step of this construction is to encode these dithered Voronoi integers using a high-dimensional coding lattice with high coding gain. This step is performed using systematic lattice encoding, which is based on the concepts of systematic shaping [naftali:ITW09], but generalized to parity check matrices with non-unit diagonal elements and the use of a subtractive dither. Systematic lattice encoding is a technique for mapping information integers onto lattice points such that the lattice point is near the corresponding integer sequence. This technique can be applied to any coding lattice with a lower-triangular parity check matrix, such as LDLCs [sommer:IT08], LDA lattices [dipietro:ISIT13], etc. As systematic lattice encoding only needs shaped integers to obtain shaping gains, we detail an alternative technique to obtain shaped integers and this method is called non-uniform integers, which is based on non-uniform signaling [Kschischang:IT93]. Then, we numerically study the performance of our code construction using LDLCs, showing that it retains the shaping gains of the shaped integers and the coding gains of LDLCs. Numerical results show that systematic Voronoi shaping results in dB shaping gain with the use of as the shaping lattice. As the codewords are shaped, the marginal distribution of codeword elements are no longer uniform, hence we develop an approximated maximum a posteriori iterative decoder for LDLCs that accounts for the marginal distribution of the shaped codewords.

An important application of lattice codes is compute-and-forward [nazer:IT11], in which multiple sources transmit messages to relays that estimate a linear combination of incoming messages. Practical implementations of compute-and-forward were proposed in [Ferdinand:TWC15, Feng:IT13, hong:IT13]. Particularly, in [hong:IT13], low-complexity scaler quantizer is used for compute-and-forward, albeit it has dB shaping loss due to scalar quantizer. A necessary condition for compute-and-forward is an isomorphism between linear combinations of lattice codes and linear combinations of information integers. The first code construction does not exhibit this algebraic structure, hence it is not suitable for compute-and-forward. Therefore, we develop a second code construction, named mixed nested lattice coding. In this construction, shaping is provided by a series of low-dimensional lattices into which a high-dimensional lattice such as an LDLC is nested. This construction possesses the shaping and coding gains of the respective shaping and coding lattices with the same encoding/decoding complexity of the first construction. Further, we prove that this construction retains the necessary algebraic structure such that linear combination of lattice codes can be mapped to a modulo linear combination of integers. Hence, the mixed nested lattice code construction, described in this section, not only has good shaping/coding gains for the point-to-point AWGN channel, but it also has an advantage over the first construction as it has the necessary algebraic structure for applications such as compute-and-forward . We show this construction has a self-dithering property, hence it is practically desirable. Self-dithering means that the codewords are approximately uniformly distributed over the shaping region, as if dithering has been added, without explicitly doing so.

Notation: Matrices and vectors are denoted by bold upper and lower case letters, respectively. The th element of vector is denoted by and the th element of a matrix is denoted by . The Gaussian distribution with mean and variance is denoted by . The -dimensional integer and real fields are denoted by and , respectively. denotes the -dimensional field with size . The probability density function (PDF) of is denoted by . The modulo summation is denoted by . denotes the diagonal matrix with th diagonal element . The transpose operation is denoted by . denotes element-wise rounding to the nearest integer.

## Ii System Model and Preliminaries

### Ii-a System Model

We consider an AWGN channel model. The source encodes input information to a lattice point and transmits over an AWGN channel. The received signal

(1) |

where is Gaussian noise vector with per-dimension variance , and is the channel fading coefficient. In Section LABEL:sec:mix, we will also consider the AWGN multiple-access channel for purposes of compute-and-forward.

### Ii-B Lattice Codes

An -dimensional lattice is a discrete additive subgroup of . Any lattice can be obtained by taking integer multiplication of basis vectors. Taking these basis vectors as columns, the generator matrix is formed such that . The inverse of generator matrix is denoted by and it is called the parity check matrix. The shortest-distance lattice quantization is denoted by , which maps any point to the nearest point :

(2) |

Scaling a vector before quantization is equivalent to quantizing the non-scaled vector by a scaled version of the lattice:

(3) |

where is any scalar. The modulo-lattice operation with respect to returns the quantization error:

(4) |

The modulo operation satisfies the following scalar transformation

(5) |

Let denote the fundamental parallelotope (or fundamental parallelepiped) region [Conway-1999, p. 4] of with respect to a basis :

(6) |

where is the th element of . There is a shifted parallelotope region for each point of . Any point in is in exactly one such region. The fundamental Voronoi region, denoted by , of is the set of points that are closer to lattice point than to any other lattice point. Let be a random dither that is uniformly distributed over the fundamental parallelepiped region (or the fundamental Voronoi region). Then, is uniformly distributed over for any , [zamir:book14, Chap. 4.2].

The volume of the fundamental Voronoi region is denoted by and it is equal to

(7) |

where denotes the determinant operation. Let be a scalar, then . The second moment of a lattice characterizes the average power of a random variable uniformly distributed across :

(8) |

The normalized second moment (NSM) of is defined as:

(9) |

The shaping gain of is defined as:

(10) |

## Iii Systematic Voronoi shaping

In order to be used as a capacity approaching channel code for the AWGN channel, a lattice code needs two elements: a coding lattice with high coding gain, and a shaping method that satisfies a power constraint with high shaping gain. Hence, in Sec. III-A we propose a two-step lattice code construction, named systematic Voronoi shaping, for AWGN channels that results in good coding and shaping gains. The first step is to uniquely map the information integers to the dithered Voronoi integers, which are points inside the Voronoi region of the shaping lattice. Then, we use systematic lattice encoding approach [naftali:ITW09] to encode these dithered Voronoi integers using a high-dimensional lattice such that the codewords retain the shaping gain from the first step and the coding gain from the high-dimensional lattice. Then, we discuss an alternative method, for dithered Voronoi integers, using non-uniform signaling concepts [Kschischang:IT93]. Next, we discuss the two steps decoding operation for systematic Voronoi shaping. Lastly, we numerically evaluate the shaping and coding gains of our proposed schemes.

### Iii-a Systematic Voronoi shaping: Encoding

First, we describe the dithered Voronoi integers, a method to encode integers to dithered integers that are inside the fundamental Voronoi region of a shaping lattice. This mapping is bijective. The key idea here is to shape relatively small blocks of information integers using a low-dimensional lattice, then to stack them to form a high-dimensional vector, which is then encoded to a high-dimensional lattice. First, we describe properties of the coding and shaping lattices, after which we provide the steps of the proposed mapping. Then, we encode the these concatenated points using a high-dimensional lattice. We show that resulted code construction approaches the same shaping and coding gains as the shaping and coding lattices.

Coding lattice: Let be the -dimensional coding lattice defined by the lower-triangular parity check matrix . Let denote the th element of . Let be the diagonal matrix with th diagonal element equal to , i.e., . Let us divide the diagonal elements of into groups where . Then we assume for the th group, the diagonal elements are equal, i.e., for .

Shaping lattice: Let be the low -dimensional lattice, let denote its generator matrix, let be its fundamental Voronoi region, and be its fundamental parallelepiped. The generator matrix must satisfy several properties as follows. First, is lower-triangular. Second, the diagonal entries of scaled by any diagonal element of must be integers, i.e.

(11) |

Finally, for each column ,

(12) |

Well-known lattices such as , , and , scaled by , , and satisfy these conditions for . These lattices have good shaping gains, and they also have low-complexity decoding algorithms [Conway-1999], which make them ideal for practical implementation.

Dithered Voronoi integers: Let the transmitter have an -dimensional integer column vector . First, it divides the integer vector to integer vectors such that where . Then, these integer vectors are uniquely mapped to the points in fundamental Voronoi region of . This mapping is bijective.

The mapping procedure of integer information to goes as follows. We approach this problem by first mapping the to integers inside the fundamental parallelepiped region of the scaled shaping lattice . Hence, we first choose , which yields the code rate of

(13) |

We define by normalizing each element by :

(14) |

As an element of , is in the fundamental parallelepiped region of the scaled shaping lattice according to the definition of (6). In general, is not a lattice point of . However, it is an integer vector by the properties of :

(15) |

It is also labeled by a unique . Now, we create an -dimensional subtractive dither^{1}^{1}1We say subtractive dither, when it is known to both transmitter and receiver [zamir:book14, Definition 4.1.1]. vector that is uniformly distributed over . First we select the th element that is uniformly distributed over , then we find the subtractive dither vector that is uniformly distributed over :

(16) |

Now we form an -dimensional dither vector:

(17) |

As fundamental parallelepiped partitions the lattice space, we can find a representative point for inside the fundamental Voronoi region :

(18) |

where based on (11) and (12), hence . This mapping procedure uniquely maps the integer information , selected from , to a vector that is inside the fundamental Voronoi region of the shaping lattice for a given dither . Then, by concatenating, we form the -dimensional integer vector:

(19) |

High dimensional lattice encoding:

In this part, we present a framework based on [naftali:ITW09] to encode Voronoi points to lattice points of a high-dimensional lattice while preserving the shaping gains. In [naftali:ITW09], this encoding framework is called systematic shaping.

In here, we generalize systematic lattice encoding^{2}^{2}2We use the term “systematic lattice encoding” instead of “systematic shaping” to distinguish this method from the integer shaping procedure of the previous subsection. for non-unit diagonal elements. By retaining the high coding gain properties of , the systematic lattice encoding maps integer vectors to lattice points such that the integer vector elements can be obtained by simply rounding the lattice point coordinates. Systematic lattice encoding can be performed for any lattice if its parity check matrix is lower-triangular and the procedure is as follows.

Given , we find . This can be done by finding the integer vector such that

(20) | ||||

Note that line of (20) is equivalent to

(21) |

Due to the triangular structure of , encoding is straightforward, with the and found recursively. Clearly, and . Continuing recursively for :

(22) |

and

(23) |

This encoding method guarantees that . After obtaining , we subtract the dither vector to find the final lattice codeword:

(24) |

Shaping gain: Let us group into blocks as . Now we consider the -dimensional th block of the resulting lattice codeword :

(25) |

where . Now we substitute (III-A):

(26) |

According to (16), is uniformly distributed over fundamental parallelepiped , hence, based on the generalized dither concepts [zamir:book14, Chapter 4.2], we can show that is uniformly distributed over the Voronoi region of , irrespective of the distribution of . Therefore, has the same average second moment of , hence, the average second moment of is

(27) |

The volume of is where corresponds to the addition volume due to in (III-A). Based on this, NSM of is

(28) |

The higher the constellation size (or rate) that we use, the higher the , e.g., if we use as shaping lattice, then and corresponding rate is bits/dim. Hence, for large constellation sizes we can show that approaches as and do not grow with constellation size. Therefore, it is evident from (10) that the shaping gain of this encoding approaches that of for large constellation sizes. Numerical results verify this behavior of shaping gains in Sec. LABEL:sec:numerical1.

###### Remark 1

The use of dither makes the elements uniformly distributed over the Voronoi region, hence, it gives the advantage of achieving the exact average second moment or the same shaping gain. When the quantization resolution increases, the role of dither becomes less prominent [zamir:book14, Chapter 4.1.1]. Let us consider an example. We use as shaping lattice and are integer vectors uniformly distributed over fundamental parallelepiped as obtained in (LABEL:eqn:voronoi.shaped.mix). The lattice quantizer is , therefore for large constellations (large ), the number of possible points of are large, hence, quantizer resolution is high. In other words, for large constellations, the distribution of is approximately uniform over . Therefore, for large constellation sizes, the use of dither is less prominent in obtaining the same shaping gain. This fact is verified in numerical results. One can omit the use of dither depending on the practical application requirements.

The marginal distribution of the codewords resulting from systematic Voronoi shaping output is plotted in Fig. 1. We have used the lattice to obtain Voronoi integers (we did not use the dither) and LDLC as the coding lattice. The rate is fixed to bits/dim and it is observed the output distribution is approximately Gaussian. The AWGN optimal input distribution is plotted for 4bits/dim, where it has an average power of dB. Use of the lattice with 4bits/dim results in average power of dB and Gaussian distribution with average power of dB is plotted for comparison.