This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Network Coding Capacity: A Functional Dependence Bound

Satyajit Thakor, Alex Grant and Terence Chan satyajitsinh.thakor@postgrads.unisa.edu.au Institute for Telecommunications Research
University of South Australia
Abstract

Explicit characterization and computation of the multi-source network coding capacity region (or even bounds) is long standing open problem. In fact, finding the capacity region requires determination of the set of all entropic vectors Γ\Gamma^{*}, which is known to be an extremely hard problem. On the other hand, calculating the explicitly known linear programming bound is very hard in practice due to an exponential growth in complexity as a function of network size. We give a new, easily computable outer bound, based on characterization of all functional dependencies in networks. We also show that the proposed bound is tighter than some known bounds.

I Introduction

The network coding approach introduced in [1, 2] generalizes routing by allowing intermediate nodes to forward packets that are coded combinations of all received data packets. This yields many benefits that are by now well documented in the literature [3, 4, 5, 6]. One fundamental open problem is to characterize the capacity region and the classes of codes that achieve capacity. The single session multicast problem is well understood. In this case, the capacity region is characterized by max-flow/min-cut bounds and linear network codes maximize throughput [2].

Significant complications arise in more general scenarios, involving more than one session. Linear network codes are not sufficient for the multi-source problem [7, 8]. Furthermore, a computable characterization of the capacity region is still unknown. One approach is to bound the capacity region by the intersection of a set of hyperplanes (specified by the network topology and sink demands) and the set of entropy functions Γ\Gamma^{*} (inner bound), or its closure Γ¯\bar{\Gamma}^{*} (outer bound) [9, 10, 3]. An exact expression for the capacity region does exist, again in terms of Γ\Gamma^{*} [11]. Unfortunately, this expression, or even the bounds [9, 10, 3] cannot be computed in practice, due to the lack of an explicit characterization of the set of entropy functions for more than three random variables. In fact, it is now known that Γ\Gamma^{*} cannot be described as the intersection of finitely many half-spaces [12]. The difficulties arising from the structure of Γ\Gamma^{*} are not simply an artifact of the way the capacity region and bounds are written. In fact it has been shown that the problem of determining the capacity region for multi-source network coding is completely equivalent to characterization of Γ\Gamma^{*} [8].

One way to resolve this difficulty is via relaxation of the bound, replacing the set of entropy functions with the set of polymatroids Γ\Gamma (which has a finite characterization). In practice however, the number of variables and constraints increase exponentially with the number of links in the network, and this prevents practical computation for any meaningful case of interest.

In this paper, we provide an easily computable relaxation of the LP bound. The main idea is to find sets of edges which are determined by the source constraints and sink demands such that the total capacity of these sets bounds the total throughput. The resulting bound is tighter than the network sharing bound [13] and the bounds based on information dominance [14].

Section II provides some background on pseudo-variables and pseudo entropy functions (which generalize entropy functions) [8]. These pseudo variables are used to describe a family of linear programming bounds on the capacity region for network coding. In Section III we give an abstract definition of a functional dependence graph, which expresses a set of local dependencies between pseudo variables (in fact a set of constraints on the pseudo entropy). Our definition extends that introduced by Kramer [15] to accommodate cycles. This section also provides the main technical ingredients for our new bound. In particular, we describe a test for functional dependence, and give a basic result relating local and global dependence. The main result is presented in Section IV.

Notation: Sets will be denoted with calligraphic typeface, e.g. 𝒳\mathcal{X}. Set complement is denoted by the superscript 𝒳c\mathcal{X}^{c} (where the universal set will be clear from context). Set subscripts identify the set of objects indexed by the subscript: X𝒜={Xa,a𝒜}X_{\mathcal{A}}=\{X_{a},a\in\mathcal{A}\}. The power set 2𝒳={𝒜,𝒜𝒳}2^{\mathcal{X}}=\{\mathcal{A},\mathcal{A}\subseteq\mathcal{X}\} is the collection of all subsets of 𝒳\mathcal{X}. Where no confusion will arise, set union will be denoted by juxtaposition, 𝒜=𝒜\mathcal{A}\cup\mathcal{B}=\mathcal{A}\mathcal{B}, and singletons will be written without braces.

II Background

II-A Pseudo Variables

We give a brief revision of the concept of pseudo-variables, introduced in [8]. Let 𝒩={1,2,,N}\mathcal{N}=\{1,2,\dots,N\} be a finite set, and let X𝒩={X1,X2,,XN}X_{\mathcal{N}}=\{X_{1},X_{2},\dots,X_{N}\} be a ground set associated with a real-valued function g:2X𝒩g:2^{X_{\mathcal{N}}}\mapsto{\mathbb{R}} defined on subsets of X𝒩X_{\mathcal{N}}, with g()=0g(\emptyset)=0. We refer to the elements of X𝒩X_{\mathcal{N}} as pseudo-variables and the function gg as a pseudo-entropy function. Pseudo-variables and pseudo-entropy generalize the familiar concepts of random variables and entropy. Pseudo-variables do not necessarily take values, and there may be no associated joint probability distribution. A pseudo-entropy function may assign values to subsets of X𝒩X_{\mathcal{N}} in a way that is not consistent with any distribution on a set of NN random variables. A pseudo-entropy function gg can be viewed as a point in a 2N2^{N} dimensional Euclidean space, where each coordinate of the space is indexed by a subset of X𝒩X_{\mathcal{N}}.

A function gg is called polymatroidal if it satisfies the polymatroid axioms.

g()\displaystyle g(\emptyset) =0\displaystyle=0 (1)
g(X𝒜)\displaystyle g(X_{\mathcal{A}}) g(X),if𝒜\displaystyle\geq g(X_{\mathcal{B}}),\quad\text{if}\ \mathcal{B}\subseteq\mathcal{A} non-decreasing (2)
g(X𝒜)+g(X)\displaystyle g(X_{\mathcal{A}})+g(X_{\mathcal{B}}) g(X𝒜)+g(X𝒜)\displaystyle\geq g({X_{\mathcal{A}\cup\mathcal{B}}})+g({X_{\mathcal{A}\cap\mathcal{B}}}) submodular (3)

It is called Ingletonian if it satisfies Ingleton’s inequalities (note that Ingletonian gg are also polymatroids) [16]. A function gg is entropic if it corresponds to a valid assignment of joint entropies on NN random variables, i.e. there exists a joint distribution on NN discrete finite random variables Y1,,YNY_{1},\dots,Y_{N} with g(X𝒜)=H(Y𝒜),𝒜𝒩g(X_{\mathcal{A}})=H(Y_{\mathcal{A}}),\mathcal{A}\subseteq\mathcal{N}. Finally, gg is almost entropic if there exists a sequence of entropic functions h(k)h^{(k)} such that limkh(k)=g\lim_{k\to\infty}h^{(k)}=g. Let ΓΓ¯ΓInΓ\Gamma^{*}\subset\bar{\Gamma}^{*}\subset\Gamma^{\text{In}}\subset\Gamma respectively denote the sets of all entropic, almost entropic, Ingletonian and polymatroidal, functions.

Both Γ\Gamma and ΓIn\Gamma^{\text{In}} are polyhedra. They can be expressed as the intersection of a finite number of half-spaces in N{\mathbb{R}}^{N}. In particular, every gΓg\in\Gamma satisfies, (1)-(3), which can be expressed minimally in terms of

N+(N2)2N2N+\binom{N}{2}2^{N-2}

linear inequalities involving 2N12^{N}-1 variables [9]. Each gΓIng\in\Gamma^{\text{In}} satisfies an additional

146N5N+324N3N+142N\frac{1}{4}6^{N}-5^{N}+\frac{3}{2}4^{N}-3^{N}+\frac{1}{4}2^{N}

linear inequalities [16].

Definition 1

Let 𝒜,𝒳\mathcal{A},\mathcal{B}\subseteq\mathcal{X} be subsets of a set of pseudo-variables 𝒳\mathcal{X} with pseudo-entropy gg. Define111Note that this yields the chain rule for pseudo-entropies to be true by definition.

g(𝒜)g(𝒜)g(𝒜).g\left(\mathcal{B}\mid\mathcal{A}\right)\triangleq g\left(\mathcal{A}\mathcal{B}\right)-g(\mathcal{A}). (4)

A pseudo-variable X𝒳X\in\mathcal{X} is said to be a function of a set of pseudo-variables 𝒜𝒳\mathcal{A}\subseteq\mathcal{X} if g(X𝒜)=0g\left(X\mid\mathcal{A}\right)=0.

Definition 2

Two subsets of pseudo-variables 𝒜\mathcal{A} and \mathcal{B} are called independent if g(𝒜)=g(𝒜)+g()g\left(\mathcal{A}\mathcal{B}\right)=g(\mathcal{A})+g(\mathcal{B}), denoted by 𝒜\mathcal{A}\operatorname{\perp}\mathcal{B}.

II-B Network Coding and Capacity Bounds

Let the directed acyclic graph 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) serve as a simplified model of a communication network with error-free point-to-point communication links. Edges ee\in\mathcal{E} have capacity Ce>0C_{e}>0. For edges e,fe,f\in\mathcal{E}, write fef\to e as shorthand for head(f)=tail(e)\mathrm{head}(f)=\mathrm{tail}(e). Similarly, for an edge ff\in\mathcal{E} and a node u𝒱u\in\mathcal{V}, the notations fuf\to u and ufu\rightarrow f respectively denote head(f)=u\mathrm{head}(f)=u and tail(f)=u\mathrm{tail}(f)=u.

Let 𝒮\mathcal{S} be an index set for a number of multicast sessions, and let {Ys:s𝒮}\{Y_{s}:s\in\mathcal{S}\} be the set of source variables. These sources are available at the nodes identified by the mapping a:𝒮𝒱a:\mathcal{S}\mapsto\mathcal{V}. Each source may be demanded by multiple sink nodes, identified by the mapping b:𝒮2𝒱b:\mathcal{S}\mapsto 2^{\mathcal{V}}. Each edge ee\in\mathcal{E} carries a variable UeU_{e} which is a function of incident edge variables and source variables.

Definition 3

Given a network 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}), with sessions 𝒮\mathcal{S}, source locations aa and sink demands bb, and a subset of pseudo-entropy functions Δ2|𝒮|+||\Delta\subset{\mathbb{R}}^{2^{|\mathcal{S}|+|\mathcal{E}|}} on pseudo-variables Y𝒮,UY_{\mathcal{S}},U_{\mathcal{E}}, let (Δ)={(Rs,s𝒮)}\mathcal{R}(\Delta)=\{(R_{s},s\in\mathcal{S})\} be the set of source rate tuples for which there exists a gΔg\in\Delta satisfying

s𝒮\displaystyle\operatorname{\perp}_{s\in\mathcal{S}} Ys\displaystyle\;Y_{s} (𝒞1\mathcal{C}_{1})
g(Ue{Ys:a(s)e},{Uf:fe})\displaystyle g\left(U_{e}\mid\{Y_{s}:{a(s)\to e}\},\{U_{f}:f\to e\}\right) =0,e\displaystyle=0,e\in\mathcal{E} (𝒞2\mathcal{C}_{2})
g(YsUe:eu)\displaystyle g\left(Y_{s}\mid U_{e}:{e\to u}\right) =0,ub(s)\displaystyle=0,u\in b(s) (𝒞3\mathcal{C}_{3})
g(Ue)\displaystyle g(U_{e}) Ce,e\displaystyle\leq C_{e},e\in\mathcal{E} (𝒞4\mathcal{C}_{4})
g(Ys)\displaystyle g(Y_{s}) Rs,s𝒮\displaystyle\geq R_{s},s\in\mathcal{S}

It is known that (Γ)\mathcal{R}({\Gamma^{*})} and (Γ¯)\mathcal{R}({\bar{\Gamma}^{*})} are inner and outer bounds for the set of achievable rates (i.e. rates for which there exist network codes with arbitrarily small probability of decoding error).

It is known that (Γ)\mathcal{R}(\Gamma) is an outer bound for the set of achievable rates [9]. Similarly, (ΓIn)\mathcal{R}(\Gamma^{\text{In}}) is an outer bound for the set of rates achievable with linear network codes [8]. Clearly (ΓIn)(Γ)\mathcal{R}(\Gamma^{\text{In}})\subset\mathcal{R}(\Gamma). The sum-rate bounds induced by (ΓIn)\mathcal{R}(\Gamma^{\text{In}}) and (Γ)\mathcal{R}(\Gamma) can in principle be computed using linear programming, since they may be reformulated as

maxs𝒮g(Ys)subject tog𝒞1𝒞2𝒞3𝒞4Δ\begin{split}\max\sum_{s\in\mathcal{S}}g(Y_{s})\quad\text{subject to}\\ g\in\mathcal{C}_{1}\cap\mathcal{C}_{2}\cap\mathcal{C}_{3}\cap\mathcal{C}_{4}\cap\Delta\end{split} (5)

where Δ\Delta is either Γ\Gamma or ΓIn\Gamma^{\text{In}}, and 𝒞1,𝒞2,𝒞3,𝒞4\mathcal{C}_{1},\mathcal{C}_{2},\mathcal{C}_{3},\mathcal{C}_{4} are the subsets of pseudo-entropy functions satisfying the so-labeled constraints above. Clearly the constraint set 𝒞1𝒞2𝒞3𝒞4Δ\mathcal{C}_{1}\cap\mathcal{C}_{2}\cap\mathcal{C}_{3}\cap\mathcal{C}_{4}\cap\Delta is linear.

One practical difficulty with computation of (5) is the number of variables and the number of constraints due to Γ\Gamma (or ΓIn\Gamma^{\text{In}}), both of which increase exponentially with |||\mathcal{E}|. The aim of this paper is to find a simpler outer bound. One approach is to use the functional dependence structure induced by the network topology to eliminate variables or constraints from Γ\Gamma [17]. Here we will take a related approach, that directly delivers an easily computable bound.

III Functional Dependence Graphs

Definition 4 (Functional Dependence Graph)

Let 𝒳={X1,,XN}\mathcal{X}=\{X_{1},\dots,X_{N}\} be a set of pseudo-variables with pseudo-entropy function gg. A directed graph 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) with |𝒱|=N|\mathcal{V}|=N is called a functional dependence graph for 𝒳\mathcal{X} if and only if for all i=1,2,,Ni=1,2,\dots,N

g(Xi{Xj:(j,i)})=0.g\left(X_{i}\mid\{X_{j}:(j,i)\in\mathcal{E}\}\right)=0. (6)

With an identification of XiX_{i} and node i𝒱i\in\mathcal{V}, this Definition requires that each pseudo-variable XiX_{i} is a function (in the sense of Definition 1) of the pseudo-variables associated with its parent nodes. To this end, define

π(i)={j𝒱:(j,i)}.\pi(i)=\{j\in\mathcal{V}:(j,i)\in\mathcal{E}\}.

Where it does not cause confusion, we will abuse notation and identify pseudo-variables and nodes in the FDG, e.g. (6) will be written g(iπ(i))=0g\left(i\mid\pi(i)\right)=0.

Definition 4 is more general than the functional dependence graph of [15, Chapter 2]. Firstly, in our definition there is no distinction between source and non-source random variables. The graph simply characterizes functional dependence between variables. In fact, our definition admits cyclic directed graphs, and there may be no nodes with in-degree zero (which are source nodes in [15]). We also do not require independence between sources (when they exist), which is implied by the acyclic constraint in [15]. Our definition of an FDG admits pseduo-entropy functions gg with additional functional dependence relationships that are not represented by the graph. It only specifies a certain set of conditional pseudo-entropies which must be zero. Finally, our definition holds for a wide class of objects, namely pseudo-variables, rather than just random variables.

Clearly a functional dependence graph in the sense of [15] satisfies the conditions of Definition 4, but the converse is not true. Henceforth when we refer to a functional dependence graph (FDG), we mean in the sense of Definition 4. Furthermore, an FDG is acyclic if 𝒢\mathcal{G} has no directed cycles. A graph will be called cyclic if every node is a member of a directed cycle.222In this paper we do not consider graphs that are neither cyclic or acyclic.

Definition 4 specifies an FDG in terms of local dependence structure. Given such local dependence constraints, it is of great interest to determine all implied functional dependence relations. In other words, we wish to find all sets 𝒜\mathcal{A} and \mathcal{B} such that g(𝒜)=g(𝒜)g(\mathcal{A}\mathcal{B})=g(\mathcal{A}).

Definition 5

For disjoint sets 𝒜,𝒱\mathcal{A},\mathcal{B}\subset\mathcal{V} we say 𝒜\mathcal{A} determines \mathcal{B} in the directed graph 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}), denoted 𝒜\mathcal{A}\rightarrow\mathcal{B}, if there are no elements of \mathcal{B} remaining after the following procedure:

Remove all edges outgoing from nodes in 𝒜\mathcal{A} and subsequently remove all nodes and edges with no incoming edges and nodes respectively.

For a given set 𝒜\mathcal{A}, let ϕ(𝒜)𝒱\phi(\mathcal{A})\subseteq\mathcal{V} be the set of nodes deleted by the procedure of Definition 5. Clearly ϕ(𝒜)\phi(\mathcal{A}) is the largest set of nodes with 𝒜ϕ(𝒜)\mathcal{A}\rightarrow\phi(\mathcal{A}).

Lemma 1 (Grandparent lemma)

Let 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) be a functional dependence graph for a polymatroidal pseudo-entropy function gΓg\in\Gamma. For any j𝒱j\in\mathcal{V} with iπ(j)i\in\pi(j)\neq\emptyset

g(jπ(i),π(j)i)=0.g\left(j\mid\pi(i),\pi(j)\setminus i\right)=0.
Proof:

By hypothesis, g(kπ(k))=0g(k\mid\pi(k))=0 for any k𝒱k\in\mathcal{V}. Furthermore, note that for any gΓg\in\Gamma, conditioning cannot increase pseudo-entropy333This is a direct consequence of submodularity, (3). and hence g(kπ(k),𝒜)=0g(k\mid\pi(k),\mathcal{A})=0 for any 𝒜𝒱\mathcal{A}\subseteq\mathcal{V}. Now using this property, and the chain rule

0\displaystyle 0 =g(jπ(j))\displaystyle=g(j\mid\pi(j))
=g(jπ(j),π(i))\displaystyle=g(j\mid\pi(j),\pi(i))
=g(j,π(j),π(i))g(π(j),π(i))\displaystyle=g(j,\pi(j),\pi(i))-g(\pi(j),\pi(i))
=g(j,π(j)i,π(i))g(π(j),π(i))\displaystyle=g(j,\pi(j)\setminus i,\pi(i))-g(\pi(j),\pi(i))
=g(j,π(j)i,π(i))g(π(j)i,π(i))\displaystyle=g(j,\pi(j)\setminus i,\pi(i))-g(\pi(j)\setminus i,\pi(i))
=g(jπ(i),π(j)i).\displaystyle=g(j\mid\pi(i),\pi(j)\setminus i).

We emphasize that in the proof of Lemma 1 we have only used the submodular property of polymatroids, together with the hypothesized local dependence structure specified by the FDG.

Clearly the lemma is recursive in nature. For example, it is valid for g(jπ(j)i,π(i)k,π(k))=0g(j\mid\pi(j)\setminus i,\pi(i)\setminus k,\pi(k))=0 and so on. The implication of the lemma is that a pseudo-variable XjX_{j} in an FDG is a function of X𝒜X_{\mathcal{A}} for any 𝒜𝒱\mathcal{A}\subset\mathcal{V} with 𝒜j\mathcal{A}\rightarrow j.

Theorem 1

Let 𝒢\mathcal{G} be a functional dependence graph on the pseudo-variables 𝒳\mathcal{X} with polymatroidal pseudo-entropy function gg. Then for disjoint subsets 𝒜,𝒱\mathcal{A},\mathcal{B}\subset\mathcal{V},

𝒜g(𝒜)=0.\mathcal{A}\rightarrow\mathcal{B}\implies g(\mathcal{B}\mid\mathcal{A})=0.
Proof:

Let 𝒜\mathcal{A}\rightarrow\mathcal{B} in the FDG 𝒢\mathcal{G}. Then, by Definition 5 there must exist directed paths from some nodes in 𝒜\mathcal{A} to a every node in \mathcal{B}, and there must not exist any directed path intersecting \mathcal{B} that does not also intersect 𝒜\mathcal{A}. Recursively invoking Lemma 1, the theorem is proved. ∎

Definition 5 describes an efficient graphical procedure to find implied functional dependencies for pseudo-variables with local dependence specified by a functional dependence graph 𝒢\mathcal{G}. It captures the essence of the chain rule (4) for pseudo-entropies and the fact that pseudo-entropy is non-increasing with respect to conditioning (3), which are the main arguments necessary for manual proof of functional dependencies.

One application of Definition 5 is to find a reduction of a given set 𝒞\mathcal{C}, i.e. to find a disjoint partition of 𝒞\mathcal{C} into 𝒜\mathcal{A} and \mathcal{B} with 𝒜\mathcal{A}\rightarrow\mathcal{B}, which implies g(𝒞)=g(𝒜)=g(𝒜)g(\mathcal{C})=g(\mathcal{A}\mathcal{B})=g(\mathcal{A}). On the other hand, it also tells which sets are irreducible.

Definition 6 (Irreducible set)

A set of nodes \mathcal{B} in a functional dependence graph is irreducible if there is no 𝒜\mathcal{A}\subset\mathcal{B} with 𝒜\mathcal{A}\rightarrow\mathcal{B}.

Clearly, every singleton is irreducible. In addition, in an acyclic FDG, irreducible sets are basic entropy sets in the sense of [17]. In fact, irreducible sets generalize the idea of basic entropy sets to the more general (and possibly cyclic) functional dependence graphs on pseudo-variables.

III-A Acyclic Graphs

In an acyclic graph, let An(𝒜)\operatorname{An}(\mathcal{A}) denote the set of ancestral nodes, i.e. for every node aAn(𝒜)a\in\operatorname{An}(\mathcal{A}), there is a directed path from aa to some b𝒜b\in\mathcal{A}.

Of particular interest are the maximal irreducible sets:

Definition 7

An irreducible set 𝒜\mathcal{A} is maximal in an acyclic FDG 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) if 𝒱ϕ(𝒜)An(𝒜)(𝒱ϕ(𝒜))An(𝒜)=\mathcal{V}\setminus\phi(\mathcal{A})\setminus\operatorname{An}(\mathcal{A})\triangleq(\mathcal{V}\setminus\phi(\mathcal{A}))\setminus\operatorname{An}(\mathcal{A})=\emptyset, and no proper subset of 𝒜\mathcal{A} has the same property.

Note that for acyclic graphs, every subset of a maximal irreducible set is irreducible. Conversely, every irreducible set is a subset of some maximal irreducible set [17]. Irreducible sets can be augmented in the following way.

Lemma 2 (Augmentation)

Let A𝒱A\subset\mathcal{V} in an acyclic FDG 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}). Let =𝒱ϕ(𝒜)An(𝒜)\mathcal{B}=\mathcal{V}\setminus\phi(\mathcal{A})\setminus\operatorname{An}(\mathcal{A}). Then 𝒜{b}\mathcal{A}\cup\{b\} is irreducible for every bb\in\mathcal{B}.

This suggests a process of recursive augmentation to find all maximal irreducible sets in an acyclic FDG (a similar process of augmentation was used in [17]). Let 𝒢\mathcal{G} be a topologically sorted444I.e. Order nodes such that if there is a directed edge from node ii to jj then iji\prec j [9, Proposition 11.5]. acyclic functional dependence graph 𝒢=({0,1,2,},)\mathcal{G}=(\{0,1,2,\dots\},\mathcal{E}). Its maximal irreducible sets can be found recursively via AllMaxSetsA(𝒢,{})\textbf{AllMaxSetsA}(\mathcal{G},\{\}) in Algorithm 1. In fact, AllMaxSetsA(𝒢,𝒜)\textbf{AllMaxSetsA}(\mathcal{G},\mathcal{A}) finds all maximal irreducible sets containing 𝒜\mathcal{A}.

Algorithm 1 AllMaxSetsA(𝒢,𝒜\mathcal{G},\mathcal{A})
0:𝒢=(𝒱,),𝒜𝒱\mathcal{G}=(\mathcal{V},\mathcal{E}),\mathcal{A}\subset\mathcal{V}
𝒱ϕ(𝒜)An(𝒜)\mathcal{B}\leftarrow\mathcal{V}\setminus\phi(\mathcal{A})\setminus\operatorname{An}(\mathcal{A})
if \mathcal{B}\neq\emptyset then
  Output {AllMaxSetsA(𝒢,𝒜{b}):b}\{\textbf{AllMaxSetsA}(\mathcal{G},\mathcal{A}\cup\{b\}):b\in\mathcal{B}\}
else
  Output 𝒜\mathcal{A}
end if

III-B Cyclic Graphs

In cyclic graphs, the notion of a maximal irreducible set is modified as follows:

Definition 8

An irreducible set 𝒜\mathcal{A} is maximal in a cyclic FDG 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) if 𝒱ϕ(𝒜)=\mathcal{V}\setminus\phi(\mathcal{A})=\emptyset, and no proper subset of 𝒜\mathcal{A} has the same property.

For cyclic graphs, every subset of a maximal irreducible set is irreducible. In contrast to acyclic graphs, the converse is not true. In fact there can be irreducible sets that are not maximal, and are not subsets of any maximal irreducible set. It is easy to show that

Lemma 3

All maximal irreducible sets have the same pseudo-entropy.

This fact will be used in development of our capacity bound for network coding in Section IV below. We are interested in finding every maximal irreducible set for cyclic graphs. This may be accomplished recursively via AllMaxSetsC(𝒢,{})\textbf{AllMaxSetsC}(\mathcal{G},\{\}) in Algorithm 2. Note that in contrast to Algorithm 1, AllMaxSetsC(𝒢,𝒜)\textbf{AllMaxSetsC}(\mathcal{G},\mathcal{A}) finds all maximal irreducible sets that do not contain any node in 𝒜\mathcal{A}.

Algorithm 2 AllMaxSetsC(𝒢,𝒜\mathcal{G},\mathcal{A})
0:𝒢=(𝒱,),𝒜𝒱\mathcal{G}=(\mathcal{V},\mathcal{E}),\mathcal{A}\subset\mathcal{V}
if vϕ(𝒜c{v}),v𝒜cv\not\in\phi\left(\mathcal{A}^{c}\setminus\{v\}\right),\forall v\in\mathcal{A}^{c} then
  Output 𝒜c\mathcal{A}^{c}
else
  for all v𝒜cv\in\mathcal{A}^{c} do
   if vϕ(𝒜c{v})v\in\phi\left(\mathcal{A}^{c}\setminus\{v\}\right) then
    Output AllMaxSetsC(𝒢,𝒜{v})\textbf{AllMaxSetsC}(\mathcal{G},\mathcal{A}\cup\{v\})
   end if
  end for
end if
Example 1 (Butterfly network)

Figure 1 shows the well-known butterfly network and Figure 2 shows the corresponding functional dependence graph. Nodes are labeled with node numbers and pseudo-variables (The sources variables are Y1Y_{1} and Y2Y_{2}. The UiU_{i} are the edge variables, carried on links with capacity CiC_{i}). Edges in the FDG represent the functional dependency due to encoding and decoding requirements.

Refer to caption
Figure 1: The butterfly network.
Refer to caption
Figure 2: FDG of the butterfly network.

The maximal irreducible sets of the cyclic FDG shown in Figure 2 are

{1,2},{1,5},{1,7},{1,8},{2,4},{2,7},{2,9},{3,4,5},{3,4,8},{3,7},{3,8,9},{4,5,6},{5,6,9},{6,7},{6,8,9}.\{1,2\},\{1,5\},\{1,7\},\{1,8\},\{2,4\},\{2,7\},\{2,9\},\{3,4,5\},\\ \{3,4,8\},\{3,7\},\{3,8,9\},\{4,5,6\},\{5,6,9\},\{6,7\},\{6,8,9\}.

IV Functional Dependence Bound

We now give an easily computable outer bound for the total capacity of a network coding system.

Theorem 2 (Functional Dependence Bound)

Let 𝒞1,𝒞2,𝒞3,𝒞4\mathcal{C}_{1},\mathcal{C}_{2},\mathcal{C}_{3},\mathcal{C}_{4} be given network coding constraint sets. Let 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) be a functional dependence graph555This FDG will be cyclic due to the sink demands 𝒞3\mathcal{C}_{3} on the (source and edge) pseudo-variables Y𝒮,UY_{\mathcal{S}},U_{\mathcal{E}} with pseudo-entropy function g𝒞1𝒞2𝒞3𝒞4Γg\in\mathcal{C}_{1}\cap\mathcal{C}_{2}\cap\mathcal{C}_{3}\cap\mathcal{C}_{4}\cap\Gamma. Let M\mathcal{B}_{M} be the collection of all maximal irreducible sets not containing source variables. Then

s𝒮g(Ys)minMe:UeCe.\sum_{s\in\mathcal{S}}g(Y_{s})\leq\min_{\mathcal{B}\in\mathcal{B}_{M}}\sum_{e:U_{e}\in\mathcal{B}}C_{e}.
Proof:

Let M\mathcal{B}\in\mathcal{B}_{M}, then

s𝒮g(Ys)\displaystyle\sum_{s\in\mathcal{S}}g(Y_{s}) =g(Y𝒮)\displaystyle{=}g(Y_{\mathcal{S}}) 𝒞1\displaystyle\mathcal{C}_{1}
=g(Ue:Ue)\displaystyle{=}g(U_{e}:U_{e}\in\mathcal{B}) Lemma 3
Ueg(Ue)\displaystyle{\leq}\sum_{U_{e}\in\mathcal{B}}g(U_{e}) Subadditivity of gΓg\in\Gamma
e:UeCe.\displaystyle{\leq}\sum_{e:U_{e}\in{\mathcal{B}}}C_{e}. 𝒞4\displaystyle\mathcal{C}_{4}

Maximal irreducible sets which do not contain source variables are “information blockers” from sources to corresponding sinks. They can be interpreted as information theoretic cuts in in the network. Note that an improved bound can in principle be obtained by using additional properties of Γ\Gamma (rather than just subadditivity). Similarly, bounds for linear network codes could be obtained by using ΓIn\Gamma^{\text{In}}.

Corollary 1

For single source multicast networks, Theorem 2 becomes the max-flow bound [9, Theorem 11.3] and hence is tight.

Example 2 (Butterfly network)

The functional dependence bound for the butterfly network of Figure 2 is

R1+R2min{C3+C7,C6+C7,C3+C4+C5,C3+C4+C8,C3+C8+C9,C4+C5+C6,C5+C6+C9,C6+C8+C9}.R_{1}+R_{2}\leq\min\{C_{3}+C_{7},C_{6}+C_{7},C_{3}+C_{4}+C_{5},\\ C_{3}+C_{4}+C_{8},C_{3}+C_{8}+C_{9},C_{4}+C_{5}+C_{6},\\ C_{5}+C_{6}+C_{9},C_{6}+C_{8}+C_{9}\}.

To the best of our knowledge, Theorem 2 is the tightest bound expression for general multi-source multi-sink network coding (apart from the computationally infeasible LP bound). Other bounds like the network sharing bound [13] and bounds based on information dominance [14] use certain functional dependencies as their main ingredient. In contrast, Theorem 2 uses all the functional dependencies due to network encoding and decoding constraints.

V Conclusion

Explicit characterization and computation of the multi-source network coding capacity region requires determination of the set of all entropic vectors Γ\Gamma^{*}, which is known to be an extremely hard problem. The best known outer bound can in principle be computed using a linear programming approach. In practice this is infeasible due to an exponential growth in the number of constraints and variables with the network size.

We gave an abstract definition of a functional dependence graph, which extends previous notions to accommodate not only cyclic graphs, but more abstract notions of dependence. In particular we considered polymatroidal pseudo-entropy functions, and demonstrated an efficient and systematic method to find all functional dependencies implied by the given local dependencies.

This led to our main result, which was a new, easily computable outer bound, based on characterization of all functional dependencies in networks. We also show that the proposed bound is tighter than some known bounds.

References

  • [1] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, “Network information flow,” IEEE Trans. Inform. Theory, vol. 46, pp. 1204–1216, July 2000.
  • [2] S.-Y. R. Li, R. Yeung, and N. Cai, “Linear network coding,” IEEE Trans. Inform. Theory, vol. 49, pp. 371–381, Feb. 2003.
  • [3] R. W. Yeung, S.-Y. Li, N. Cai, and Z. Zhang, Network Coding Theory. now Publishers, 2006.
  • [4] C. Fragouli and E. Soljanin, Network Coding Fundamentals. now Publishers, 2007.
  • [5] C. Fragouli and E. Soljanin, Network Coding Applications. now Publishers, 2008.
  • [6] T. Ho and D. S. Lun, Network Coding: An Introduction. Cambridge University Press, 2008.
  • [7] R. Dougherty, C. Freiling, and K. Zeger, “Insufficiency of linear coding in network information flow,” IEEE Trans. Inform. Theory, vol. 51, Aug. 2005. To appear.
  • [8] T. H. Chan and A. Grant, “Dualities between entropy functions and network codes,” IEEE Trans. Inform. Theory, vol. 54, pp. 4470–4487, Oct. 2008.
  • [9] R. W. Yeung, A First Course in Information Theory. Information Technology: Transmission, Processing and Storage, New York: Kluwer Academic/Plenum Publishers, 2002.
  • [10] L. Song, R. W. Yeung, and N. Cai, “Zero-error network coding for acyclic networks,” IEEE Trans. Inform. Theory, vol. 49, pp. 3129–3139, Dec. 2003.
  • [11] X. Yan, R. W. Yeung, and Z. Zhang, “The capacity region for multi-source multi-sink network coding,” in IEEE Int. Symp. Inform. Theory, (Nice, France), pp. 116–120, Jun. 2007.
  • [12] F. Matúš, “Infinitely many information inequalities,” in IEEE Int. Symp. Inform. Theory, 2007.
  • [13] X. Yan, J. Yang, and Z. Zhang, “An outer bound for multisource multisink network coding with minimum cost consideration,” IEEE Trans. Inform. Theory, vol. 52, pp. 2373–2385, June 2006.
  • [14] N. Harvey, R. Kleinberg, and A. Lehman, “On the capacity of information networks,” IEEE Trans. Inform. Theory, vol. 52, pp. 2345–2364, June 2006.
  • [15] G. Kramer, Directed Information for Channels with Feedback. PhD thesis, Swiss Federal Institute of Technology, Zurich, 1998.
  • [16] L. Guille, T. Chan, and A. Grant, “The minimal set of Ingleton inequalities,” in IEEE Int. Symp. Inform. Theory, pp. 2121–2125, July 2008.
  • [17] I. Grivell, A. Grant, and T. Chan, “Basic entropy sets,” in Fourth Workshop on Network Coding, Theory and Applications, pp. 1–6, Jan. 2008.