Lattice Coding and its Applications in Communications

Similar documents
Shaping Low-Density Lattice Codes Using Voronoi Integers

Integer Low-Density Lattices based on Construction A

1102 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 51, NO. 3, MARCH Genyuan Wang and Xiang-Gen Xia, Senior Member, IEEE

Cross-Packing Lattices for the Rician Fading Channel

Rewriting Codes for Flash Memories Based Upon Lattices, and an Example Using the E8 Lattice

Lattices from equiangular tight frames with applications to lattice sparse recovery

BCJR Algorithm. Veterbi Algorithm (revisted) Consider covolutional encoder with. And information sequences of length h = 5

Leech Constellations. of Construction-A Lattices

Linear Dispersion Over Time and Frequency

GTTI 2009: sessione Trasmissione Spectrally efficient LDPC coded modulations

FIT5124 Advanced Topics in Security. Lecture 1: Lattice-Based Crypto. I

Mathematics Notes for Class 12 chapter 1. Relations and Functions

It is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission

Prentice Hall Connected Mathematics, Grade 7 Unit 2004 Correlated to: Maine Learning Results for Mathematics (Grades 5-8)

Pathloss and Link Budget From Physical Propagation to Multi-Path Fading Statistical Characterization of Channels. P r = P t Gr G t L P

NOISE VARIANCE ESTIMATION IN DS-CDMA AND ITS EFFECTS ON THE INDIVIDUALLY OPTIMUM RECEIVER

Sphere Packings, Lattices and Groups

Improvement and Efficient Implementation of a Lattice-based Signature scheme

KERNEL PROBABILITY DENSITY ESTIMATION METHODS

Lattice Cryptography: Introduction and Open Problems

Iterative Encoding with Gauss-Seidel Method for Spatially-Coupled Low-Density Lattice Codes

Introduction Ideal lattices Ring-SIS Ring-LWE Other algebraic lattices Conclusion. Ideal Lattices. Damien Stehlé. ENS de Lyon. Berkeley, 07/07/2015

Lecture l(x) 1. (1) x X

Finite-length analysis of the TEP decoder for LDPC ensembles over the BEC

Chapter 2 Uncertainty Analysis and Sampling Techniques

Square-Root Measurement for Ternary Coherent State Signal

Lattice based cryptography

Yao s Minimax Principle

Probability distributions relevant to radiowave propagation modelling

Lecture Stat 302 Introduction to Probability - Slides 15

CSCE 750, Fall 2009 Quizzes with Answers

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Random Variables and Probability Distributions

An Optimal Odd Unimodular Lattice in Dimension 72

Prentice Hall Connected Mathematics 2, 7th Grade Units 2009 Correlated to: Minnesota K-12 Academic Standards in Mathematics, 9/2008 (Grade 7)

Handout 4: Deterministic Systems and the Shortest Path Problem

Slides for Risk Management

Laurence Boxer and Ismet KARACA

Option Pricing Using Bayesian Neural Networks

Game Theory and Economics Prof. Dr. Debarshi Das Department of Humanities and Social Sciences Indian Institute of Technology, Guwahati.

CATEGORICAL SKEW LATTICES

Path Loss Prediction in Wireless Communication System using Fuzzy Logic

Table of Contents. Kocaeli University Computer Engineering Department 2011 Spring Mustafa KIYAR Optimization Theory

Probability and distributions

ELEMENTS OF MATRIX MATHEMATICS

Risk management. Introduction to the modeling of assets. Christian Groll

Lecture 17: More on Markov Decision Processes. Reinforcement learning

Laurence Boxer and Ismet KARACA

Introduction to Greedy Algorithms: Huffman Codes

Using radial basis functions for option pricing

PROBABILITY CONTENT OF ERROR ELLIPSE AND ERROR CONTOUR (navell-08.mcd)

White Paper: Comparison of Narrowband and Ultra Wideband Channels. January 2008

The reciprocal lattice. Daniele Toffoli December 2, / 24

Indoor Measurement And Propagation Prediction Of WLAN At

Cryptography from worst-case complexity assumptions

Crystal Lattices. Daniele Toffoli December 7, / 42

Lecture outline. Monte Carlo Methods for Uncertainty Quantification. Importance Sampling. Importance Sampling

THE ENERGY EFFICIENCY OF THE ERGODIC FADING RELAY CHANNEL

Finding optimal arbitrage opportunities using a quantum annealer

Computational Finance Improving Monte Carlo

Strategies for Improving the Efficiency of Monte-Carlo Methods

(b) per capita consumption grows at the rate of 2%.

Finite Potential Well

Gamma Distribution Fitting

Fast Simplified Successive-Cancellation List Decoding of Polar Codes

EE/AA 578 Univ. of Washington, Fall Homework 8

Monte Carlo Methods in Finance

f x f x f x f x x 5 3 y-intercept: y-intercept: y-intercept: y-intercept: y-intercept of a linear function written in function notation

Homework 1 posted, due Friday, September 30, 2 PM. Independence of random variables: We say that a collection of random variables

The Impact of Fading on the Outage Probability in Cognitive Radio Networks

Notes on the symmetric group

Quadrant marked mesh patterns in 123-avoiding permutations

UNIVERSITY OF CALICUT SCHOOL OF DISTANCE EDUCATION

A distributed Laplace transform algorithm for European options

On the Number of Permutations Avoiding a Given Pattern

1 SE = Student Edition - TG = Teacher s Guide

Chapter 5 Finite Difference Methods. Math6911 W07, HM Zhu

Basic Procedure for Histograms

Monte Carlo Methods for Uncertainty Quantification

Lattice Problems. Daniele Micciancio UC San Diego. TCC 2007 Special Event: Assumptions for cryptography

Discovering Intraday Price Patterns by Using Hierarchical Self-Organizing Maps

Non replication of options

PRMIA Exam 8002 PRM Certification - Exam II: Mathematical Foundations of Risk Measurement Version: 6.0 [ Total Questions: 132 ]

6. Continous Distributions

Introduction to the Lattice Crypto Day

From Hypercubes to Adinkra Graphs

Application of an Interval Backward Finite Difference Method for Solving the One-Dimensional Heat Conduction Problem

Connected Mathematics 2, 6 th and 7th Grade Units 2009 Correlated to: Washington Mathematics Standards (Grade 6)

Residuated Lattices of Size 12 extended version

Chapter 15: Dynamic Programming

Radio Propagation Modelling

YEAR 12 Trial Exam Paper FURTHER MATHEMATICS. Written examination 1. Worked solutions

Solving dynamic portfolio choice problems by recursing on optimized portfolio weights or on the value function?

Finance: A Quantitative Introduction Chapter 7 - part 2 Option Pricing Foundations

The rth moment of a real-valued random variable X with density f(x) is. x r f(x) dx

Nonlinear Manifold Learning for Financial Markets Integration

Research Article On the Classification of Lattices Over Q( 3) Which Are Even Unimodular Z-Lattices of Rank 32

Scenario reduction and scenario tree construction for power management problems

CS 237: Probability in Computing

The illustrated zoo of order-preserving functions

Transcription:

Lattice Coding and its Applications in Communications Alister Burr University of York alister.burr@york.ac.uk

Introduction to lattices Definition; Sphere packings; Basis vectors; Matrix description Codes and lattice codes Shaping region; Nested lattices Lattice constructions Construction A/D, LDLC codes; construction from Gaussian/Eisenstein integers Lattice encoding and decoding Outline Problems of shaping; LDLC decoding; Construction A decoding Lattices in multi-user networks: Compute and forward

What is a lattice? A lattice is defined as: the (infinite) set of points in an n-dimensional space given by all linear combinations with integer coefficients of a basis set of up to n linearly independent vectors It can be defined in terms of a generator matrix G, whose columns are the basis vectors: G x : x n g 1 + 2 g 2 g 2 g 1

Sphere packings A sphere packing is an arrangement of nonoverlapping hyperspheres of equal radius in N- dimensional space We are often interested in the packing density or n of a packing the proportion of space occupied by spheres Dense sphere packings are often lattice packings have sphere centres on lattices

Some lattices Dimensions Lattice Packing density Kissing number 2 Hexagonal 1 6 π 3=0.91 6 3 BCC/FCC/HCP 1 6 π 2=0.74 12 4 D4 1 24 16 π2 = 0.62 8 E8 1 240 384 π4 = 0.25 24 E24 (Leech) π 12 12! = 0.0019 196 560

Voronoi region The Voronoi region of a lattice point is the region of the N-dimensional space closer to that point than to all other lattice points Voronoi region of red point shown shaded

Introduction to lattices Codes and lattice codes Shaping region Nested lattices Lattice constructions Lattice encoding and decoding Lattices in multi-user networks: Compute and forward Outline

Codes i.e. forward error-correcting (FEC) codes A code is a finite set of codewords of length n Code contains M codewords encodes log 2 (M) bits where a codeword is a sequence of n symbols, usually drawn from a finite alphabet of size q we will often assume the alphabet is a Galois field ( q or GF(q)) or a ring ((q)) In a communication system the codewords must be translated into signals of length nt representing the variation in time of some quantity, such as electromagnetic field strength Each code symbol is typically modulated to some specific real or complex value of this variable

Example Message: Encode Codeword: Modulate s(t) 01111001 13212302 Signal: 3 1-1 T 2T 3T t -3 NT

Geometric model Each coded signal can then be represented as a point in N-D signal space 1,-1,1 s 2 s 3 s 1 where modulated values of symbols provide the n coordinate values Code is represented by ensemble of points in signal space Noise on channel equivalent to vector z in signal space z Decoder chooses closest point Error probability determined by minimum Euclidean distance between signal space points

Lattice code A lattice code is then defined by the (finite) set of lattice points within a certain region the shaping region ideally a hypersphere centred on the origin this limits the maximum signal energy of the codewords Lattice may be offset by adding some vector

Minimum Euclidean distance If the lattice is viewed as a sphere packing, then the minimum Euclidean distance must be twice the sphere radius Signal power S proportional to radius 2 of shaping region The greater the packing density, the greater M for given signal power Radius 2 of packed spheres proportional to maximum noise power d min

Maximum signalling rate Hence for low error probability, noise power N r S 2 Radius of signal space at receiver containing signal plus noise is S + N Volume of n-d sphere of radius r is V n r n Hence max. no. of codewords in code M V n S + N n 2 S + N V N r N 2 S N log 2 M 1 n 2 log 2 1 + S N n 2 r S S S + N

Nested lattice code Define fine lattice C for the code S C plus a coarse lattice S which is a sub-lattice of C Then use a Voronoi region V S of the coarse lattice as the shaping region Modulo- S operation for any point P V S find P ( S ) V S P V S P mod S

Complex signals Wireless signals consist of a sine wave carrier at the transmission frequency (MHz GHz) Sine waves can be modulated in both amplitude and phase hence the signal corresponding to each modulated symbol is 2-D also conveniently represented as a complex value typically represented on a phasor diagram Hence wireless signals can be represented in 2n dimensions or n complex dimensions Quadrature A In phase

Introduction to lattices Codes and lattice codes Lattice constructions Constructions A and D, LDLC codes Construction from Gaussian and Eisenstein integers Lattice encoding and decoding Lattices in multi-user networks: Compute and forward Outline

Constructions based on FEC codes For practical purposes in communications, we require lattices in very large numbers of dimensions typically 1000, 10 000, 100 000 Lattices of this sort of dimension most easily constructed using FEC codes such as LDPC and turbocodes Most common constructions encountered are called Constructions A and D (Conway and Sloane) Construction A based on a single code Construction D is multilevel, based on a nested sequence of codes

Construction A Start with a q-ary linear code with generator matrix G C The set of vectors such that λ mod q is a codeword of form a Construction A lattice from : Alternatively we can write: The generator matrix of the lattice: q n : m o d q q G G C q I 0 n k Note that minimum distance is limited by q

Construction D Let 0 1 2 a be a family of linear binary codes where 0 is the (n, n) code and is an (n, k ) code Then the lattice is defined by: : z l 1 j1 where z 2 n, c j, is the j th basis codeword of, and d j {0,1} denotes the j th data bit for the th code d 0 a k l d l j c 2 j, l l 1 d 1 d 2 1 2 1 2 1 4 d a a 1 2 a 1

Uses the principle of LDPC codes: Low density lattice codes Define generator matrix such that its inverse H = G -1 is sparse Then decode using sum-product algorithm (message passing) as in LDPC decoder However elements of H and G are reals (or complex) rather than binary Messages are no longer simple log-likelihood ratios Ideally use nested lattice code i.e. shaping region is Voronoi region of a coarse lattice

Gaussian and Eisenstein integers Construction A/D and LDLC result in real lattices can exploit Gaussian/Eisenstein integers to construct complex lattices Gaussian and Eisenstein integers form the algebraic equivalent in complex domain of the ring of integers Can construct complex constellations from them which form complex lattices

Gaussian Integers Gaussian integers are the set of complex numbers with integer real and imaginary parts, denoted i a b i, a, b They form a ring on ordinary complex arithmetic Hence operations in the ring exactly mirror operations in signal space Also form a lattice 4 2 4 2 2 4 2 4 7 May, 2016 22

Nested lattice of Gaussian integers Consider fine and coarse lattices, f and c, both based on Gaussian integers Here we assume that each point in the coarse lattice is a point in the fine multiplied by some Gaussian integer q i.e. the coarse is a scaled and rotated version of the fine and the fine is just the Gaussian integers c We then define our constellation as consisting of those Gaussian integers which fall in the Voronoi region of the coarse lattice f 7 May, 2016 23

Example e.g. q Blue points are fine lattice 2 i Red points are coarse lattice Fundamental region V c is region closer to origin than any other coarse lattice point Hence constellation is green points, inc origin 0 2 1 2 1 1 2 1 2 7 May, 2016 24

The fundamental region is surrounded by regions corresponding to q, q i, q and q i We treat the boundaries of the latter two as belonging to the fundamental region use this to allocate certain boundary points to constellation This also leads to an alternative definition of the fundamental region: V c 0 Boundary points 2 1 1 2 q q : q q 2 2 2 2 q q 2 2 7 May, 2016 & q q 25 2 1 1 2 2 2

We can establish isomorphisms between these constellations and either fields or rings Isomorphisms An isomorphism is a one-to-one (or bijective, and hence invertible) mapping between the constellation and the 1 ring s,, s s,, s such that the operations on the ring are equivalent to those on the constellation s s s s s s s s 1 2 1 2 1 2 1 2 It turns out that if q is a Gaussian prime, then the constellation is isomorphic to a field, otherwise it is isomorphic to a ring Size of field/ring is q 2 7 May, 2016 26

Lattice construction This isomorphism can be used to construct a complex lattice from a code based on the field or ring in a manner equivalent to Construction A n q i : z c, z, c that is, we encode a data sequence in the field q using the code (over 2) q then map the resulting symbols to the complex constellation using the mapping based on the isomorphism then combine with a lattice of Gaussian integers scaled by q q 2

Eisenstein integers Set of complex values with similar properties to Gaussian integers Hexagonal structure may result in denser lattices Note: 1 i 3 2 2 i 3 e

Introduction to lattices Codes and lattice codes Lattice constructions Lattice encoding and decoding Problems of shaping Construction A/D decoding LDLC decoding Lattices in multi-user networks: Compute and forward Outline

Shaping Ideally the shaping region should be as close as possible to a hypersphere provides shaping gain up to 1.5 db compared to hypercube shaping Nested lattice shaping gives a good approximation to this First multiply data vector by generator matrix this may generate region of lattice of arbitrary shape Then apply modulo-lattice operation: decode to coarse lattice, and subtract resulting coarse lattice vector In practice this decoding operation may be difficult may use hypercube shaping as simpler alternative

Construction A decoding Generally can be carried out with decoder for underlying code Applying mod q operation regenerates codeword of then decode this codeword can then recover specific point in n Note that in practice we use non-binary codes (q > 2) because q = 2 limits minimum distance and hence coding gain Typically use LDPC or turbocodes to achieve good performance hence need non-binary sum-product or BCJR decoder messages are probability distribution of q symbol values

Construction D decoding Use multilevel decoding approach based on component codes decode codes a, a-1, 1 in succession Component codes may usually be binary May require iterative approach c.f. multilevel coded modulation

LDLC decoding Code structure designed for sum-product decoding, cf LDPC using factor graph However symbol values are now continuous variables (reals) hence messages should be probability density functions requires compact means of representing PDF in decoder May use Fourier or Karhunen-Loeve basis representation or Gaussian mixture model

Outline Introduction to lattices Codes and lattice codes Lattice constructions Lattice encoding and decoding Lattices in multi-user networks Wireless physical-layer network coding Compute and forward

Physical layer in multi-user networks Traditional role of PHY: Link of interest Source Mod. Interference Demod. Destination signals from elsewhere in network treated as harmful interference however they may carry related information that can be exploited

Two-way relay channel Two terminals want to exchange data via a relay: A R B Conventionally this would require 4 time-slots: S A S B R(A) R(B) time 13th February 2012 36

WPNC S A a a + b b S B D B We can do better using Wireless Physical-layer Network Coding using two phases a b R a b D A Phase 1 Phase 2 S A, S B Assume both sources transmit BPSK: map data symbol 1 to signal +1; 0 to -1 At relay, map signals +2 and -2 to 0 ; 0 to 1 0: -1 1: +1 00: -2 11: +2 10, 01: 0 a 0 0 1 1 b 0 1 0 1 R(AB) time a+b -2 0 0 1 0 1 +2 0 a b 13th February 2012 37

Model a network with P layers of relays A general network model In general all nodes in a layer transmit simultaneously Each relay decodes a (linear) function of symbols from p p 1 p 1 p 1 p 1 previous layer based on the combined signals they receive Destination extracts symbol it is interested in from outputs of functions Lattices provide useful signal sets s a s a s a s a s. l 1l 1 2 l 2 L l L l S 1 s 1 S l s l R p l s l p 7 May, 2016 38 D

We can relate the s vector of outputs of each layer to its inputs via the matrix A: p p p 1 s A s Network coding model of network We can combine these in cascade, so that: p 1 p p p 1 1 s A A A s We can write this as a single matrix relating the vector of symbol s D at relays connected to the destination: s D B s We assume that the destination can (in principle) decode all symbols in its connection set s 7 May, 2016 39 : p s : 1 p 1 s l p 1 s L p 1 p 1 s p p p s 1 l s L p

Lattice signal sets Consider relay receiving from two sources via channel h A, h B Sources transmit codewords c A, c B from the same fine lattice C Received signal at relay is then: s A c A h A h B c B s B Now the sum of any integer multiples of two lattice points is another lattice point hence if h A, h B were integers we could decode at the relay using the same lattice decoder Key idea is to scale received signal by scaling factor so that h A and h B are approximately integers

Optimum approximation Then: where a A and a B are integers Approximation error is: We can minimise this by choosing : where P is signal power Also need to choose a A and a B could choose such that a A a B = h A h B but might require large, and hence increase noise

Example h A = 0.55; h B = 1.0 Choose: a A = 1; a B = 2; = 1.95 Blue points are received signal Red are approximated lattice

Modulo- operation Sum of two points from a lattice code may in general result in point outside shaping region Hence we apply modulo-lattice operation returns a point in the original lattice code so we can use the same decoder to recover sum point For lattice constellations isomorphic with field this operation can always be inverted

Lattices can be extensively used in communications especially for lattice coding Conclusions Can be shown to achieve capacity, as lattice dimension tends to infinity Practical lattice constructions are based on FEC codes can provide high dimension lattices with practical decoding algorithms For wireless channels use complex lattice constellations based on Gaussian/Eisenstein integers Important application is compute and forward applies to relay networks

More lattice applications Lattice quantisation: quantising signals to lattice points in high dimension can reduce mean square error Applying modulo-lattice operation also allows Wyner-Ziv compression of correlated sources Lattice reduction aided MIMO detection MIMO channel may distort received signal: LRA treats as a different lattice

Bibliography John Conway and Neil J. A. Sloane Sphere Packings, Lattices and Groups, Springer, 1999, ISBN 978-1-4757-6568-7 Uri Erez, Shlomo Shamai (Shitz), and Ram Zamir Achieving 1/2 log(1 + SNR) on the AWGN channel with lattice encoding and decoding, IEEE Trans. Inf. Theory, 50(10):2293 2314, October 2004. Ram Zamir Lattice Coding for Signals and Networks A Structured Coding Approach to Quantization, Modulation and Multiuser Information Theory Cambridge University Press, 2014, ISBN: 9780521766982 Naftali Sommer, Meir Feder, and Ofir Shalvi Low-density lattice codes, IEEE Trans. Inf. Theory, 54(4):1561 1585, April 2008. Bobak Nazer and Michael Gastpar Compute-and-forward: Harnessing interference through structured codes, IEEE Trans. Inf. Theory, 57(10):6463 6486, Oct 2011.