Você está na página 1de 8

A Simple Algebraic Formulation for the Scalar

Linear Network Coding Problem


Abhay T. Subramanian and Andrew Thangaraj
Department of Electrical Engineering
Indian Institute of Technology Madras, Chennai, India.
E-mail: abhay,andrew@iitm.ac.in

Abstract—In this work, we derive an algebraic formulation imum degree of only 2. Moreover, the form of the equations
for the scalar linear network coding problem as an alternative to has additional structure that can be exploited in several cases.
the one presented by Koetter et al in [1]. Using an equivalence We illustrate this simplification through examples and compare
between network information flow and group-valued circulations,
we derive a system of polynomial equations that algebraically rep- our formulation with the one proposed in [1] in terms of the
resents the scalar linear network coding problem. Surprisingly, number of variables and equations involved.
this system of polynomials has a maximum degree of 2. We An alternative way of viewing our formulation is that we
illustrate our formulation and its advantages through example perform a graphical simplification of the formulation in [1],
networks drawn from the literature. which uses scaling variables on every link. The crux of our
simplification lies in a graph transformation that migrates all
I. I NTRODUCTION
scaling variables to the sources. All the intermediate nodes
The idea of network coding over error-free networks, pio- in the transformed graph simply perform addition and have
neered in [2], has been a subject of active current research. only a single outgoing link resulting in a set of directed trees.
The general idea of linear network coding, where intermediate Finally, we arrive at a set of only linear and degree-2 equations,
nodes linearly combine incoming packets, was explored in relating the scaling variables at the sources, that algebraically
[3]. A simple and effective algebraic formulation of the represents the given network coding problem.
general network coding problem was introduced in [1]. This
established a direct connection between a network information II. T HE N ETWORK C ODING P ROBLEM
flow problem and an algebraic variety over the closure of a The communication network is modelled as a directed,
finite field. acyclic multigraph, G = (V, E), where the node set V
While the multicast network coding problem has been char- represents the terminals and switches in the network and the
acterized almost completely [4], the general network coding edge set E represents the communication links. It is assumed
problem still remains much harder to characterize [5]. The that all communication links are error-free and have unit
algebraic formulation of [1], while being simple and powerful, capacity. For a given edge e = (u, v), we denote u = tail(e)
results in equations that are not readily amenable to easy and v = head(e). For each node v ∈ V , we define
solution in many cases. In this paper, our main result is to I(v) = {e ∈ E : head(e) = v}, the set of input links of
derive an alternative algebraic formulation for the general v and O(v) = {e ∈ E : tail(e) = v}, the set of output
scalar linear network coding problem. Specifically, we show links of v. Let us further assume the following without loss
a correspondence between linear network-coded information of generality: (1) A node v is a source node iff |I(v)| = 0
flow in a given network and group-valued circulations in and all source nodes produce exactly one unit of data per
an equivalent set of directed trees. In a network, a group- unit time. (2) A node v is a sink node iff |O(v)| = 0 and
valued circulation is a mapping from the set of edges to a all sink nodes demand exactly one unit of data per unit time.
group such that the net flow through any node is conserved In cases where a node v produces (demands) more than one
under the group addition operation [6]. One can readily see data symbol, we can add virtual source (sink) nodes that
that linear network-coded information flow should be closely produce (demand) exactly one data symbol, have exactly one
related to group-valued circulations. However, since there is no output (input) link connecting them to v and no input (output)
multiplication operation in groups, we show that the network links. Then, the set of source and sink nodes is defined as
needs to be transformed before a direct relationship can be S = {v ∈ V : |I(v)| = 0} = {s1 , s2 , . . . , s|S| } and
established between linear network coding over a field and T = {v ∈ V : |O(v)| = 0} = {t1 , t2 , . . . , t|T | }.
a group valued circulation. We develop an algorithm for this Let us now assume that the symbols transmitted over the
network transformation, which results in a set of trees. network are elements of a finite alphabet H. For each edge e,
We then use the corresponding flow in the set of trees an edge function is then defined as a mapping fe : H i → H
to derive a system of polynomial equations that provides an where, i = 1 if tail(e) ∈ S and i = |I(tail(e))| otherwise.
algebraic formulation for the network coding problem in the Definition 1: The collection of all the edge functions in a
original network. Surprisingly, this set of equations has a max- given network is defined as a network code. If all the edge
functions are linear maps with respect to a field alphabet H,
in [1] gives the following 8 equations in 10 variables:
then the code is a scalar linear code. α3 + α4 α1 = 1; α4 α2 = 0; α5 + α6 α1 = 0; α6 α2 = 1
Let the data symbol generated at the i-th source node, α7 α2 + α8 = 0; α7 α1 = 1; α9 α2 + α10 = 1; α9 α1 = 0
si ∈ S, be denoted by Xi and the data symbol demanded
by the j-th sink node, tj ∈ T , be denoted by Zj . These also In contrast, our formulation arrives at just 1 equation, a4 b3 =
implicitly define a set of connection requirements, denoted 1, in 2 variables as given in (6).
by C, for the given network G. Given a network G, the set IV. N ETWORK I NFORMATION F LOW AS G ROUP - VALUED
of source nodes S, the set of sink nodes T and the set of C IRCULATIONS
connection requirements C, the network coding problem is to
determine all the edge functions such that all the connection A. Group-valued Circulations
requirements are satisfied. If such a set of edge functions Consider a directed multigraph G = (V, E) and a finite
exists, then the network coding problem is solvable. If a set abelian group H. Then, a group-valued circulation or an H-
of linear edge functions, with respect to a finite alphabet H, circulation is defined as a mapping f : E → H such that the
exists that satisfies all the connection requirements, then the following equation is satisfied at each node v ∈ V :
network coding problem is scalar-linearly solvable. X X
In a scalar linear network coded flow (over a field H), the f (e) = f (e) (1)
P|S|
edge function of an edge e can be written as i=1 ai Xi , where e:head(e)=v e:tail(e)=v
P|S|
ai , Xi ∈ H. We refer to i=1 ai Xi as either the edge function This can be understood as a conservation of flow – the sum
of e or the symbol flowing through e and denote it as a vector of the symbols entering a node is equal to the sum of the
fe = [a1 a2 · · · a|S| ]. symbols leaving it, with addition over H. This is shown in
Fig. 2b.
III. M OTIVATION In a linear network coding scheme, each output link of a
The scalar linear network coding problem was formulated node carries a linear combination of the symbols received by
as a system of polynomial equations in [1]. Our aim in this that node through all its input links. Let us assume a coding
work has been to arrive at a simpler algebraic formulation for scheme over a field F . Let xe ∈ F represent the symbol
the general scalar-linear network coding problem than the one flowing through edge e. Then, the general form of the relation
described in [1]. This advantage of the algebraic formulation between the symbols flowing through one of the output links,
that we will describe in the next few sections can be easily e ∈ O(v), and the set of input links, I(v), of a node v ∈ V
noticed when we compare the two formulations for the case can be written as:
X
of the modified butterfly network shown in Fig. 1 with two xe = ae0 ,e xe0 (2)
sources and four sinks. Note that this network is identical to e0 ∈I(v)
the classic butterfly network under our definition of sources
and sinks. where the coefficients ae0 ,e are elements of F . This is shown
in Fig. 2a. Note that the linear network-coded flow is not
The edge functions under the direct assignment of scaling
immediately a group-valued circulation. The conservation laws
factors (as in [1]) is shown in Fig. 1. The formulation described
of Fig. 2a and 2b are not the same. In this section, we develop a
X1 X2 transformation of the network, which results in an equivalence.
1 2 B. Equivalence for one node
X1 X2
Consider the node shown in Fig. 2a. There are a total of
|O(v)| linear equations that need to be satisfied at this node.
3 Hence, an equivalent graph with group-valued circulations
X1 X2
α1 X1 + α2 X2
must have |O(v)| copies of this node, each satisfying one of
these equations. If ei denotes the i-th output link of the node,
the equation to be satisfied at the i-th copy of the node in the
4
equivalent graph is given by:
α1 X1 + α2 X2 α1 X1 + α2 X2 X
x ei = ae0 ,ei xe0 (3)
e0 ∈I(v)
5 α6 (α1 X1 + α2 X2 )
6 α9 (α1 X1 + α2 X2 )
+α5 X1 +α10 X2 Hence, the node shown in Fig. 2a will have to be replicated
α3 X1
+α4 (α1 X1 + α2 X2 )
α8 X2
+α7 (α1 X1 + α2 X2 )
as many times as the number of its output links along with
7 8 9 10 its entire set of input links. In addition, the flow in the
X1 X2 X1 X2 input links will have to be appropriately scaled. After these
transformations, the linear-network coded flow in one node
Fig. 1. Flow in the butterfly network. shown in Fig. 2a is equivalent to the group-valued circulation
in the graph shown in Fig. 2c.
xe01 n xe01
P xe 1
xe 1 = ae0i ,e1 xe0i
i=1

(a) (b)

n
P
xe0n xe m = ae0i ,em xe0i xe0n m
P n
P xe m
i=1 xe i = xe0j
i=1 j=1

ae01 ,e2 xe01 ae01 ,em xe01


ae01 ,e1 xe01 n
P n
P n
P
ae0i ,e1 xe0i = xe1 ae0i ,e2 xe0i = xe2 ae0i ,em xe0i = xem
i=1 i=1 i=1

ae0n ,e1 xe0n ae0n ,e2 xe0n ae0n ,em xe0n


(c)

Fig. 2. (a)Picture of a node employing a linear network coding scheme. (b) Picture of a node for a group-valued circulation. (c) Transformation of node
shown in (a).

C. Equivalence for network Theorem 2: The final transformed network is made up of a


We now extend the construction of the equivalent graph to set of directed trees. Each sink is the root of one tree. All leaf
the entire network. The single node transformation cannot be nodes are copies of one of the source nodes. Scaling is done
applied to all nodes simultaneously. A careful sequencing of only at the leaf nodes.
nodes is necessary as discussed below.
In the transformation of a single node v, since all edges From the above theorem (see [8] for a proof), we see that
e ∈ I(v) are replicated |O(v)| times, the number of edges the graph transformation can be applied starting from the sink
in O(v 0 ), v 0 ∈ {tail(e) : e ∈ I(v)} may increase. However, and working towards the source. The topological sorting is a
in order to apply the single node transformation on a node formal method that achieves such a sequencing. An example
v 0 ∈ G, the complete set O(v 0 ) needs to be known beforehand of this transformation applied to the butterfly network (Fig. 3a)
along with the symbols that should flow on each edge e ∈ can be seen in Fig. 3b. From the theorem, we see that there
O(v 0 ). To solve this problem, we notice that O(v 0 ) will not will be four trees at the end of the transformation rooted at
change once the single-node transformation discussed above the sink nodes 7, 8, 9 and 10. Working up from Node 7
has been applied to all nodes v ∈ {head(e) : e ∈ O(v 0 )}. towards the source and copying necessary nodes, we see that
Hence, the transformation can be applied to v 0 only after it the tree rooted at Node 7 in Fig. 3b results in a straightforward
has been applied to all nodes v ∈ {head(e) : e ∈ O(v 0 )}. manner. Similarly, the other trees can be obtained. However,
This sequencing can be achieved by applying the trans- we point out later that this intuitive method might not be easy
formation in the topological order defined by the original to implement on more complicated networks.
directed acyclic network. A standard algorithm for finding
To apply the graph transformation algorithm formally, one
such a topological ordering of the nodes can be found in
possible topological ordering of the nodes is 7 − 8 − 9 − 10 −
[7]. The algorithm which takes a network coding problem and
5 − 6 − 4 − 3 − 1 − 2. Nodes 7, 8, 9 and 10 are sink nodes, and
constructs an equivalent group-valued circulation network is
occur first in the ordering. Nodes 5 and 6 will be replicated
given below:
Algorithm 1: Graph Transformation 2 times, since they both have 2 output links. This will result
Input: A directed acyclic graph G = (V, E). in the replication of the edges e4 , e5 , e6 and e7 . Node 4 will
now have 4 output links and will have to be replicated as
1) Obtain a topological ordering, P , of the nodes in G.
many times along with edge e3 . Similarly, Node 3 will also
2) Let G0 (V 0 , E 0 ) = G(V, E).
be replicated 4 times along with edges e1 and e2 . Finally, the
3) For each node v ∈ V in the order defined by P , do
source nodes 1 and 2 will be replicated 6 times each since
a) If O(v) > 1, for each edge e ∈ O(v), do they both now have 6 output links.
0
• For each edge e ∈ O(v), add a new node v to
0
V with one output link connecting it to head(e) Note that the scaling variables in the equivalent group-
and one input link e0 for each e00 ∈ I(v) such valued circulation occur only at the leaf source nodes. All
that tail(e0 ) = tail(e00 ). the intermediate nodes simply perform addition. This is the
0
• Remove v from V and all edges in I(v) and main reason for the simplification in the structure of our
0
O(v) from E . formulation. However, the flows in the different trees of the
Output: G0 = (V 0 , E 0 ), a transformed network such that equivalent graph are not independent, since they share edges
group-valued circulations in G0 are equivalent to network- of the original graph. This dependence results in the degree-2
coded information flows in G. equations of our formulation.
1 e1 a1 X1 1 e4 e8 7 a5 X1 1
e2 2 e1
X1 e3 X1
a2 X1 1 5 3 4
e1 e6 e10
3 e3 e2 e7 9
e4 e5 3 4 b3 X2 2
e3 e5 6
e2
b1 X2 2 b4 X2 2
4
e6 e7 a3 X1 1 a6 X1 1e
e4 1 e3
5 6 a4 X1 1 5 e9 3 4
e8 e9 e10 e11 e1 e6 e2
e3 8 e7
3 4 b5 X2 2 6
X2 8 9 X1 X2 10 X2 e5 X2
X1 7 e2 e11
(a) b2 X2 2 (b) b6 X2 2 10

Fig. 3. (a) The (modified) butterfly network with 4 sinks and 2 sources. (b) The final transformed network in which group-valued circulations correspond to
information flow in the original network. The transformed network has 4 disjoint trees - one for each each sink node. The appropriate scaling factors at the
leaf nodes are denoted by ai ’s and bi ’s

D. Algebraic Formulation sink nodes 7, 8, 9 and 10 are (a1 + a2 )X1 + b1 X2 , (a3 +


We will describe and illustrate the formulation with the a4 )X1 + b2 X2 , a5 X1 + (b3 + b4 )X2 and a6 X1 + (b5 + b6 )X2 ,
butterfly network (Fig. 3a) for simplicity. The generalization respectively. For the symbol at Node 7 to be equal to the
to arbitrary networks follows immediately. required X1 , we have a1 +a2 = 1 and b1 = 0. Other equations
1) Scaling variables: Let us now define one variable for are derived similarly. Hence, in the butterfly network of Fig.
each scalar (ai ’s, bi ’s) associated with each leaf node as illus- 3, we get the following linear equations:
trated in Fig. 3b for the butterfly network. The variable names
are chosen as follows. Source nodes 1 and 2 are assigned the a1 + a2 = 1; b1 = 0; a3 + a4 = 0; b2 = 1
variable names a and b, respectively. The subscripts are chosen
a5 = 1; b3 + b4 = 0; a6 = 0; b5 + b6 = 1 (4)
tree by tree in the transformed network. In the tree with root as
Node 7, the two copies of source node 1 are assigned variables A formal statement of the no interference conditions in the
a1 and a2 , while the single copy of source node 2 is assigned general case can be found in [8].
the variable b1 . In the tree with root node 8, the variables are 3) Edge Compatibility conditions: The circulations in the
a3 , a4 for the two copies of Node 1, and b2 for the single copy different trees of the transformed network are not independent,
of Node 2. We continue in this manner to name the scaling because they contain copies of the same edge that can carry
variables at the source leaf nodes of the other two trees to get only one symbol at a time on the original network. Hence, in
variables a1 , a2 , · · · , a6 and b1 , b2 , · · · , b6 . the transformed network, these edges must carry “compatible”
Once values are assigned to the scaling variables (from symbols. The requirement is that symbols flowing through two
some field), all edge functions are defined in the transformed copies of the same edge in the transformed network must be
network. Hence, the network coding problem has been reduced scalar multiples of each other.
to finding a feasible assignment of values to these unknown For example, given a network with two source nodes pro-
variables (scaling factors at leaf nodes) from a field such that ducing symbols X1 and X2 , suppose the transformed network
the circulations generated in the transformed graph can be has two copies of an edge e, denoted by e1 and e2 , carrying
implemented as a code over the given network. The scaling symbols a1 X1 +b1 X2 and a2 X1 +b2 X2 , respectively. In order
variables need to satisfy two types of conditions as described to implement a network code on the original network, it is
in Sections IV-D2 and IV-D3 below for obtaining a valid necessary and sufficient that the two edge functions on e1 and
network flow in the original network that meets the connection e2 are scalar multiples of each other. If they are not scalar
requirements. multiples, it is clear that the original edge will need to carry
2) No Interference conditions: The required output at each two symbols per unit time in the original network, which is
sink must be received without any “interference” from other not possible. If they are scalar multiples, a network code can
source symbols to meet the connection requirements. The be obtained for the original network as shown later in Section
symbol received at the root of one particular tree in the VI. Intuitively, since scaling variables are allowed on links of
transformed graph is equal to the sum of the scaled versions the original network, scalar multiples in duplicated edges that
of the source symbols flowing from the leaf nodes. This arise from multiple outgoing links in the original graph can be
implies that, for each tree, the scalar constants pertaining to accommodated by suitable scaling in different outgoing links.
the required symbol at the sink must add up to 1 and those Hence, the scalars a1 , a2 , b1 , b2 of the edge functions of e1
pertaining to every other symbol must add up to 0. and e2 need to satisfy the condition, a1 b2 = a2 b1 . These type
In Fig. 3b, the symbols (edge functions) received at the of degree-2 equations relate the scaling factors for every pair
of symbols flowing through every pair of copies of an edge and b5 and the 6 equations as shown below.
in different trees of the transformed network. Notice that the
equation is equivalent to the fractional form aa12 = bb12 modified a2 = 0; b5 = 0; a2 b5 = 0; a2 b3 = 0; a4 b5 = 0; a4 b3 = 1
to avoid division by zero problems when some variable takes Subsequently, a2 and b5 can also be eliminated, using the lin-
the value zero. However, the fractional form is more intuitive ear equations above, leaving just 2 variables and the relation:
and can be readily extended to obtain edge compatibility
conditions when more than two sources are involved. a4 b3 = 1 (6)
In our illustrative example ¡of¢Fig. 3b, the edge e3 is copied
Hence, the network coding problem for the example of the
four times. Since there are 42 = 6 ways of choosing two
butterfly network has been reduced to solving only one (non-
copies among the four, there will be six edge compatibility
trivial) equation given in (6).
conditions for e3 . The symbols on the copies of e3 on the
trees with root nodes 7, 8, 9 and 10 are a2 X1 + b1 X2 , a4 X1 + V. E XAMPLES AND C OMPARISON
b2 X2 , a5 X1 + b3 X2 and a6 X1 + b5 X2 , respectively. Hence,
A. Illustration
in fractional form, we need aa42 = bb12 (roots 7 and 8), aa25 = bb13
(roots 7 and 9), aa62 = bb15 (roots 7 and 10), aa54 = bb23 (8 and 9), To further clarify the graph and flow transformation, we
a4 b2 a5 b3 illustrate, in Fig. 4, the steps of the transformation for the
a6 = b5 (8 and 10) and a6 = b5 (9 and 10). flow in the butterfly network of Fig. 1 to the sinks at Node 7
In the degree-2 form, the edge compatibility conditions for
and Node 8.
the four copies of the edge e3 are listed below:
In Fig. 4a, we start with the flows to the sink nodes 7 and
a2 b2 = a4 b1 ; a2 b3 = a5 b1 ; a2 b5 = a6 b1 8. The scaling factors are eliminated and moved one node up
in Fig. 4b by copying Node 5. The same process continues in
a4 b3 = a5 b2 ; a4 b5 = a6 b2 ; a5 b5 = a6 b3 (5) Figs. 4c and 4d till we get two trees and the scaling factors
are at the leaf nodes. At this point, we have a group-valued
For the butterfly network example, we do not get any other
circulation in the trees.
edge compatibility conditions. For edges e6 and e7 , the equa-
tions are identical to the ones listed above. Also, there are no Notice that the relationship between the scaling variables in
equations for edges e1 , e2 , e4 and e5 since these edges have our formulation, shown in Fig. 3b, and the direct formulation
scaled versions of the same symbol flowing through them. (Fig. 1) can now be seen readily. For instance, a1 = α3 ,
a2 = α4 α1 , b1 = α4 α2 , a3 = α5 , a4 = α6 α1 , b2 = α6 α2 .
We see that the compatibility conditions can be simplified as
This, along with similar relationships for nodes 9 and 10, is the
not all of them are independent. However, since the variables
substitution of variables that results in our formulation from
can take the value zero, simplifying the equations needs to be
the direct formulation. Our algorithm for graph transformation
done very carefully. Hence, we simply enumerate all equations
along with the no interference and edge compatibility condi-
at this stage and simplify later. A formal statement of the edge
tions perform this substitution implicitly resulting in linear and
compatibility conditions in the general case can be found in
degree-2 equations with possibilities for simplification. Finally,
[8].
we obtain the simple equation, a4 b3 = 1, which is not obvious
4) Simplifying the equations: The linear equations (No
even when the substitution is clearly specified.
Interference conditions) possess the special property that each
of them involves a mutually exclusive set of variables. Using B. Another Example
this property, we can simplify the system of equations derived
Consider the network shown in Fig. 5a taken from [5], [9],
earlier in the following two ways:
where it has been proved to have linear coding solutions only
1) The first simplification would involve elimination of over fields of characteristic 2.
variables (and their corresponding linear equations) that Nodes 1, 2 and 3 are sources producing X1 , X2 and X3
do not occur in any non-linear equation since these respectively. Nodes 12, 13 and 14 are sinks demanding X3 ,
variables are trivially solvable and the corresponding X1 and X2 respectively. The trees in the equivalent group-
linear equations are trivially satisfied [8]. valued circulation network are shown in Fig. 5b,c,d. Notice
2) We can eliminate one variable using each linear equation that the intuitive method of starting with the sink and moving
since all of them involve mutually exclusive sets of up towards the source for performing the graph transformation
variables. One round of this simplification might lead needs care in its execution for this example.
to some of the non-linear equations becoming linear. The set of equations generated by the “No Interference
Hence, this elimination can be repeated till all remaining condition” and “Edge Compatibility condition” can de found
equations are non-linear. in [8]. After simplification, we get 9 equations in 6 variables
In the case of the butterfly network, after the first step of sim- shown below.
plification, we are left with 8 variables, 4 linear equations and
a2 b3 = b1 ; a2 = −a4 b1 ; a4 b3 = −1;
6 non-linear equations. In the second step of the simplification,
after the first round of elimination of variables using the linear a2 c4 = a4 ; c4 = a4 c2 ; b3 c4 + c2 = 0;
equations (4) in (5), we are left with 4 variables: a2 , a4 , b3 b1 c2 + b3 = 0; b1 c4 + 1 = 0; b3 c4 = c2 (7)
α3 X1 α5 X1

α4 (α1 X1 + α2 X2 ) α6 (α1 X1 + α2 X2 )
α4 (α1 X1 + α2 X2 ) α6 (α1 X1 + α2 X2 )
+α3 X1 +α5 X1

5 5
7 8
X1 X2

(a) 7 (b) 8
X1 X2

α3 X1 α4 α1 X1 α4 α2 X2 α5 X1 α6 α1 X1 α6 α2 X2

1 1 2 1 1 2 α3 X1 α5 X1

1 1
α4 (α1 X1 + α2 X2 ) α6 (α1 X1 + α2 X2 )
3 3

4 4 4 4

5 5 5 5

7 (d) 8 7 (c) 8
X2 X2
X1 X1

Fig. 4. Illustration of flow transformation.

1 2 3 1 1 2 2 3 2 3 1 2 1 2 3 2 3
4 5 4 1 2
e1 e4 e1 4
e4 5 e1 e1 4 4 5
6 7 6 e4 5 3 e1 e4
6 6 6
7 7 7
8 9 8 9
e2 e3 e2 8 9 e3
e2 e3
12 10 14 11 13 12 10 11 13
10 14 11 (d)
(a) (b) (c)

Fig. 5. (a) An example network that is solvable only over fields with characteristic 2. There are three sources - 1, 2 and 3 - producing symbols X1 , X2 and
X3 respectively. There are three sinks - 12, 13 and 14 - demanding symbols X3 , X1 and X2 respectively. (b),(c),(d) The final transformed network with 3
trees - one for each sink node.

TABLE I
From equations b3 c4 + c2 = 0 and b3 c4 = c2 , we can derive C OMPARISON OF FORMULATIONS
the relation 2c2 = 0. Substituting c2 = 0 in the above system
leads to the condition 1 = 0 which is not possible. Hence, we
Group-valued Circulations Direct Formulation
must have 2 = 0, which implies that the system is not solvable Example Var.1 Deg. 2 Eqns1 Var. Eqns Deg.
in any field with an odd characteristic. Also, in characteristic
2, setting all variables to 1 in the above equations, is seen to Butterfly 4 6 10 8 2
Fig. 5a 8 15 14 9 3
be a solution. In contrast, the direct forumation of [1] results [1, Fig. 5] 9 5 14 4 4
in a system of 17 equations in 22 variables given in [5]. [9, Fig. 3] 27 45 50 32 3
[5, Fig. 3] 12 30 22 17 3
1 After one iteration of elimination using the linear equations

This example demonstrates that, in practice, working with


the equations derived through our formulation can be advanta- C. A Bigger Example
geous. A comparison of the number of variables and equations Consider an ISP network topology shown in Fig. 6 taken
between our formulation and the direct formulation of [1] for from [10]. The network has 87 nodes and 161 edges. Assuming
some other examples is shown in Table I. all links have unit capacity, we tried the following three cases
86

48 85
50
9

8 35 36
7 66
60 51
59 14
39 64
54
61 22
53
38 52
55
21
40 69
37 27

77 23 3
80 18
28 70
41
2
79 81 1
19
5
75 4
62 63
6 29
57 20 24
26
49 65 13
44
76 25
67 74
12
43
17
42
30
68 16
11
47
15 10 46
45
84 56

31
78
32
33 34 72
58 87
71
73
82
83

Fig. 6. An ISP network over Europe with 87 nodes and 161 edges.

with different number of sources and sinks on this network. variables. Our formulation initially gives 88 linear and
Further, we assumed characteristic 2 in our simplification 11198 degree-2 equations in 632 variables. But on
steps. The five nodes 31, 41, 47, 69 and 82 were set as sources applying the simplification steps, assuming characteristic
in all the following cases. Each sink demands data from one 2, it turns out that the system is not solvable over
of the source nodes. The sinks and their demands were chosen characteristic 2.
at random depending on graph connectivity. Hence, we see that the algebraic formulation of scalar linear
1) 5 sources (all rate 1) and 10 sinks. The direct for- network coding based on group valued circulations appears to
mulation (from [1]) gives a system of 44 equations work better even over large networks with a few sources and
in 30 variables. Our formulation initially results in sinks.
44 linear equations and 3 degree-2 equations in 316
VI. N ETWORK C ODE FROM G ROUP - VALUED
variables. After applying the simplification steps, we
C IRCULATIONS
are left with only 3 degree-2 equations in 7 variables
assuming solution exists in a characteristic 2 field. In We now describe an algorithm to obtain a network code for
fact, setting all the remaining 7 variables to zero results the original network from the group-valued circulations on the
in a valid solution to the three equations (some other transformed network. Note that this completes the proof of the
scaling variables are non-zero). Hence, a solution over sufficiency of edge compatibility conditions. We will briefly
GF(2) is possible. describe the algorithm by example. A formal description with
2) 5 sources (one with rate 2, others rate 1) and 12 sinks. notation can be found in [8].
The direct formulation yields a system of 50 equations in We compute two vectors for every edge e of the graph
40 variables in this case. In comparison, our formulation G = (V, E). The first vector fe that represents the edge
P|S|
initially resulted in 50 linear equations and 34 degree- function or symbol i=1 fe (i)Xi sent over edge e is given
2 equations in 330 variables. But after applying the by [fe (1) fe (2) · · · fe (|S|)]. Suppose e is replicated n times
simplification steps, we are left with only 13 degree-2 to obtain edges e00j , 1 ≤ j ≤ n in the transformed graph
equations in 17 variables assuming solution exists in a G0 = (V 0 , E 0 ). The second vector ce = [c1 c2 · · · cn ] is such
P|S|
characteristic 2 field. Again the all-zero solution is valid that the edge function on e00j ∈ E 0 is cj i=1 fe (i)Xi . Note
for the remaining 17 variables resulting in a network that such a scaling property is guaranteed for all copies of an
code over GF(2). edge by the compatibility conditions. Once the vectors fe are
3) 5 sources (all with rate 2) and 11 sinks. The direct computed for all e ∈ E, the network code in G is completely
formulation yields a system of 88 equations in 180 known.
ce1 = [a1 b1 c1 ] ce2 = [a2 b2 c2 ] ce3 = [a3 b3 c3 ]
A1 A2 A3 a1 A1 a2 A2 a3 A3 b1 A1 b2 A2 b3 A3 c1 A1 c2 A2 c3 A3

e1 e2 e3 e2 (1) e2 (2) e2 (3)


e1 (1) e3 (1) e1 (2) e3 (2) e1 (3) e3 (3)

v v(1) v(2) v(3)

e4 e5 e4 (1) e4 (2) e5 (1)

a1 A1 + a2 A2 c1 A1 + c2 A2 a1 A1 + a2 A2 b1 A1 + b2 A2 + b3 A3 c1 A1 + c2 A2
+a3 A3 +c3 A3 +a3 A3 = k(a1 A1 + a2 A2 + a3 A3 ) +c3 A3

v in G ce4 = [1 k] ce5 = [1]


Copies of v in G0

Fig. 7. Determining the vectors f and c for outgoing links

Suppose fe0 and ce0 are known for all the incoming edges equivalent group-valued circulation network and to arrive at
e0 ∈ I(v) for a node v ∈ V . The vectors fe and ce can be a system of polynomial equations (of maximum degree 2)
computed for the outgoing edges e ∈ O(v) as illustrated for that represents the scalar linear network coding problem. We
a sample case in Fig. 7. have demonstrated the computational advantages of our new
In the figure, a node v ∈ V with I(v) = {e1 , e2 , e3 } algebraic formulation over the traditional approach.
and O(v) = {e4 , e5 } is replicated thrice into v(1), v(2) and The obvious intuitive connection between network coding
v(3) in G0 . The incoming and outgoing links are replicated and group-valued circulations is quite interesting in itself and
as shown. For instance, the edge e1 is replicated thrice as lends a new perspective to the network coding problem. We
e1 (1), e1 (2) and e1 (3). Suppose there are three source nodes have explored one aspect of this connection by arriving at
S = {s1 , s2 , s3 }, P
and fei = [αi1 αi2 αi3 ] resulting in edge an alternative algebraic formulation for the problem. Other
3
functions Ai = j=1 αij Xj for i = 1, 2, 3. The scaling aspects and applications of this connection are yet to be
vectors cei are as shown in the figure. explored.
Using the edge functions and scaling factors on the incom- Since our system of equations is equivalent to the one in
ing edges, the edge function of the copies of ei , i = 1, 2, 3 [1], an alternative way of viewing our formulation is that we
are computed first. For instance, the edge function of e2 (2) is simplify the equations in [1] through a recursive graphical
computed as b2 A2 . Then, the edge function for the outgoing method.
links of v(1), v(2) and v(3) in G0 are computed by simple
R EFERENCES
addition. As shown in the figure, the symbols sent on e4 (1)
and e4 (2) will be scalar multiples. We may then assign [1] R. Koetter and M. Médard, “An algebraic approach to network coding”,
IEEE/ACM Trans. Networking, vol. 11, pp. 782–794, October 2003.
the Psymbol on e4Pin G P to be the symbol on e4 (1) given [2] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, “Network
3 3 3
by i=1 ai Ai = j=1 ( i=1 ai αij )Xj (assumed nonzero). information flow”, IEEE Trans. Inform. Theory, vol. 46, pp. 1204–1216,
Then, fe4 and ce4 are assigned suitably. Also, the network July 2000.
[3] S.-Y. R. Li, R. W. Yeung, and N. Cai, “Linear network coding”, IEEE
coding coefficients at v for the output link e4 , denoted by Trans. Inform. Theory, vol. 49, pp. 371, February 2003.
αei ,e4 , i = 1, 2, 3, is given by cei (1), i = 1, 2, 3, the first [4] S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, and
element of the corresponding vectors (since the symbol on L. Tolhuizen, “Polynomial time algorithms for multicast network code
construction”, IEEE Trans. Inform. Theory, vol. 51, pp. 1973–1982,
e4 (1) was selected to be the symbol that would flow through June 2005.
e4 in G). [5] R. Dougherty, C. Freiling, and K. Zeger, “Linear network codes and
In this manner, all the nodes are processed in a suitable order systems of polynomial equations”, IEEE Trans. Inform. Theory, vol. 54,
pp. 2303–2316, May 2008.
to compute the network code for the original graph from the [6] R. Diestel, Graph Theory (Graduate Texts in Mathematics), Third
group-valued circulation on the transformed graph. Edition, Springer-Verlag, 2000.
[7] Narsingh Deo, Graph Theory with Application to Engineering and
VII. C ONCLUSION Computer Science, Prentice-Hall, Englewood Cliffs, NJ, 1974.
[8] Abhay Subramanian and Andrew Thangaraj, “A simple alge-
In this work, we have established an equivalence between braic formulation for the scalar linear network coding problem”,
network information flows and group-valued circulations and http://arxiv.org/abs/0807.1158.
used the equivalence to arrive at an algebraic formulation [9] R. Dougherty, C. Freiling, and K. Zeger, “Insufficiency of linear coding
in network information flow”, IEEE Trans. Inform. Theory, vol. 51, pp.
for the network coding problem that is different from the 2745–2759, August 2005.
one first proposed by Koetter et al in [1]. Given a network [10] T. Anderson, R. Mahajan, N. Spring, and D. Wetherall, “Rocketfuel
coding problem, we have given algorithms to construct an project”, http://www.cs.washington.edu/research/networking/rocketfuel.

Você também pode gostar