Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on...

36
Lattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27–30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical Engineering Indian Institute of Technology Hyderabad [email protected] 1 / 32

Transcript of Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on...

Page 1: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Lattices and Lattice Codes

Trivandrum School on Communication, Coding & Networking

January 27–30, 2017

Lakshmi Prasad NatarajanDept. of Electrical EngineeringIndian Institute of Technology [email protected]

1 / 32

Page 2: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Recall – Communications I & II

2 / 32

Page 3: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Capacity - Fundamental limit for Digital Communications

C(SNR) = log2(1 + SNR):Max. spectral efficiency at a given SNR for reliable communication.

SNR∗(η) = 2η − 1:Min. SNR required for a given η for reliable communication.

A code C with spectral efficiency η is ‘good’ if it has negligible Pefor SNR > 2η − 1.

3 / 32

Page 4: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Dr. Lalitha Vadlamani’s talk: Coding Theory I & II

4 / 32

Page 5: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

How to Design Good Communication Schemes?

1 Combining Long Binary Codes with ‘Small’ Modulation Schemes

Examples: Bit-interleaved Coded Modulation, Multilevel Codes

2 Directly map messages to points in high-dimensional space RNExamples: Lattice codes, Group codes

5 / 32

Page 6: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

This talk: Directly map messages to vectors

� Code (over R) C = {sss1, . . . , sssM} ⊂ RN

� Power P =1

N· ‖sss1‖2 + · · ·+ ‖sssM‖2

M

� Noise variance σ2 =No2

(per dimension)

� Signal to noise ratio SNR =P

σ2=

2P

No

� Spectral Efficiency η =2 log2M

Nbits/s/Hz (assuming N = 2TW )

� Probability of Error Pe = P (m̂ 6= m)

6 / 32

Page 7: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

References

� F. Oggier and E. Viterbo, Algebraic Number Theory and Code Design for

Rayleigh Fading Channels. Foundations and Trends in Communications and

Information Theory, vol. 01, no. 03, 2004.

I Section 3 of this reference is a primer on lattices.

� J. H. Conway and N. J. A. Sloane, Sphere Packings, Lattices and Groups.New York, NY, USA: Springer-Verlag, 1999.

� R. Zamir, Lattice Coding for Signals and Networks. Cambridge, UK: CambridgeUniversity Press, 2014.

� G. D. Forney, “Multidimensional constellations. II. Voronoi constellations,”IEEE Journal on Selected Areas in Communications, vol. 7, no. 6, pp. 941–958,Aug 1989.

� H. A. Loeliger, “Averaging bounds for lattices and linear codes,” IEEETransactions on Information Theory, vol. 43, no. 6, pp. 1767-1773, Nov 1997.

� M. P. Wilson, K. Narayanan, H. D. Pfister and A. Sprintson, “Joint PhysicalLayer Coding and Network Coding for Bidirectional Relaying,” IEEE Transactionson Information Theory, vol. 56, no. 11, pp. 5641-5654, Nov. 2010.

7 / 32

Page 8: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

1 Lattices

2 Sphere Packing Problem and Coding for Gaussian Channel

3 Construction A: From Error Correcting Codes to Lattices

4 Nested Lattice Codes/Voronoi Constellations

8 / 32

Page 9: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Lattices

Say ggg1, . . . , gggm ∈ RN are linearly independent column vectors, m ≤ N .

DefinitionThe lattice Λ generated by ggg1, . . . , gggm is the set of all integer linearcombinations of ggg1, . . . , gggm

Λ = {z1ggg1 + · · ·+ zmgggm | zi ∈ Z}

� We will consider only full-rank lattices m = N

� The matrix GGG = [ggg1 ggg2 · · · gggN ] is a generator matrix for Λ

Λ ={GzGzGz | zzz ∈ ZN

}GGG ∈ RN×N is square, rank(GGG) = N , i.e., det(GGG) 6= 0.

� {ggg1, . . . , gggN} forms a basis for Λ.

� Generator matrix GGG of a lattice Λ is not unique.

8 / 32

Page 10: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Examples of lattices in two dimensions

9 / 32

Page 11: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

“A Lattice of Flowers”Trivandrum Flower Show, Kanakakunnu Palace Grounds

28 Jan 2017

10 / 32

Page 12: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Algebraic Properties of Lattices

Let Λ ⊂ RN be any N -dimensional lattice.

� The all-zero vector 000 is a lattice point

000 = 0ggg1 + · · ·+ 0gggN ∈ Λ

� Additive inverse of any lattice point is a lattice point

λλλ = z1ggg1 + · · ·+ zNgggN ∈ Λ ⇒ −λλλ = −z1ggg1 − · · · − zNgggN ∈ Λ

� Sum of any two lattice points is also a lattice point

λλλz = z1ggg1 + · · ·+ zNgggN and λλλu = u1ggg1 + · · ·+ uNgggN

λλλz + λλλu = (z1 + u1)ggg1 + · · ·+ (zN + uN )gggN ∈ Λ

� If a ∈ Z and λλλ ∈ Λ then aλλλ ∈ Λ.

Properties similar to vector space, but Z is NOT a field!!

Every lattice Λ is a module over Z

11 / 32

Page 13: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Minimum Distance of a Lattice

Minimum Distance dmin(Λ)Smallest distance between any two lattice points

dmin = minλλλ1 6=λλλ2

‖λλλ1 − λλλ2‖

Note that λλλ1 − λλλ2 ∈ Λ and λλλ1 − λλλ2 6= 0. Hence,

dmin = minλλλ6=0‖λλλ‖ = min norm of non-zero lattice points

NoteΛ is invariant to translation by any lattice vector λλλ ∈ Λ, Λ = λλλ+ Λ

� The distance of any nearest neighbor for any lattice point is dmin

12 / 32

Page 14: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Examples in two dimensions

13 / 32

Page 15: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Voronoi Region V(Λ)

.0

� Closest vector lattice quantizerQΛ(xxx) = λλλ if λλλ is the nearest lattice point to xxx ∈ RN

� Fundamental Voronoi regionV = Q−1

Λ (000) set of all points closer to 000 than any other lattice point

� λλλ+ V = Q−1Λ (λλλ) all points mapped to λλλ by QΛ

� Translates {λλλ+ V} of V are non-intersecting and cover RN14 / 32

Page 16: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Volume and Hermite Parameter

Volume of the lattice V (Λ)V (Λ) = volume

(V(Λ)

)is the volume of the Voronoi region

� If GGG is a generator matrix, then V (Λ) = |det(GGG)|� This is a lattice invariant, does not depend on the choice of GGG

How to measure the density of lattice points

� Number of lattice points per unit volume in RN = 1/V (Λ)

� By simply scaling Λ→ aΛ, we can trivially modify the number oflattice points per unit volume

� We need a measure that is invariant to scaling.

Hermite Parameter γ(Λ)

γ(Λ) =d2

min(Λ)

V (Λ)2/N

� γ(Λ)N/2 = density when the lattice scaled to unit min distance.

� γ(Λ) = squared min dist when the lattice is scaled to unit volume.

15 / 32

Page 17: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

16 / 32

Page 18: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

1 Lattices

2 Sphere Packing Problem and Coding for Gaussian Channel

3 Construction A: From Error Correcting Codes to Lattices

4 Nested Lattice Codes/Voronoi Constellations

17 / 32

Page 19: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

The Sphere Packing Problem

A sphere packing is an arrangement of infinitely-many non-overlappingidentical spheres in the Euclidean space.

� A lattice can be used to pack spheres: place a sphere centered ateach lattice point

� Spheres must be non-overlapping: largest spheres that can bepacked using Λ have radius

rpack =dmin

2

This is called the packing radius of Λ

Sphere packing problem

What is the maximum density (number of spheres per unit volume)with which spheres can be packed in RN?

17 / 32

Page 20: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Sphere Packing and Hermite Parameter

Center Density δ(Λ) =rNpack(Λ)

V (Λ)

density of spheres when the lattice is scaled to unit packing radius

Using dmin = 2rpack, we obtain δ(Λ) =

(γ(Λ)

4

)N/218 / 32

Page 21: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Best Lattice Sphere Packings

Let γN = largest Hermite parameter among all lattices in RN

TheoremFor all sufficiently large N , we have

N

2πe. γN .

1.744N

2πe

� Bounds on packing efficiency increase with the dimension N .

Best Lattice Packings for N ≤ 8

N 1 2 3 4 5 6 7 8

Λ Z A2 D3 D4 D5 E6 E7 E8

γN 1 1.15 1.26 1.41 1.52 1.67 1.81 2

κ 2 6 12 24 40 72 126 240

19 / 32

Page 22: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

From Lattices to Codes

� A code C = {sss1, . . . , sssM} for the (vector) Gaussian channel is afinite set of points in RN .

� Replace the average power constraint with the more stringent‘per-codeword’ power constraint:

‖sssi‖2

N≤ P ⇒ ‖sssi‖ ≤

√NP

� Let B be the N -dimensional ball of radius√NP centered at 000

sssi ∈ B for i = 1, . . . ,M

Spherically-shaped lattice codes

We can carve an N -dimensional code C from a lattice Λ by setting

C = Λ ∩ B

20 / 32

Page 23: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Spherically-Shaped Lattice Codes

Say, we desire to construct a code for given N , P & spectral efficiency η

M = |C | ≈ Vol(B)

V (Λ)⇒ V (Λ) ≈ Vol(B) 2−Nη/2

Then d2min = γ(Λ) · V (Λ)2/N ≈ γ(Λ) ·Vol(B)2/N 2−η

To construct a good code, we require Λ to have a large γ(Λ).

21 / 32

Page 24: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

1 Lattices

2 Sphere Packing Problem and Coding for Gaussian Channel

3 Construction A: From Error Correcting Codes to Lattices

4 Nested Lattice Codes/Voronoi Constellations

22 / 32

Page 25: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Prime Fields FpPrime fields are finite fields whose cardinality is a prime number.Let p ≥ 2 be any prime integer.

DefinitionThe prime field of cardinality p is the set Fp = {0, 1, . . . , p− 1} whereaddition and multiplication are performed modulo p

� a⊕ b = (a+ b) mod p, and

� a⊗ b = (a · b) mod p.

� Fp satisfies all the axioms of a field: existence of additive &multiplicative identities and inverses, distributive law, etc.

Addition in F3 = {0, 1, 2}

⊕ 0 1 2

0 0 1 21 1 2 02 2 0 1

Multiplication in F3 = {0, 1, 2}

⊗ 0 1 2

0 0 0 01 0 1 22 0 2 1

22 / 32

Page 26: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Linear Codes over Fp

Addition of vectors over Fp:

aaa⊕ bbb = (a1, . . . , aN )⊕ (b1, . . . , bN ) = (a1 ⊕ b1, . . . , aN ⊕ bN )

DefinitionA linear code C over Fp of length N is a subspace of FNp .

� |C| = pk, where integer k is the dimension of the code.

Example

� N = 5, p = 2 and C = {(0, 0, 0, 0, 0), (1, 1, 1, 1, 1)}.This is the repetition code of length 5 over F2.

� N = 3, p = 3 and C = {(0, 0, 0), (1, 1, 1), (2, 2, 2)}.This is the repetition code of length 3 over F3.

23 / 32

Page 27: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Lattices from Codes

The linear code C ⊂ Fnp is closed under addition mod p

ccc1, ccc2 ∈ C ⇒ (ccc1 + ccc2) mod p ∈ C

Example: p = 7, N = 2C = {(0, 0), (3, 1), (6, 2), (2, 3), (5, 4), (1, 5), (4, 6)}

� Embed C into RN using naturalmap

Create a lattice Λ by tiling copies of C in RN

24 / 32

Page 28: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Lattices from Codes: Construction A

Λ = C + pZN = ∪uuu∈Zn (C + puuu)

Example (continued)

GGG =

[3 −11 2

]

p = 2: Using codes over F2 = {0, 1}, C ⊂ FN2p = 2 and, say, |C| = 2k, dH = min Hamming distance

Vol(Λ) = 2(N−k) and dmin(Λ) = min{2,√dH}

25 / 32

Page 29: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Examples of Construction A Lattices from Binary Codes

1 The D4 lattice

Let C = {(0, 0, 0, 0), (1, 1, 1, 1)} be repetition code of length N = 4.Dimension k = 1 and min Hamming distance dH = 4.

V (Λ) = 8 and dmin = 2 ⇒ γ(Λ) =√

2

GGG =

2 0 0 10 2 0 10 0 2 10 0 0 1

2 The E8 lattice

Use C = [N = 8, k = 4, dH = 4] extended Hamming code.

V (Λ) = 16 and dmin = 2 ⇒ γ(Λ) = 2

D4 and E8 are the densest lattices in their dimensions.

TheoremFor N large, there exists a Construction A lattice with γ &

N

2πe26 / 32

Page 30: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

1 Lattices

2 Sphere Packing Problem and Coding for Gaussian Channel

3 Construction A: From Error Correcting Codes to Lattices

4 Nested Lattice Codes/Voronoi Constellations

27 / 32

Page 31: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Modulo Lattice Operation

xxx mod Λ = xxx−QΛ(xxx)

RN → V(Λ)

Modulo operation lends algebraic structure to the Voronoi region VΛ

V(Λ)× V(Λ)→ V(Λ)

(xxx,yyy) → (xxx+ yyy) mod Λ

� The origin 000 ∈ V(Λ), and for every xxx ∈ V, there exists a uniqueyyy = −xxx mod V such that (xxx+ yyy) mod Λ = 000

� V(Λ) is a group under addition modulo Λ.

27 / 32

Page 32: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Nested Lattices and Lattice Codes/Voronoi Constellations

Nested Lattices

� Λs ⊂ Λ are lattices

� Λs is a subgroup of Λ

Lattice Codes or Voronoi Constellations

� Λ/Λs = Λ ∩ VΛs is a group

Addition: xxx⊕ yyy = (xxx+ yyy) mod Λs

28 / 32

Page 33: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Lattice Codes

Lattice Code Λ/Λs

� Finite group under addition mod Λs

� |Λ/Λs| = V (Λs)/V (Λ)

� η = 2N log2

V (Λs)V (Λ)

Coding lattice (Fine lattice) Λ

� Provides noise resilience

� Want large dmin(Λ) & small V (Λ)

Shaping lattice (Coarse lattice) Λs

� Carves a finite code from Λ

� Determines transmit power

� Want small power & large V (Λs)

Lattice codes are good for many things: achieve capacity in Gaussianchannel and dirty paper channel, Diversity-Multiplexing Trade-off inmultiple-antenna channels, relay networks (compute & forward), wiretapchannels, interference channels, quantization, cryptography, etc. etc. etc.

29 / 32

Page 34: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Example Application: Bidirectional Relay Channel

30 / 32

Page 35: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Joint PHY/Network-layer Lattice Coding Scheme

Wilson, Narayanan, Pfister and Sprintson, IEEE Trans. Inf. Theory, Nov. 2010.31 / 32

Page 36: Lattices and Lattice Codes - IIT HyderabadLattices and Lattice Codes Trivandrum School on Communication, Coding & Networking January 27{30, 2017 Lakshmi Prasad Natarajan Dept. of Electrical

Conclusion

� Lattices have rich algebraic and geometric properties.

� They have strong connection to coding/modulation for Gaussianchannel, and to error correcting codes over finite fields.

� Structured codes can be obtained using nested lattice pairs.This structure can be useful in communication engineering, forinstance for exploiting interference in wireless channels.

� Lattices have several other applications: cryptography,information-theoretic security, codes for fading and multiple antennachannels, vector quantization etc.

Thank You!!

32 / 32