Lattice Network Coding via Signal Codes
Chen Feng1 Danilo Silva2 Frank R. Kschischang1
1Department of Electrical and Computer EngineeringUniversity of Toronto, Canada
2Department of Electrical EngineeringFederal University of Santa Catarina (UFSC), Brazil
IEEE International Symposium on Information TheorySaint Petersburg, Russia, August 5, 2011
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 1 / 27
Compute-and-ForwardNazer & Gastpar (2006)
w1
w2
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
w1
w2
x1
x2
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
y3 = h13x1 + h23x2 + z3
y4 = h14x1 + h24x2 + z4
w1
w2
x1
x2
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
y3 = h13x1 + h23x2 + z3
y4 = h14x1 + h24x2 + z4
w4 = a14w1 + a24w2
w3 = a13w1 + a23w2w1
w2
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
w4 = a14w1 + a24w2
w3 = a13w1 + a23w2w1
w2
x3
x4
w3
w4
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
y5 = h35x3 + h45x4 + z5
w4 = a14w1 + a24w2
w3 = a13w1 + a23w2w1
w2
x3
x4
w3
w4
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Compute-and-ForwardNazer & Gastpar (2006)
y5 = h35x3 + h45x4 + z5
w5 = a35w3 + a45w4
w4 = a14w1 + a24w2
w3 = a13w1 + a23w2w1
w2
w3
w4
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 2 / 27
Introduction
Lattice network coding
• Lattice-based compute-and-forward (Nazer & Gastpar, 2006)
• Linear physical-layer network coding
• R. Zamir, “Lattices are everywhere”
Related approaches• Narayanan-Wilson-Sprintson (2007)
• Nam-Chung-Lee (2008)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 3 / 27
Introduction
Nazer & Gastpar’s approach• Lattice partitions based on Erez-Zamir’s construction
• Main result: achievable rates for one-hop networks
• CSI only at the receivers but not at the transmitters
• However: asymptotically long block length and unboundedcomplexity
Our goal: practical codes for compute-and-forward• Finite block length and low complexity
• Example: wireless fading channel with short coherence time
Related workOrdentlich et al ISIT 2011, Hern & Narayanan ISIT 2011
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 4 / 27
Our Previous Work
“An algebraic approach to physical-layer network coding” (ISIT 2010)• Lattice partition→ a module structure on the message space
• Fundamental theorem of finitely generated modules over a PID
• Generalized constructions over complex numbers
• Allows working with Eisenstein as well as Gaussian integers
“Design criteria for lattice network coding” (CISS 2011)
• Choice of receiver parameters (α, a)
• Shortest vector problem
• Upper bound on error probability for hypercube shaping
For more details:“An algebraic approach to physical-layer network coding” (submittedto IEEE Transactions on Information Theory, July 2011)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 5 / 27
This Work
Signal codes (Shalvi, Sommer & Feder 2003)
• Convolutional lattice codes
• Reasonably high coding gain
• Efficient encoding and decoding methods
• Relatively short packet length
• Issue: how to deal with the convolution tail
• Approach: send side information to reconstruct the tail
Contributions• Lattice partitions based on signal codes
• An efficient approach to transmit side information for multipleusers in a way that is compatible with lattice network coding
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 6 / 27
Lattice Network Coding
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 7 / 27
Lattice Network Coding
Key concepts
Fine lattice Λ, coarse lattice Λ′ ⊆ Λ, and lattice partition Λ/Λ′
GΛ =
[√3 1
0 2
]
Λ = {rGΛ : r ∈ Z2}
Λ′ = 3Λ
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 8 / 27
Lattice Network Coding
Key concepts
Message space W (with |W | = |Λ/Λ′|)Labeling ϕ : Λ→W (consistent with Λ/Λ′)
Embedding map ϕ : W → Λ such that ϕ(ϕ(w)) = w
(1,1)
(1,0)
(0,1)
(0,0)
(1,2)
(0,2)
(2,2)
(2,0)
(2,1)W = Z3 × Z3
ϕ(wGΛ) = w mod 3
ϕ(w) = wGΛ
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 9 / 27
Lattice Network Coding
Natural projection
For any discrete subring R ⊆ C such that Λ/Λ′ is an R-module, wecan make W into an R-module such that ϕ : Λ→W is a surjectiveR-module homomorphism with kernel Λ′.
(1,1)
(1,0)
(0,1)
(0,0)
(1,2)
(0,2)
(2,2)
(2,0)
(2,1)
R = Z
W = Z3 × Z3
ϕ(ϕ(2, 1) + ϕ(1, 0)
)
= (0, 1)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 10 / 27
Encoding and Decoding
GaussianMAC
w1 ! W
w2 ! W
wL ! WxL ! Cn
x2 ! Cn
x1 ! Cn
yu
u =L!
!=1
a!w!
......
y =L!
!=1
h!x! + z
Scaling D!
!y
! =L!
!=1
a!x!
Mapping!
(h1, . . . , hL)
(a1, . . . , aL)
Transmitter ` sends x` = ϕ(w`) + λ′`
Receiver computes u = ϕ(DΛ(αy))
Error Probability
Pr[error] = Pr[DΛ(neff) /∈ Λ′]
where neff ,∑
`(αh` − a`)x` + αz is the effective noise.
Remark: hypercube shaping =⇒ UBE based on lattice parameters
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 11 / 27
Signal Codes
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 12 / 27
Signal Codes: Convolutional Lattice CodesShalvi, Sommer & Feder (2003)
Generator matrix
Gk×(k+m)Λ =
1 g1 · · · gm 0 · · · 0 0
0 1 · · · gm−1 gm · · · 0 0...
... · · · ...... · · · ...
...0 0 · · · 0 0 · · · gm−1 gm
where gi ∈ C, for i = 1, . . . ,m.
Encoding and decoding operations• Encoding: convolution + shaping + termination
x = wGΛ + λ′ + d, where GΛ′ = πGΛ
• Decoding: sequential decoding
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 13 / 27
Encoding
Convolution: wGΛ, or equivalently, (w1, . . . , wk) ∗ (1, g1, . . . , gm)
-1
0
1
2
3
0 1 2 3 4
Message Vector
-1
0
1
2
3
0 1 2 3 4
g(D)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 14 / 27
Encoding
Convolution: wGΛ, or equivalently, (w1, . . . , wk) ∗ (1, g1, . . . , gm)
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
Convolution
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 15 / 27
Encoding
Shaping: wGΛ + λ′, where λ′ = w′GΛ′ = w′πGΛ and
w′i = −⌊(wi +
∑mj=1 gj(wi−j + πw′i−j))/π
⌉
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
Add −3Dg(D)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 16 / 27
Encoding
Shaping: wGΛ + λ′, where λ′ = w′GΛ′ = w′πGΛ and
w′i = −⌊(wi +
∑mj=1 gj(wi−j + πw′i−j))/π
⌉
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
Add −3D2g(D)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 16 / 27
Encoding
Shaping: wGΛ + λ′, where λ′ = w′GΛ′ = w′πGΛ and
w′i = −⌊(wi +
∑mj=1 gj(wi−j + πw′i−j))/π
⌉
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
Add 3D3g(D)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 16 / 27
Encoding
Shaping: wGΛ + λ′, where λ′ = w′GΛ′ = w′πGΛ and
w′i = −⌊(wi +
∑mj=1 gj(wi−j + πw′i−j))/π
⌉
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
Add −3D4g(D)
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 16 / 27
Encoding
Shaping: wGΛ + λ′, where λ′ = w′GΛ′ = w′πGΛ and
w′i = −⌊(wi +
∑mj=1 gj(wi−j + πw′i−j))/π
⌉
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 16 / 27
Encoding
Termination: wGΛ + λ′ + d, where d is a function of wGΛ + λ′
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 17 / 27
Encoding
Termination: wGΛ + λ′ + d, where d is a function of wGΛ + λ′
-4
-2
0
2
4
6
8
0 1 2 3 4 5 6
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 17 / 27
Lattice Network Coding viaSignal Codes
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 18 / 27
Encoding and Decoding
Encoder
Transmitter ` sends x` = w`GΛ + λ′` + d`, where λ′` = w′`πGΛ
and d` is a function of w`GΛ + λ′`
Decoder
Receiver computes DΛ(αy −∑` a`d`)
Error Probability
Pr[error] = Pr[DΛ(neff) /∈ Λ′], where the effective noise neff is
neff ,∑
`(αh` − a`)x` + αz
Achieving coding gains
From (CISS 2011), coding gains of signal codes are achievable aslong as side information
∑` a`d` is available at the receiver
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 19 / 27
Sending Side Information
Question
How shall transmitters send their side information d1, . . . ,dL?
Possible solutions• use side channels
• use a central coordinator
Our solutionuse the idea behind compute-and-forward
transmitter ` sends f(d`) concurrently
receiver only computes∑
` a`d`
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 20 / 27
Methods for Sending Side Information
Recall that in our solution...
Transmitter ` sends f(d`), where d` ∈ Z[i]m
Receiver computes∑
` a`d`
Recall that in lattice network coding...
Transmitter ` sends x` = E(w`), where W = (Z[i]/(q))m
Receiver computes∑
` a`w`
Key observation
If q is large enough, then W is as good as Z[i]m for d`and the problem reduces to a lattice design problem
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 21 / 27
Methods for Sending Side Information
A mathematical formulation for our design problem
Let Λq/Λ′q be a lattice partition with message space W
minimize dimension of Λq
subject to d2(Λq/Λ′q) ≥ γ
|q| ≥ 2θ
dimension of Λq corresponds to the extra channel uses;γ captures the reliability of decoding
∑` a`d`
θ captures the dynamic range of∑
` a`d`/π
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 22 / 27
Overhead of Sending Side Information
Recall the design problem
minimize dimension of Λq
subject to d2(Λq/Λ′q) ≥ γ
|q| ≥ 2θ
We give a constructive method showing that
dimension of Λq . m√
1.57γ(|p1|+ |p2|+ . . .+ |ps|),where pi are Gaussian primes, and |p1p2 · · · ps| ≥ 2θ
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 23 / 27
Overhead of Sending Side Information
A concrete example
For signal codes Λ and Λ′
• dimension: 2000
• parameters: {g1 = 1.96eiπ/8, g2 = 0.982eiπ/4}• Λ′ = 3Λ
• coding gain: 6.4 dB (over uncoded 9-QAM)
For the design problem
• γ = 1: corresponds to 9.5 dB protection
• θ = 20000: covers the dynamic range for two users
For our constructive method
• analysis: 90 extra channel uses
• simulation: 92 extra channel uses
Thus, overhead ≈ 5%
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 24 / 27
Simulation Results
Setup• two-transmitter, single-receiver multiple-access
• Rayleigh faded channel gains
• receiver decodes a1w1 + a2w2 (a1, a2 6= 0)
• 9-QAM LNC: Λ/Λ′ = Z[i]2000/3Z[i]2000
• 9-QAM PNC: Zhang, Liew & Lam; Popovski & Yomo
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 25 / 27
Simulation Results
25 30 35 40 45 5010−3
10−2
10−1
100
SNR [dB]
Fra
me−
Err
or R
ate
Nazer−GastparSignal−Code9−QAM LNC9−QAM PNC
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 26 / 27
Conclusions
1. Potential Performance Gaincoding gains of signal codes can be achieved
but side information is required
2. Methods for Sending Side Informationa generic schemea lattice design problem
3. Overhead of Sending Side Informationan upper bounda concrete example
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 27 / 27
Thank You!
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 28 / 27
Backup Slides
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 29 / 27
Decoding
Recall that...
Transmitter sends x = wGΛ + λ′ + d, where λ′ = w′πGΛ
and d is a function of wGΛ + λ′
Decoding
Receiver computes DΛ(y − d) = wGΛ + w′πGΛ +DΛ(z)
If DΛ(z) = 0, then the receiver obtains w + πw′
Note that [w + πw′] mod π = w mod π
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 30 / 27
Advantages of Signal Codes
Coding gains
Recall that a signal code is “generated by” [1, g1, . . . , gm]
when m = 2, coding gain = 6.4dB
when m = 3, coding gain = 8.3dB
when m = 4, coding gain = 9.6dB
Achieving coding gains
coding gains of signal codes are achievable as long as sideinformation is available at the receiver
2011 IEEE International Symposium on Information Theory Lattice Network Coding via Signal Codes 31 / 27