Digital Communications

Compute-and-Forward

/kuhm-PYOOT and FOR-werd/
Introduced by Nazer and Gastpar in 2011, this relaying strategy turns interference into a resource by having a relay decode an integer linear combination of simultaneously transmitted codewords rather than each message on its own. It is a structured form of physical-layer network coding built on nested lattice codes, where the algebraic closure of the lattice guarantees that the weighted sum the wireless medium naturally produces is itself a decodable codeword. The relay selects an integer coefficient vector a close to the real-valued channel gains, decodes the equation a·w over the finite field, and forwards it; a destination that gathers enough independent equations from several relays inverts the linear system to recover every message. The achievable computation rate exceeds decode-and-forward when colliding signals are strong, which makes the scheme attractive for dense relay networks and interference-limited backhaul.
Category: Digital Communications
Origin: Nazer & Gastpar, 2011
Code class: Nested lattice

Turning Interference Into Equations

In a conventional multiple-access setting, two or more users transmitting at once create interference that a relay must either suppress, treat as noise, or decode user by user. Compute-and-forward inverts that logic. Because the wireless channel adds the transmitted signals together with real-valued gains, the relay observes a noisy weighted superposition y = ∑ hl xl + z. If every transmitter draws its codeword from the same nested lattice, then any integer linear combination of those codewords is again a lattice point. The relay therefore aims to decode one such combination, indexed by an integer coefficient vector a, instead of fighting to separate the individual streams.

The art of the scheme is choosing a so that the integer combination ∑ al xl sits close to the actual received superposition. The relay applies an MMSE scaling factor α to the received signal so that αy ≈ ∑ al xl, leaving an effective noise term made of channel-mismatch (αhl − al) plus scaled thermal noise. Minimizing the variance of that effective noise over a is a closest-lattice-point search, typically solved with LLL basis reduction or a sphere decoder. When the channel gain vector happens to lie near a low-norm integer-scaled lattice direction, the computation rate is high; when the gains are awkward, the residual mismatch dominates and the rate falls.

Once each relay reports a decoded equation a(k)·w over the finite field, the destination assembles a system of linear equations. As long as the collected coefficient vectors form a full-rank matrix over that field, the destination inverts it to recover all of the original messages. This two-stage flow, local computation at the relays followed by global linear-system inversion at the sink, is what distinguishes compute-and-forward from store-and-forward routing and from classical network coding performed only at the bit level.

Computation Rate and Coefficient Selection

Achievable computation rate (real AWGN, power P, unit noise):
R(h,a) = ½ log2+ ( ( |a|2 − P (h·a)2 / (1 + P|h|2) )−1 )

Optimal MMSE scaling:
αopt = P (h·a) / (1 + P|h|2)

Coefficient search (closest lattice point):
a* = arg mina ∈ ℤL, a ≠ 0 ( |a|2 − P (h·a)2 / (1 + P|h|2) )

Where h is the L-dimensional channel gain vector, a is the integer coefficient vector, P is the per-symbol transmit power, and the per-symbol noise variance is normalized to 1. The end-to-end message rate is the minimum of the relay computation rates that span a full-rank equation set. Example: with P giving 20 dB SNR (P ≈ 100) and h ≈ [1.0, 0.5], the choice a = [2, 1] is the rate-maximizing integer vector and yields about 2.3 bits per channel use; weaker choices such as [1, 0] or [1, 1] give near 1.1 bits.

Relaying Strategy Comparison

StrategyWhat the relay sendsCodingBehavior under strong interferenceComplexity
Amplify-and-forwardScaled analog copyNone at relayAmplifies signal and noise togetherLowest
Decode-and-forwardRe-encoded individual messagesPer-user channel codeBreaks down when collisions are strongModerate
Compute-and-forwardInteger linear combination a·wNested latticeRate grows; exploits the collisionHigh (lattice search)
Compress-and-forwardQuantized observationWyner-Ziv source codeCarries side information, noise-limitedHigh
Bit-level network codingXOR of decoded packetsLinear over GF(2)Needs clean per-user decoding firstLow to moderate
Common Questions

Frequently Asked Questions

How does compute-and-forward differ from decode-and-forward and amplify-and-forward?

Amplify-and-forward retransmits a scaled noisy copy, boosting noise along with signal. Decode-and-forward fully decodes each user message and stalls when two strong signals collide. Compute-and-forward sits between them: nested lattice codes make an integer combination ∑ al xl a valid codeword, so the relay decodes that single equation. Picking a close to the channel gains lets it decode at a higher rate than decode-and-forward under strong interference; the destination then solves the collected equations over the finite field.

What sets the computation rate in compute-and-forward?

For y = ∑ hl xl + z at power P with unit noise, R(h,a) = ½ log2+( ( |a|2 − P(h·a)2/(1 + P|h|2) )−1 ), maximized over the integer vector a. The optimum a is the closest integer vector to αh, with MMSE scaling α = P(h·a)/(1 + P|h|2). Finding it is a shortest-lattice-vector search handled by LLL reduction or sphere decoding; rate peaks when the gains lie near a low-norm integer combination.

Why are nested lattice codes required for compute-and-forward?

Lattices are closed under integer linear combination, so the weighted sum of codewords is still a codeword the relay can quantize to. The nested pair uses a fine lattice for coding gain and a coarse lattice (via modulo reduction) for power shaping. Random Gaussian codebooks lack this closure: the sum of two such codewords is generally not a codeword, so it cannot be decoded directly. That algebraic structure is exactly what lets the relay recover a·w from a noisy superposition.

Relay and Backhaul RF

Build the RF Front End for Dense Relays

Compute-and-forward demands clean, linear receive chains and tightly matched relay hardware. RF Essentials supplies the millimeter-wave converters, amplifiers, and integrated assemblies that keep cooperative and relay networks on rate.

Get in Touch