Shaping Low-Density Lattice Codes Using Voronoi Integers Nuwan S. Ferdinand Brian M. Kurkoski Behnaam Aazhang Matti Latva-aho University of Oulu, Finland Japan Advanced Institute of Science and Technology Rice University, USA University of Oulu, Finland Information Theory Workshop Hobart, Tasmania, Australia November 2014 Nested Lattice Codes Achieve Capacity Lattice codes can achieve the capacity of AWGN channel [Erez and Zamir ’04] Nested lattice codes: Want which is simultaneously good for coding and shaping Other information theoretic results using lattices: • Lattices for relay channel e.g. [Song-Devroye ’13] • Two-way (Bidirectional) relay channel e.g. [Wilson et al.] • Compute-forward relaying [Nazer-Gastpar ’11] How to move from information theory to practical lattice codes? Brian Kurkoski, JAIST 2/24 Capacity-Approaching Lattice Constructions Recent high-dimension lattice constructions approach capacity • Construction A with LDPC codes • Construction D with turbo codes, spatially coupled LDPC • Lattices based on polar codes • Low-Density Lattice Codes [Sommer et al. 2008] Common claim: within few tenth of dB of unconstrained capacity: ! ! ! No assumption about the channel power constraint. Brian Kurkoski, JAIST 3/24 Satisfy Power Constraint with Nested Lattices Good for correcting errors Good for quantization (satisfy the power constraint) high complexity! Brian Kurkoski, JAIST 4/24 1.53 dB Shaping Gain of Sphere over Cube Separate lattice and shaping region B contribution to signal power: 2 ||x|| dx B Average Power ⇥ nV (B) ⌅ ⇤⇥ Depends only on shape of B (normalized second moment) 2 n +1 ⇧ G(B) ·M V ( ) n Depends only on coding lattice Λ Shaping Gain 1 B 1 B 0.5 G(cube) lim n ⇥ G(n-sphere) 0.5 0 0 −0.5 −0.5 −1 −1 −1 −0.5 0 0.5 1 lim G(n-sphere) = n ⇥ Brian Kurkoski, JAIST e = 6 = 1.53 dB 1 2 e 1 G(cube) = 12 −1 −0.5 0 0.5 1 5/24 for Well-Known Lattices 0.085 Z 1 A2 0.08 D 3 D4D 5 0.075 E 7E 8 Λ 0.07 16 Λ24 0.065 0.06 0.055 lattice dimension n 1 2 3 4 5 7 8 16 24 !6 Satisfy Power Constraint with Nested Lattices n = 1, 2 n = 8 n = 23 n = 10 5 n = 10 h ec Le E8 small n Well-known lattices •Weak coding gain •efficient shaping algorithms •Good shaping gain (0.65~1.0 dB) Brian Kurkoski, JAIST n = 1000 4 Large n BP-based lattices •Strong coding gain • Inefficient shaping algorithms •Uncertain coding gains: two cases: 0.4 dB shaping gain 7/24 It Would Be Great If… Find a construction that: • Has the capacity-approaching coding gain high-dimension lattices • Has the shaping gains and implementation complexity of a well-known lattice like E8. ! Must overcome the problem of mismatch in dimensions Brian Kurkoski, JAIST 8/24 Outline Key result: • a lattice construction technique for shaping LDLC lattices Elements of the technique: 1. “Voronoi Integers” Shape integers using small-dimension lattices 2. Systematic lattice encoding: lattice point is nearby corresponding integer Results Full 0.65 dB shaping gain of the E8 lattice. (2.1 dB from 1/2 log(SNR+1) ) Competing nested LDLCs obtained only 0.4 dB, using higher complexity ! First, review 1.53 shaping gain result and LDLC lattices Brian Kurkoski, JAIST 9/24 Low-Density Lattice Codes LDLC lattices introduced by Sommer, Shalvi and Feder [IT 2008] • LDLC have a sparse inverse generator matrix H • Gaussian Belief-propagation decoding • High dimension, n = 100, 1000, 10000, 100000 • Come within 0.6 dB of unconstrained capacity ! LDLCs for the power-constrained channel [Sommer et al ITW 2009] • H matrix in triangular form, use M algorithm for quantization • Obtained 0.4 dB gain over hypercube (out of 1.53 dB) Brian Kurkoski, JAIST 10/24 LDLC “Latin Square” Construction Inverse generator H = G –1 has constant row and column weight d. Latin square: each row/column {h1, h2,…,hd} with random ±, h1 ≥ h2 ≥ … ≥hd • Choose h1 = 1 (forces determinant to be 1) Example: {1, 1/2, 1/3} • Random sign changes • d = 7 gives good performance • BP convergence condition: Brian Kurkoski, JAIST 11/24 degree of the top row will be 1, and it will gradually increase until d. The following matrix is an example of such a matrix with dimension n = 8, degree d = 3 and generating sequence (1, 0.7, 0.5). The two rightmost columns have a single nonzero element, the next two have 2 nonzero element and the 4 leftmost columns have the final degree d = 3. The same is true for the matrix rows, starting from the top. ⌦ 1.0 0 0 0 0 0 0 0 0 1.0 0 0 0 0 0 0 0.7 0 1.0 0 0 0 0 0 0 0 0.7 1.0 0 0 0 0 0.5 0 0 0.7 1.0 0 0 0 0 0.7 0 0.5 0 1.0 0 0 ↵ 0 0.5 0 0 0.7 0 1.0 0 0 0 0.5 0 0 0.7 0 1.0 Nested Lattice Codes With LDLCs Sommer [ITW 2009]: Triangular construction • Construct • dimension n = 10,000 • Put 1's on main diagonal, make triangular • “90% Latin square” weight d: {h1, h2,…,hd} • Quantization/shaping using M-Algorithm Complexity is O(ndM), but M is large • Shaping gain of 0.4 dB over hypercube Modest shaping gain for high complexity Brian Kurkoski, JAIST Such a lower triangular matrix can be generated with similar methods to those described in [2] for Latin square LDLC, where the location of each element of the generating sequence in each row can be described by a permutation (since each element appears once, and only once, in each row and column). The difference is that here, instead of a permutation, we shall use a mapping from a subset of the rows (starting at the first row where this element appears, ending at the bottom row) to a 12/24 Proposed Construction uPZ n u1 c1 u2 c2 Splitter Combine integers Z {⇤s m un{m cPZ Systematic n shaping Systematic lattice (a) Encoder encoding noise (z) Add offset a Brian Kurkoski, JAIST Substract offset a x1 “ x ´ a cn{m “Voronoi Integers” y “ x1 ` z x “ H´1 pc ´ kq x`z LDLC Decoding x̃ Y U ¨ c̃ Offset to reduce average power c̃1 ũ1 c̃2 ũ2 Splitter ⇤s Ñ Z c̃n{m Combined integers m ũ ũn{m 13/24 m “Voronoi Integers” Z / shape 5 Under systematic shaping, if the integers are 4 “shaped,” then lattice code will be shaped. 3 ! 0,3 3,3 0,2 1,1 2,3 3,2 0,1 1,0 2,7 1,3 2,2 3,1 0,0 1,7 2,6 3,5 1,2 2,1 3,0 0,7 1,6 2,5 3,4 2,0 3,7 0,6 1,5 2,4 3,6 0,5 1,4 2 L is a small-dimensional lattice quantization, i.e. shaping, is easy ! Define “Voronoi Integers” Z / m ! Brian Kurkoski, JAIST 0 −1 shape set of integers inside fundamental region ! c2 1 −2 −3 0,4 −4 −5 −5 −4 −3 −2 −1 0 c1 1 2 3 4 5 14/24 13 Voronoi Integers Example 12 11 10 9 8 7 6 5 4 3 2 1 0 −1 −2 −3 −4 −5 Brian Kurkoski, JAIST −5 −4 −3 −2 −1 0 1 2 3 4 5 15/24 13 Voronoi Integers Example 12 11 10 9 8 7 6 5 4 3 2 1 0 −1 −2 −3 −4 −5 Brian Kurkoski, JAIST −5 −4 −3 −2 −1 0 1 2 3 4 5 16/24 13 Voronoi Integers Example 12 11 10 9 8 7 6 5 4 3 2 1 0 −1 −2 −3 −4 −5 Brian Kurkoski, JAIST −5 −4 −3 −2 −1 0 1 2 3 4 5 17/24 Systematic Lattice Encoding Requirement Triangular H with 1’s on diagonal Brian Kurkoski, JAIST 18/24 Systematic Lattice Encoding ! Example using (4,4) 4 ! c= (2,4) Recall: c = round(x) ! Note Voronoi volume det(H) = 1 (4,3) 3 (3,3) (2,3) and the integer grid also has vol. 1 No “gaps” (3,4) (4,2) 2 (3,2) (2,2) 2 Brian Kurkoski, JAIST 3 4 19/24 Systematic Lattice Encoding ! Example using (4,4) 4 ! c= (2,4) Recall: c = round(x) ! Note Voronoi volume det(H) = 1 (4,3) 3 (3,3) (2,3) and the integer grid also has vol. 1 No “gaps” (3,4) (4,2) 2 (3,2) (2,2) 2 Brian Kurkoski, JAIST 3 4 19/24 Brian Kurkoski, JAIST 20/24 Average Transmit Power 0.7 E8 lattice alone 0.65 No LDLC Transmit power, Gain over hypercube Gain over hypercube shaping 0.6 Z8/LE8 with LDLC systematic 0.55 0.5 0.45 0.4 a=aopt 0.35 a=0 0.3 c (Z8/LE8) 0.25 x’ (Z8/LE8 with LDLC) 0.2 E8 shaping gain bound 2 2.5 3 3.5 4 4.5 5 log (L) 2 Brian Kurkoski, JAIST 21/24 Power-Constrained AWGN Channel AWGN channel with average power constraint • 5 bits/dimension • coding: LDLC lattice dimension n = 10,000 • shaping: E8 lattice with m = 8 • Compare with M-Algorithm LDLC shaping of Sommer et al Brian Kurkoski, JAIST 22/24 0.65 dB Gain Over Hypercube Shaping! −1 10 Hypercube shaping [7] Nested lattice shaping |7] −2 10 Proposed shaping 0.15 dB better than M algorithm, and much lower complexity Uniform input capacity SER AWGN capacity −3 10 0.4 dB −4 10 0.65dB −5 10 23.5 24 24.5 25 25.5 26 26.5 Average SNR in dB Brian Kurkoski, JAIST 23/24 Conclusion Lattices are an alternative to finite-field codes for AWGN Shaping techniques to obtain 1.53 dB are “accessible” • Coset codes/nested lattice codes, high complexity ! We proposed: • “Voronoi integers” using low-dimension lattices • Systematic lattice shaping for LDLCs High coding gain of LDLCs, good shaping gain of E8 lattice Brian Kurkoski, JAIST 24/24