Chapter II: Distributed Reed–Solomon Codes
2.2 Preliminaries
We begin this section by presenting a formal definition of an SMAN. Next, we show how the problem of constructing a linear error-correcting code for such a network is algebraically equivalent to building a structured generator matrix for a code capable of correcting z errors. The required structure is identified by the graph defining the SMAN. We will consider algebraic codes, Reed–Solomon codes in particular, defined overFq, the finite field ofqelements.
Simple Multiple Access Networks
Definition 2.1. A simple multiple access network is represented by a bipartite graph G= (S,V,E), where the set of source nodes isS ={S1, . . . , Sm}, the set of relay nodes is V = {v1, . . . , vn} and the edge set is given by E. A source node Si is connected to a relay node vj, via a relay link, if and only if (i, j) ∈ E. Each Si
carries a message Mi of size ri symbols from Fq and the destination node D is interested in retrieving allMi’s by connecting to all relay nodes.
D S1 S2 S3
v2 v3 v5 v6 v7
v1 v4 v8 v9 v10
Figure 2.1: An example of an SMAN with 3 source nodes and 10 relay nodes.
An adjacency matrixAis associated with an SMAN, where the rows and columns representS andV, respectively, andAi,j = 1if and only if(i, j)∈ E. An example of an SMAN with three source nodes and ten relay nodes is given in Figure 2.1. The corresponding adjacency matrix is
A=
1 0 0 0 0 1 1 1 1 1 0 1 0 1 1 0 0 1 1 1 0 0 1 1 1 1 1 0 0 1
. (2.1)
We consider an SMAN in whichzof the links connecting the relays to the destination are erroneous. For eachS0 ⊆ S, the minimum cut capacity (min-cut) fromS0toD is denoted byCS0. From [Dik+10], the capacity regionRof an SMAN is given by cut set bounds for each subset of sources.
Theorem 2.1 (Dikaliotis et al. [Dik+10]). The capacity region of an SMAN is the set of all rate vectorsr= (r1, r2, . . . , rm)such that
X
Si∈S0
ri ≤CS0 −2z,∀S0 ⊆ S. (2.2) Furthermore, it suffices to carry out linear coding at internal network nodes, where eachvi transmits linear combinations of received symbols overFq.
It is easy to see that in a SMAN, the min-cut CS0 is given by the number of relay nodes that are connected to at least one node in S0. Formally, we have CS0 =|{vj ∈ V :∃Si ∈ S0,(i, j)∈ E}|.
Having characterized the capacity region of an SMAN, we are interested in con- structing codes that can achieve every rate vector in this region. The main result
of this chapter ensures that Reed–Solomon codes can be used to do so when the network has three sources.
Problem Formulation
Given an SMAN defined by G = (S,V,E), one is interested in constructing a distributed error-correcting code that can achieve the capacity region of the network in the presence ofz erroneous relay links. Here, a distributed code is one in which each relay node encodes the information symbols it has access to independently of the others. Since each Si carries an ri sized message, this can be represented a vectormi ∈F1×rq i. The encoding symbol associated withvj is now given by
cj = X
i:(i,j)∈E
migi,j, (2.3)
where gi,j ∈ Frqi is the encoding vector that vj uses to encode mi. Collectively, these vectors can organized in a matrix
G=
G1 G2 ... Gm
=
g1,1 g1,2 · · · g1,n g2,1 g2,2 · · · g2,n ... ... . . . ... gm,1 gm,2 · · · gm,n
. (2.4)
Some of these vectors will necessarily be equal to the zero vector of appropriate size. In particular, if[A]i,j = 0, thengi,j =0. As an example, the generator matrix corresponding toAin (2.1) is given below.
G=
g1,1 0 0 g1,4 g1,5 g1,6 g1,7 0 0 g1,10 0 g2,2 0 g2,4 g2,5 0 0 g2,8 g2,9 g2,10 0 0 g3,3 0 0 g3,6 g3,7 g3,8 g3,9 g3,10
.
This formulation captures the entire coding operation performed in the network.
Indeed, if we collect the message vectors asm= (m1, . . . ,mm), then the destination node receives
y=c+e,
wherec =mG ∈ Fnq is the concatenation of the code symbols transmitted by the relay nodes. The goal now is to recovermfromywhen the weight of eis at most z. Furthermore, we would like to do this for any rate vector (r1, . . . , rm) in the capacity region of G. The main result of this chapter shows that when m = 3, the matrix G can be specified in a way such that it spans a subcode of a z-error
correcting Reed–Solomon code. The underlying fieldFqof the code is size-optimal, meaning we requireq to be the smallest prime power greater than n. As a result, the destination node can efficiently recover the the source messages using classical Reed–Solomon decoders.
Distributed Reed–Solomon Codes
To construct a distributed Reed-Solomon code for a given SMAN withnintermediate relay nodes and z corrupt relay links/nodes, we start with a Reed–Solomon code RS[n, k] of lengthn and minimum distance 2z + 1, so that the dimension of this code is k = n− 2z. As described earlier, the adjacency matrix of the network specifies constraints on the generator matrix of the distributed code. Each row of Gi ∈ Frqi×n in (2.4) has the sparsity pattern ofAi, the ith row ofA. For each Si, the main task then is to findri codewords inRS[n, k]that have the same support as Ai. Once these codewords are collected inGi for eachi, we would like the overall matrix in (2.4) to be of rank r := Pm
i=1ri. This will imply that these codewords span anr-dimensional subcode ofRS[n, k]which is alsoz-error correcting.
Main Result
The main result of this chapter is proving the existence of distributed Reed–Solomon codes, over a small finite field, for any SMAN with three source nodes. More precisely, we prove the following theorem.
Theorem 2.2(Main Result). LetG= (S,V,E)be an SMAN with three sources, in whichzrelay links are erroneous. Then, a distributed Reed–Solomon code overFq
exists capable of correctingz errors, whereq≥ |V|is sufficient.
The theorem is proved via a series of results presented in the next section. In particular, we will characterize three cases under which any SMAN is categorized.
Each case is treated separately and a code construction is provided. Together, three main propositions unite to form the basis of the main theorem.