On the Hardness of Approximating the Network Coding Capacity

Similar documents
An Equivalence between Network Coding and Index Coding

Communicating the sum of sources in a 3-sources/3-terminals network

On the Index Coding Problem and its Relation to Network Coding and Matroid Theory

Index Coding Algorithms for Constructing Network Codes. Salim El Rouayheb. Illinois Institute of Technology, Chicago

Index coding with side information

Optimal Index Codes with Near-Extreme Rates

On the Relation Between the Index Coding and the Network Coding Problems

Robust Network Codes for Unicast Connections: A Case Study

Non-linear index coding outperforming the linear optimum

Local Graph Coloring and Index Coding

Quasi-linear Network Coding

Broadcasting With Side Information

LATTICES AND CODES ISHAY HAVIV TEL AVIV UNIVERSITY THE RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES THE BLAVATNIK SCHOOL OF COMPUTER SCIENCE

On Secure Index Coding with Side Information

On linear index coding from graph homomorphism perspective

Graph independent field size bounds on failure protecting network codes

Amulticast network is a directed multigraph containing a

Weakly Secure Data Exchange with Generalized Reed Solomon Codes

Improved Hardness of Approximating Chromatic Number

On Randomized Network Coding

Notice that lemma 4 has nothing to do with 3-colorability. To obtain a better result for 3-colorable graphs, we need the following observation.

2014 IEEE International Symposium on Information Theory. Two-unicast is hard. David N.C. Tse

Index Coding & Caching in Wireless Networks. Salim El Rouayheb. ECE IIT, Chicago

Multicast Packing for Coding across Multiple Unicasts

Linear codes cannot approximate the network capacity within any constant factor

Generalized Network Sharing Outer Bound and the Two-Unicast Problem

Alphabet Size Reduction for Secure Network Coding: A Graph Theoretic Approach

Optimal Index Codes via a Duality between Index Coding and Network Coding

Code Construction for Two-Source Interference Networks

Network Coding for Computing

Scalar-linear Solvability of Matroidal Networks Associated with Representable Matroids

Linearly Representable Entropy Vectors and their Relation to Network Coding Solutions

Network Routing Capacity

Machine Minimization for Scheduling Jobs with Interval Constraints

Semidefinite and Second Order Cone Programming Seminar Fall 2001 Lecture 5

Lecture 20: Course summary and open problems. 1 Tools, theorems and related subjects

The Capacity of a Network

IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 54, NO. 5, MAY

Network Routing Capacity

Postprint.

On the Capacity of Secure Network Coding

Approximating maximum satisfiable subsystems of linear equations of bounded width

Beyond the Butterfly A Graph-Theoretic Characterization of the Feasibility of Network Coding with Two Simple Unicast Sessions

An Ins t Ins an t t an Primer

Lexicographic Products and the Power of Non-Linear Network Coding

Low Complexity Encoding for Network Codes

Graph coloring, perfect graphs

Combinatorial Auctions Do Need Modest Interaction

Index Coding With Erroneous Side Information

Random Linear Intersession Network Coding With Selective Cancelling

The Complexity of the Matroid-Greedoid Partition Problem

Sum-networks from undirected graphs: Construction and capacity analysis

FPT hardness for Clique and Set Cover with super exponential time in k

Error Correcting Index Codes and Matroids

Computing Linear Functions by Linear Coding Over Networks

On the Complexity of the Minimum Independent Set Partition Problem

A better approximation ratio for the Vertex Cover problem

Reverse Edge Cut-Set Bounds for Secure Network Coding

Testing Equality in Communication Graphs

Index Coding via Random Coding

Hardness of the Covering Radius Problem on Lattices

Notes for Lecture 2. Statement of the PCP Theorem and Constraint Satisfaction

Some Open Problems in Approximation Algorithms

A GRAPH-THEORETIC APPROACH TO NETWORK CODING

A Polynomial-Time Algorithm for Pliable Index Coding

Cases Where Finding the Minimum Entropy Coloring of a Characteristic Graph is a Polynomial Time Problem

Multiple Access Network Information-flow And Correction codes

arxiv: v1 [cs.it] 19 Jun 2008

Increasing the Span of Stars

On queueing in coded networks queue size follows degrees of freedom

arxiv: v4 [cs.cc] 14 Mar 2013

The concentration of the chromatic number of random graphs

T -choosability in graphs

Bounds on Shannon Capacity and Ramsey Numbers from Product of Graphs

Information flows, graphs and their guessing numbers

Hardness of Embedding Metric Spaces of Equal Size

arxiv: v2 [cs.it] 23 Aug 2018

An 0.5-Approximation Algorithm for MAX DICUT with Given Sizes of Parts

Multicast Packing for Coding across Multiple Unicasts

On Network Coding Capacity - Matroidal Networks and Network Capacity Regions. Anthony Eli Kim

Approximating the independence number via the ϑ-function

Near-Optimal Algorithms for Maximum Constraint Satisfaction Problems

Some Open Problems in Approximation Algorithms

Computing linear functions by linear coding over networks

Preliminaries and Complexity Theory

ON INDEX CODING WITH SIDE INFORMATION

Cluster Graph Modification Problems

1 The independent set problem

Improved Bounds for Flow Shop Scheduling

Index Coding. Trivandrum School on Communication, Coding and Networking Prasad Krishnan

A tool oriented approach to network capacity. Ralf Koetter Michelle Effros Muriel Medard

On judicious bipartitions of graphs

Deterministic Network Coding by Matrix Completion

Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007

CS 583: Approximation Algorithms: Introduction

On the Duality between Multiple-Access Codes and Computation Codes

ACO Comprehensive Exam March 17 and 18, Computability, Complexity and Algorithms

Independent Transversals in r-partite Graphs

Multi-criteria approximation schemes for the resource constrained shortest path problem

Optimal Scalar Linear Index Codes for Symmetric and Neighboring Side-information Problems

Transcription:

On the Hardness of Approximating the Network Coding Capacity Michael Langberg, Member, IEEE, and Alex Sprintson, Member, IEEE. 1 Abstract This work addresses the computational complexity of achieving the capacity of a general network coding instance. It has been shown [Lehman and Lehman, SODA 2005] that determining the scalar linear capacity of a general network coding instance is NP-hard. In this work we address the notion of approximation in the context of both linear and non-linear network coding. Loosely speaking, we show that given an instance of the general network coding problem of capacity C, constructing a code of rate αc for any universal (i.e., independent of the size of the instance) constant α 1 is hard. Specifically, finding such network codes would solve a long standing open problem in the field of graph coloring. Our results refer to scalar linear, vector linear, and non-linear encoding functions and are the first results that address the computational complexity of achieving the network coding capacity in both the vector linear and general network coding scenarios. In addition, we consider the problem of determining the (scalar) linear capacity of a planar network coding instance (i.e., an instance in which the underlying graph is planar). We show that even for planar networks this problem remains NP-hard. Index Terms Network coding, index coding, complexity, approximation, capacity. I. INTRODUCTION In the network coding paradigm, internal nodes of the network may mix the information content of the received packets before forwarding them. This mixing (or encoding) of information has been extensively studied over the last decade (see e.g., [1] [5] and references therein). While the advantages of network coding in the multicast setting are currently well understood, this is far from being the case in the context of general network coding. In particular, the complexity of determining the capacity of a general network coding instance is a central open problem, e.g., [6], [7]. Michael Langberg is with the Computer Science Division, the Open University of Israel, Raanana, 43107, Israel, email: mikel@openu.ac.il. Alex Sprintson is with the Department of Electrical and Computer Engineering, Texas A&M University, College Station, TX, 77843, USA, email: spalex@tamu.edu. The work of Michael Langberg was supported in part by ISF grant 480/08 and grant 46114 of the Open University of Israel. The work of Alex Sprintson was supported by NSF grant CNS-0954153. The material in this paper was presented at ISIT 2008, Toronto, Canada, June 2008. This work addresses the computational complexity of designing network codes that achieve or come close to achieving the network capacity. An instance of the Network Coding problem is a directed graph G = (V, E), a set of source nodes {s i } V, a set of terminal nodes {t j } V, and a set of source/terminal requirements {(s i, t j )} (implying that terminal t j is interested in the information available at source s i ). In this paper we will consider acyclic graphs G, and follow the standard definitions appearing for example in [8]. Each source s i holds a message p i that is to be transmitted to a certain subset of terminals. Each message is assumed to consist of k characters of a given finite alphabet Σ (each character of Σ will be referred to as a packet 1 ) and each edge of the network is assumed to have the capability of transmitting l characters of Σ. We assume that each edge e is used at most once, namely at most l packets are transmitted over e. With each edge e = (u, v) we associate an encoding function g e : Σ dul Σ l which ties the packets transmitted on the d u edges entering u with the l packets transmitted on e. The objective is to define the encoding functions corresponding to edges in E such that each terminal t i will be able to decode the messages it demands from the packets it receives on its incoming edges. More formally, we need to define for each terminal t i a decoding function γ i : Σ dil Σ rik that enables t i to decode the messages it demands from the information transmitted on its incoming edges (here d i denotes the in-degree of t i and r i is the number of messages t i requires). If such encoding and decoding functions exist, we say that the instance I of the Network Coding problem is (k, l)- solvable over Σ. If Σ is a field and if the decoding and encoding functions are linear over Σ, we say that I has a linear or vector linear (k, l)-solution over Σ. If the encoding and decoding functions are linear and k = 1 we say that the instance has a (1, l)-scalar linear solution over Σ. Since, any (k, l)-solution implies an (rk, rl)-solution for any integer r, we refer to the ratio k l as the rate of a (k, l)-solution to I and denote the capacity C(I) 1 In practical applications, each packet contains several characters of Σ to reduce overhead (see e.g., [9]). For clarity, in this paper we assume that each packet contains a single character of Σ.

of I over Σ as the supremum of the ratio k l taken over all (k, l) solutions to I over Σ. Similarly, we define the vector linear capacity C l (I) and scalar linear capacity C sl (I) of I as the maximum rate achievable by vectorlinear or scalar-linear solutions, respectively. 2 A. Previous work The complexity of determining the capacity of a general Network Coding instance is a central open problem in the field of network coding. Specifically, it is currently not known whether this problem is solvable in polynomial time, is NP-hard, or maybe it is even undecidable [10] (the undecidability assumes that the alphabet size can be arbitrary and unbounded). It is shown in [11] that determining the scalar linear capacity C sl is an NP-hard problem. However, it is not known whether this holds for the vector-linear or general capacity, as the result of [11] does not extend to (k, l) vector linear codes even for k = 2. In [12], [13] it is shown that vector linear codes outperform scalar linear codes in terms of obtainable rate. Moreover, in [8] it is shown that nonlinear codes have an advantage over linear solutions as there exist instances in which linear codes do not suffice to achieve capacity. For specific instances to the Network Coding problem, it has been shown that combining combinatorial bounds with Shannon-type information inequalities suffice to characterize the capacity, e.g., [14], [15], although this is not the case in general [13]. Finally, there are several connections between the capacity of general Network Coding instances and the family Γ of entropic functions [16], [17]. The characterization of Γ is an intriguing open problem. Reference [18] shows that determining the capacity region for the general Network Coding problem implies a characterization of Γ. B. Our contribution In this work we study the notion of approximation in the context of network coding. Namely, we show that given an instance I to the Network Coding problem of capacity C(I), constructing a code with rate at least αc(i) for any universal constant α 1 (independent of the size of the network) is hard. Specifically, finding such network codes would solve a long standing open problem in the field of graph coloring. Our results apply to instances with constant size alphabets, and hold for scalar linear, (k, l) vector linear (for constant values of k), and general (not necessarily linear) encoding/decoding functions. Here a parameter is referred to as constant if its size is independent of the size of 2 Notice that C(I), C l (I) and C sl (I) depend on the alphabet Σ. To simplify our presentation, we omit Σ from our capacity notation. the given instance (i.e., the given network size). This implies the first hardness result for the general Network Coding problem for both vector linear and general (not necessarily linear) solutions. We note that after the conference publication of this work [19], Yao and Verbin in [20] studied a different notion of approximation in the context of network coding. Namely, for any constant ε, given an instance of the Network Coding problem with k terminals, they show that it is NP-hard to distinguish between the case in which there exists a network coding solution which satisfies k 1 ε of the terminals and the case in which there does not exist any network coding solution that satisfies k ε of the terminals. Here a terminal is satisfied if it can decode the information it desires. This implies that estimating (i.e., approximating) the number of terminal nodes that can be satisfied in a given Network Coding instance (with k terminals) beyond k 1 ε is NP-hard. We stress that the techniques used in [20] and the problem they are estimating differ substantially from the work at hand. In addition, we consider the problem of determining the scalar linear capacity of a planar instance (i.e., an instance in which the underlying graph is planar). We show that even if the network is planar, this problem remains NP-hard. We note that the reduction presented in [11] does not result in a planar graph. We now state our main results in detail. We begin with some preliminaries on the topic of graph coloring. 1) Graph coloring: An independent set in an undirected graph G = (V, E) is a set of vertices that induce a subgraph which does not contain any edges. For an integer k, a k-coloring of G is a function σ : V [1...k] which assigns colors to the vertices of G. A valid k-coloring of G is a coloring in which each color class is an independent set. The chromatic number χ(g) of G is the smallest k for which there exists a valid k-coloring of G. Finding χ(g) is a fundamental NP-hard problem. Hence, when limited to polynomial time algorithms, one turns to the question of estimating the value of χ(g) or to the closely related problem of approximate coloring in which one seeks to find a coloring of G with α χ(g) colors, for some approximation ratio α 1, where the objective is to minimize α. For a graph G of size n, the approximate coloring of G can be solved efficiently ) within an approximation (log log n)2 ratio of α = O (n [21]. This result may seem log 3 n rather weak as a trivial approximation algorithm, with approximation ratio n, just colors each vertex with a different color. However, it turns out that one probably cannot do much better than the trivial algorithm. Namely, it is NP-hard to approximate χ(g) within a ratio of n 1 ε for any constant ε > 0 [22]. In light of the above, there has been a long line of 2

work addressing the (easier problem) of coloring graphs G which are known to have small chromatic number, e.g., [23] [26]. For example (and most relevant to our work), given a graph G which is known to be 3 colorable, the problem of coloring G with as few colors as possible has been extensively studied, e.g., [23], [24], and [26]. The current state of affairs in the study of coloring 3-colorable graphs is an intriguing one. Results in this area have one of two flavors: achievability results, which specify an efficient algorithm for coloring the given graphs, or lower bounds, which show that coloring these graphs with a small number of colors is a provably hard problem. On one hand, the currently best polynomial time algorithm [26] can color a 3-colorable graph G in roughly n 0.21 colors we stress that in this state of affairs there is still a polynomial blowup in the number of colors used! On the other hand, not much is known regarding lower bounds. It is NP-hard to color a 3-colorable graph G with 4 colors [27], [28]. Under stronger complexity assumptions (related to the Unique Games Conjecture [29]) it is hard to color a 3-colorable graph with any constant number of colors α [30] (here α is a universal constant independent of the size of the input graph). Resolving this gap between the upper and lower bounds presented above is a long standing open problem. In this work we show that achieving a constant approximation ratio for the Network Coding problem is at least as hard as coloring a 3-colorable graph with a constant number of colors, which, in turn, is at least as hard as the hardness assumptions specified in [30]. Regardless of the validity of the assumptions given in [30], our reduction shows that approximating the Network Coding problem within constant quality will solve a long standing and extensively studied open problem in approximate coloring. 2) Statement of results: Our main result is summarized by the following theorem. In what follows, and throughout the paper, an efficient algorithm is one that runs in time polynomial in the instance size. Moreover, a network coding solution, i.e., a collection of encoding/decoding functions, is considered to be a collection of efficient algorithms that compute the functions at hand. Throughout the paper, our alphabets Σ are assumed to be finite. Theorem 1: Let α < 1, k, and Σ be constants. If one can efficiently find a (not necessarily linear) (k, l) solution to every instance I of the Network Coding problem over Σ of rate at least αc sl (I), then one can efficiently color 3-colorable graphs with a constant number of colors. We would like to note that in the theorem above, we state that it is hard to find (k, l) network coding solutions that are greater than α times the scalar linear capacity of the instance at hand. As C(I) C l (I) C sl (I), this implies (a) that it is hard to find a (not necessarily linear) (k, l) network coding solution of rate αc(i), and (b) that it is hard to find a linear (k, l) network coding solution of rate αc l (I). A network coding instance is said to be planar if the underlying network can be drawn in the plane in such a way that no two edges cross each other. Planar graphs have seen a significant amount of research in the field of combinatorial optimization, e.g., [31], and many computational tasks known to be hard on general graphs become significantly easier when the input graph is planar. One may suspect that the same occurs in the case of network coding. However, in this work we show: Theorem 2: Given a planar instance I to the Network Coding problem and a finite field Σ, the problem of deciding whether C sl (I) 1 is NPcomplete. The instances I implied by theorems 1 and 2 are simple in nature and resemble the instances that have been used in the literature to illustrate the advantage of network coding, e.g., [1], [32]. More specifically, given a graph G, the instances we construct correspond to the IndexCoding problem recently studied in [33] [36]. The IndexCoding problem and its connection to network coding are described in Section II. We then turn to prove Theorem 1 and Theorem 2 in sections III and IV respectively. II. PRELIMINARIES: THE IndexCoding PROBLEM The IndexCoding problem encapsulates the source coding with side information problem in which a single server wishes to communicate with several clients each having different side information. Formally, an instance to IndexCoding includes a set of clients C = {c 1,..., c n } and a set of messages P = {p 1, p 2,...,p m } to be transmitted by the server. Each client requires a certain subset of messages in P, while some messages in P are already available to it. Specifically, each client c i C is associated with two sets: W(c i ) P - the set of messages required by c i. H(c i ) P - the set of messages available at c i. We refer to W(c i ) and H(c i ) as the wants and has sets of c i, respectively. The server uses a broadcast channel to transmit messages to clients, each message is an encoding of messages in P. We assume that all messages transmitted by the server are received by all clients without an error. The objective is to design an encoding scheme which minimizes the number of transmissions. We consider a fractional setting in which each message p i P consists of k packets p 1 i,..., pk i and 3

each packet is a character of a given alphabet Σ. 3 In each round of communication the server can transmit a single character of Σ (i.e., a single packet). The j th round of communication is specified by an encoding function g j : Σ mk Σ. Namely, in the j th round of communication the character x j = g j (P) is transmitted by the server, where P = {p j i p i P }. The goal in the IndexCoding problem is to find a set of encoding functions Φ = {g i } l i=1 that will allow each client to decode the messages it requested, while minimizing l = Φ. More formally, we need to define for each client c i a decoding function γ i : Σ l (Σ k ) H(ci) (Σ k ) W(ci) that enables the client to decode the required messages in its wants set from the transmitted messages and the messages in its has set. If such encoding and decoding functions exist, we say that the instance to IndexCoding is (k, l)- solvable over Σ, and Φ is its solution. If Σ is a field and the encoding and decoding functions are linear we say that the instance has a (k, l)-linear solution over Σ. If, in addition, k = 1 we say that the instance has a (1, l)-scalar linear solution over Σ. As in the case of the Network Coding problem, any (k, l)-solution implies an (rk, rl)-solution for any integer r. For an instance I to the IndexCoding problem, we refer to the ratio k l as the rate of a (k, l)- solution to I and denote the capacity Opt(I) of an instance I to IndexCoding over Σ as the supremum of the ratio k l taken over (k, l) solutions to I over Σ. We also define by Opt l (I) and Opt sl (I) the vector-linear and scalar-linear capacities, i.e., capacities that can be achieved by using vector linear and scalar linear solutions, respectively. As before, the capacities above may depend on Σ. Nevertheless, we omit this dependence in our notations. There is a natural reduction from the IndexCoding problem to the problem of designing a network code for a certain network with general requirements. This connection can be summarized by the following Proposition. Proposition 3: Let Σ be any alphabet. For every instance I to the IndexCoding problem one can efficiently construct an instance Î to the Network Coding problem such that any (k, l)-solution to Î over Σ can be efficiently converted to a (k, l)-solution to I and vice-versa. These conversions preserve linearity and thus Opt sl (I) = C sl (Î), Opt l(i) = C l (Î) and Opt(I) = C(Î). The proof of Proposition 3 is well-known (see e.g., [35]). For completeness, we present the reduction in Figure 1. 3 As in the case of the Network Coding problem, in practice each packet contains many characters in Σ. For clarity, in this paper we assume that each packet contains one character. v u p 1 p 2 p 3... p m c 1 c 2 c 3... c n Fig. 1. The instance Î of Proposition 3. There is a source node p j for each message in P, a terminal node c i for each client in C, and two additional nodes u and v. Each terminal c i requires all messages from sources in W(c i ). Each p j is connected to v, u is connected to all terminals c i, and v is connected to u. In addition we add edges (p j, c i ) iff p j H(c i ). The broadcast channel corresponds to packets transmitted on (v, u), while the side information corresponds to packets transmitted on edges (p j, c i ). The IndexCoding problem was recently studied in [33], [34], [36] where special instances of IndexCoding were considered. Namely, instances I in which P = C = n and the only message client c i wants is the message p i (W(c i ) = {p i }). In this case, the side information {H(c i ) c i C} can be represented by a graph G = (C, E) with vertex set C such that G contains an edge (i, j) if and only if client c i has message p j (i.e., p j H(c i )). For instances I corresponding to undirected graphs G (in which edges are bi-directional) [33], [34] present certain connections between the combinatorial properties of G and the value of Opt(I). In order to present these connections, we first elaborate on an algebraic property of G referred to as the Minrank of G [37]. A. Minrank Let G = (V, E) be an undirected graph with V = n. An n n matrix A = [a ij ] over Σ fits G if: (a) i, a ii = 1, (b) a ij = 0 for all i, j such that (i, j) E. Let Rank Σ (A) denote the rank of a matrix A (over Σ). The Minrank of G over Σ is now defined to be the minimum value in the set {Rank Σ (A) A fits G}. There exist beautiful connections between combinatorial properties of G and the value of Minrank(G). Specifically, in [37] it is shown that the value of Minrank(G) is sandwiched between the maximum sized independent set in G (denoted by α(g)) and the chromatic number of the complement graph G c to G (here, an edge (i, j) appears in G iff it does not appear in G c ). Namely, χ(g c ) Minrank(G) α(g). 4

For an undirected graph G, computing the Minrank of G was proven to be NP-complete in [38] via a reduction from the 3 coloring problem. Namely, given any undirected graph G and any field Σ, [38] constructs an instance Ĝ such that χ(g) 3 iff Minrank(Ĝ) 3. This implies that a decision process for Minrank will imply a decision process for 3 colorability. (To be precise the exact statement in [38] implies χ(g) = 3 iff Minrank(Ĝ) = 3, however the slightly modified version above also follows from [38].) As stated above, references [33] and [34] present certain connections between the Minrank of a given undirected graph G and the corresponding IndexCoding instance I. Specifically, they show that the scalar linear capacity Opt sl (I) is equal to 1/Minrank(G), which in turn is at least 1/χ(G c ). Recall that G c is the complement graph of G. Combining the above with the results of [38] stated earlier implies a reduction between the question of 3 colorability and that of deciding the capacity of IndexCoding instances. Namely, given G one can efficiently construct a graph Ĝ and a corresponding instance I to the IndexCoding problem for which χ(g) 3 iff Minrank(Ĝ) 3 iff Opt sl(i) 1/3. In other words, deciding whether Opt sl (I) 1/3 for a given instance I to the IndexCoding problem will imply a decision process for 3 colorability (and thus deciding whether Opt sl (I) 1/3 is NP-hard). Finally, we note that combining the discussion above with Proposition 3, one can establish that determining the scalar linear capacity of a general network coding instance is NP-hard. Notice that this may be viewed as an alternative proof to that given in [11]. We stress that the results in [38] do not imply inapproximability results of the nature presented in this work as in their reduction one can easily find a scalar linear solution which satisfies Opt sl (I) 1/4. III. PROOF OF THEOREM 1 We begin by proving Theorem 4 below. Then, by combining Theorem 4 with Proposition 3, we obtain Theorem 1 stated in the Introduction. Recall that an efficient algorithm is one that runs in time polynomial in the instance size, and that a network coding (or index coding) solution, i.e., a collection of encoding/decoding functions, is considered to be a collection of efficient algorithms that compute the functions at hand. Throughout this section, the term poly(vars) refers to a polynomial in the variables vars of constant degree and with constant coefficients (i.e., a polynomial whose coefficients and degrees of its variables are independent of the variables vars). Theorem 4: Given any 3-colorable graph G(V, E), one can construct in time poly( V ) an instance I to the IndexCoding problem with the following properties: (a) For any alphabet Σ, if for α (0, 1] one can find in time T a (k, l) solution to I over Σ that satisfies k l αopt sl(i) then one can color G with Σ Σ 3k/α colors in time T + poly( Σ k/α G k). (b) For any field Σ, if for α (0, 1] one can find in time T a linear (k, l)-solution to I over Σ that satisfies k l αopt sl(i) then one can color G with Σ 3k/α colors in time T + poly( Σ k/α G k). Proof: Let G = (V, E) be an undirected graph with V = {v 1,...,v n }. We start by defining a corresponding instance I to IndexCoding (as explained in Section II). The instance includes n clients C = {c 1,..., c n } and n messages P = {p 1,..., p n }. For each client we define W(c i ) = {p i } and H(c i ) = {p j (i, j) E}, i.e., client c i wants message p i and has all messages wanted by its neighbors in G. As we will be discussing (k, l) solutions to I, we consider each message p i = p 1 i,...,pk i to lie in Σ k and denote the kn packets {p j i } as P. Assume that the complement graph G c of G is 3-colorable (notice that the role of G in the theorem statement is played here by G c ). It follows that Opt sl (I) 1 3. Indeed, as Gc is 3-colorable, G can be covered by 3 cliques 4. For each such clique C, define the corresponding transmitted packet x C = i C p i. 5 To prove part (a) of our theorem assume that we have an α approximation algorithm for constructing solutions to instances I of IndexCoding. That is, we can find a (k, l)-solution for I with k l αopt sl(i) α 3. This, in turn, implies that l 3k/α. For j = 1,...,l let g j : Σ kn Σ characterize the solution to I in which the packet x j transmitted in communication round j is equal to g j (P); and for i = 1,...n let γ i : Σ l (Σ k ) H(ci) Σ k be the decoding function of client c i. We will now show, given the set {g j } l j=1 and {γ i } n i=1, how to construct a coloring of Gc of size Σ Σ l Σ Σ 3k/α. This will suffice to prove part (a) of our theorem. To this end, we will define a partition of the set {γ i } n i=1 such that any two functions γ i and γ j that belong to the same group in the partition will have corresponding vertices that share an edge in G (and thus any group will form a clique). To obtain our partition we will need the following projected version of the decoding functions {γ i }. Roughly speaking, we will restrict our decoding functions γ to a predefined side information value and then only consider the first output of γ (out of k outputs). More 4 Namely, the vertex set of G can be partitioned into three subsets, each comprising of a clique. Here, as is common in graph theory, a clique C is a subset of vertices in which each pair are connected by an edge. 5 Here, we refer to Σ as an additive group and take the summation over this group structure. We note that any alphabet can be mapped to such a group. 5

specifically, let σ be an arbitrary element in Σ. For each γ i : Σ l (Σ k ) H(ci) Σ k we define a corresponding function ˆγ i : Σ l Σ as follows: For every x Σ l ˆγ i (x) is defined to be equal the first (out of the k) output elements of γ i (x, σ k H(ci) ). We are now ready to partition the set {γ i } n i=1 into groups based on the functions ˆγ i : γ i and γ j will belong to the same group of the partition iff their projected versions ˆγ i and ˆγ j are equal. As there are only Σ Σ l possibly different functions ˆγ i, we have a partition of at most this size. It is left to show that vertices v i and v j corresponding to γ i and γ j that belong to the same group indeed share an edge in G. Assume by way of contradiction that vertices v i and v j do not share an edge in G, namely p j H(c i ) and p i H(c j ). In addition, by our definitions, p i H(c i ) and p j H(c j ). Now, consider the case in which all packets in P are set to σ, except for the packet p 1 j which is set to a value different from σ. This implies that p 1 i p1 j (the messages p i and p j differ in their first packet). Note that since the side information H(c i ) of c i consists of messages in P \ {p i, p j }, it contains H(c i ) messages of value σ k. Similarly, since the side information H(c j ) in this case consists of messages in P \ {p i, p j }, it contains H(c j ) messages of value σ k. Let x = x 1,...,x l where x i = g i (P) be the transmitted symbols in this case. As the functions γ i and γ j are decoding functions, it holds that p i = γ i (x, (σ k ) H(ci) ) and p j = γ j (x, (σ k ) H(cj) ). By our definition of ˆγ, this implies that p 1 i = ˆγ i (x) and p 1 j = ˆγ j (x). However, ˆγ i ˆγ j (as we assumed that γ i and γ j are in the same group) and thus p 1 i = ˆγ i (x) = ˆγ j (x) = p 1 j. This contradicts the fact that p 1 i p1 j, and, in turn, our assumption that vertices v i and v j do not share an edge in G. To complete the proof of part (a) we need to address the computational aspects of the reduction. The construction of I can be done in time poly(n). Assume that the (k, l) solution {g j } l j=1, {γ i} n i=1 to I is found in time T. To obtain the desired coloring, one must partition the set {γ i } n i=1 accordingly. This can be done in time poly(nk log Σ ) Σ l by exhaustively checking all inputs x Σ l to ˆγ. All in all, we obtain the asserted running time. We now turn to address vector linear solutions (part (b) of the theorem). The proof in this case is identical to that presented above with the exception that, for a field Σ, the number of linear functions {ˆγ i } is now Σ l instead of Σ Σ l. IV. PROOF OF THEOREM 2 We now turn to prove Theorem 2. Our starting point is a reduction discussed previously from a given undirected c 1 c 2 c 3 s v h 1 1 h 2 1 h 3 h 1 2 h 2 2 h 1 3 h 2... 1 3 h 3 3 h 1 n h 2 n Fig. 2. The reduction of Theorem 2 from Problem IndexCoding to Problem Network Coding. Each bold edge denotes three parallel edges between its endpoints. graph G to an instance I of the IndexCoding problem that satisfies χ(g) 3 iff Opt sl (I) 1/3. In what follows, we present a reduction from the instance I to a planar instance I p of the Network Coding problem which satisfies C sl (I p ) 1 if and only if Opt sl (I) 1/3. This will suffice to prove Theorem 2. The instance I above includes a set of n clients C = {c 1,...,c n } and n messages P = {p 1,..., p n }. Moreover, as before, each client c i only wants the single message p i, i.e., W(c i ) = {p i }. We proceed to construct an instance I p to the Network Coding problem. We begin by describing the structure of the underlying planar network G p (V, E) (schematically depicted in Figure 2). The set of nodes V of G p includes a node c i for each client c i C, and two additional vertices, v and s. In addition, for each client c i C we add H(c i ) vertices h 1 i,..., h H(ci) i that correspond to elements of H(c i ). The set of edges E of G p is constructed as follows. First, we connect s to v by three parallel edges. Next, v is connected to each node c i by three parallel edges. For each client c i C we connect each vertex in {h 1 i,...,h H(ci) i } to vertex c i by a single edge. Finally, the node s is connected to the nodes that correspond to {H(c i ) c i C}. The instance includes a set of n sources {s i } n i=1 that correspond to messages in P (source s i having message p i ). All sources are co-located at vertex s. For each client c i C we add 1 + H(c i ) terminals such that one terminal is located at node c i and requires packet p i from source s i (this corresponds to the message p i wanted by c i in I). The rest of the terminals are located at vertices {h 1 i,..., h H(ci) i }. Terminal h j i will require the j th message in the set H(c i ) (from the corresponding source). The latter terminals will force the sources to transmit the side information of I on the edges (s, h j i ).... c n 6

Clearly, G p (V, E) is planar. We now show that any (scalar linear) (1,3)-code for I corresponds to a (scalar linear) (1,1)-network code for I p. In addition, we show that any (scalar linear) (1,1)-network code for I p corresponds to a (scalar linear) (1,3)-solution for I. This will complete the proof of the theorem, as we have established (for any Σ) the following connection: χ(g) 3 iff Opt sl (I) 1/3 iff C sl (I p ) 1. Let Σ be any field. Consider any linear (1, 3)-code {g 1, g 2, g 3 } for I in which message x i transmitted in communication round i is equal to g i, p. Here g i Σ n represents the linear function transmitted in round i, and p = p 1,...,p n. We now present a scalar-linear (1, 1) network code for I p. The network code is very natural. The (multiple) source s transmits x 1, x 2, x 3 on the three parallel edges connecting s and v. The node v then forwards these messages to each node c i. In addition, the source s transmits message p to terminal h j i iff the j th message in the set H(c i ) is p. Finally, nodes h j i forward their information to the corresponding nodes c i. Clearly, the terminals h j i are satisfied. To see that the terminals c i (for i = 1,...,n) are satisfied, we notice that the information reaching c i in I p is exactly that available to client c i after the broadcast of x 1, x 2, x 3. As the latter allows c i to recover packet p i, so does the former. The opposite direction is very similar. Consider any (1, 1) linear network coding solution to I p. In this solution it must hold that message p is transmitted on edge (s, h j i ) iff the j th message in the set H(c i) is p (otherwise, terminal h j i would not be satisfied). Let x 1, x 2, x 3 be the information transmitted on the three parallel edges connecting s and v. Each x i is some linear function of the (multiple) source information P. The (1, 3) code for I will consist of exactly the transmitted information x 1, x 2, x 3. Thus, each client c i in I receives the information x 1, x 2, x 3 and all packets in H(c i ). It is left to show that this suffices to decode p i. This follows simply from the fact that in I p each terminal c i can decode p i from the information transmitted from nodes h j i and v. Moreover, the information transmitted from h j i is a linear function of the packets in H(c i), and the information transmitted from v is a linear function of x 1, x 2, x 3. As the packets of H(c i ) and the information x 1, x 2, x 3 are present at client c i of I, it can use the functions specified above to decode p i. V. CONCLUSION In this work we focus on approximating the capacity of general Network Coding instances. For constant values of α, k, and Σ we show that given an instance I, efficiently constructing a (k, l) network code with k l αc(i) will solve a long standing open problem in graph coloring. This is the first study that addresses the computational complexity of finding (almost) optimal vector linear or non-linear network coding solutions. In addition, we show that the task of determining the scalar linear capacity for Network Coding instances remains NP-hard even if the underlying network is planar. The considered problems present significant challenges and provide fertile ground for future research. In particular, two major questions remain open. Can one prove similar inapproximability results when k or Σ are not necessarily constant? Can one base the conditional inapproximability on any NP-complete problem? VI. ACKNOWLEDGMENTS The authors would like to thank the anonymous referees for their helpful comments. Specifically, the main result of this work (Theorem 1) was originally proven by the authors for vector linear solutions alone (Theorem 4(b)) and due to the remarks of an anonymous referee the proof was changed to hold for general encoding/decoding functions also. REFERENCES [1] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung. Network Information Flow. IEEE Transactions on Information Theory, 46(4):1204 1216, 2000. [2] S.-Y. R. Li, R. W. Yeung, and N. Cai. Linear Network Coding. IEEE Transactions on Information Theory, 49(2):371 381, 2003. [3] R. Koetter and M. Medard. An Algebraic Approach to Network Coding. IEEE/ACM Transactions on Networking, 11(5):782 795, 2003. [4] S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, and L. Tolhuizen. Polynomial Time Algorithms for Multicast Network Code Construction. IEEE Transactions on Information Theory, 51(6):1973 1982, June 2005. [5] T. Ho, M. Médard, R. Koetter, D. R. Karger, M. Effros, J. Shi, and B. Leong. A Random Linear Network Coding Approach to Multicast. IEEE Transactions on Information Theory, 52(10):4413 4430, 2006. [6] T. Cover and J. Thomas. Elements of Information Theory, second edition. John Wiley and Sons, 2006. [7] R. W. Yeung, S.Y.R. Li, N. Cai, and Z. Zhang. Network Coding Theory. Now Publishers Inc, 2006. [8] R. Dougherty, C. Freiling, and K. Zeger. Insufficiency of Linear Coding in Network Information Flow. IEEE Transactions on Information Theory, 51(8):2745 2759, 2005. [9] P. A. Chou, Y. Wu, and K. Jain. Practical Network Coding. In Proceedings of Allerton Conference on Communication, Control, and Computing, Monticello, IL, USA, October 2003. [10] A. L. Rasala. Network Coding. Ph.d. thesis, Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2005. [11] A. L. Rasala and E. Lehman. Complexity Classification of Network Information Flow Problems. In Proceedings of the Fifteenth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), New Orleans, Louisiana, USA, January 2004. [12] M. Médard, M. Effros, T. Ho, and D. Karger. On Coding for Non-multicast Networks. In Proceedings 41st Annual Allerton Conference on Communication Control and Computing, Monticello, IL, USA, 2003. [13] R. Dougherty, C. Freiling, and K. Zeger. Networks, Matroids, and Non-Shannon Information Inequalities. IEEE Transactions on Information Theory, 53(6):1949 1969, 2007. 7

[14] M. Adler, N. J. A. Harvey, K. Jain, R. D. Kleinberg, and A. L. Rasala. On the Capacity of Information Networks. In Proceedings of ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 2345 2364, Miami, Florida, USA, January 2006. [15] N. J. A. Harvey, R. D. Kleinberg, and A. L. Rasala. On the Capacity of Information Networks. IEEE Transactions on Information Theory, 52(6):23452364, 2006. [16] R. W. Yeung. A First Course in Information Theory. Springer (Kluwer Academic/Plenum Publishers), 2002. [17] R. W. Yeung, S.-Y. R. Li, N. Cai, and Z. Zhang. Network Coding Theory. Foundations and Trends in Communications and Information Theory. Now Publishers, 2006. [18] T. Chan and A. Grant. Dualities Between Entropy Functions and Network Codes. IEEE Transactions on Information Theory, 54(10):4470 4487, 2008. [19] M. Langberg and A. Sprintson. On the Hardness of Approximating the Network Coding Capacity. In Proceedings of International Symposium on Information Theory (ISIT), pages 315 319, Toronto, Canada, July 2008. [20] H. Yao and E. Verbin. Network Coding is Highly Non- Approximable. In Proceedings of the 47th Annual Allerton Conference on Communication, Control, and Computing, Monticello, IL, USA, September-October 2009. [21] M. Halldorsson. A Still Better Performance Guarantee for Approximate Graph Coloring. Information Processing Letters, 45:19 23, 1993. [22] D. Zuckerman. Linear Degree Extractors and the Inapproximability of Max Clique and Chromatic Number. In Proceedings of the 38th annual ACM symposium on Theory of Computing, Miami, Florida, USA, January 2006. [23] D. Karger, R. Motwani, and M. Sudan. Approximate Graph Coloring by Semidefinite Programming. Journal of ACM, 45(2):246 265, 1998. [24] A. Blum and D. Karger. An Õ(n3/14 )-coloring for 3-colorable Graphs. Information Processing Letters, 61(6):49 53, 1997. [25] E. Halperin, R. Nathaniel, and U. Zwick. Coloring k-colorable Graphs Using Smaller Palettes. Journal of Algorithms, 45:72 90, 2002. [26] S. Arora, E. Chlamtac, and M. Charikar. New Approximation Guarentee for Chromatic Number. In In proceedings of the 38th Annual ACM Symposium on Theory of Computing, Seattle, Washington, USA, May 2006. [27] S. Khanna, N. Linial, and S. Safra. On the Hardness of Approximating the Chromatic Number. Combinatorica, 20:393 415, 2000. [28] V. Guruswami and S. Khanna. On the Hardness of 4-coloring a 3-colorable Graph. In Proceedings of the 15th Annual IEEE Conference on Computational Complexity, Florence, Italy, July 2000. [29] S. Khot. On the Power of Unique 2-prover 1-round Games. In Proceedings of the 34th annual ACM symposium on Theory of Computing (STOC), Montreal, Quebec, Canada, May 2002. [30] I. Dinur, E. Mossel, and O. Regev. Conditional Hardness for Approximate Coloring. In Proceedings of 38th ACM Symposium on Theory of Computing, Seattle, Washington, USA, May 2006. [31] B. S. Baker. Approximation Algorithms for NP-complete Problems on Planar Graphs. J. ACM, 41(1):153 180, 1994. [32] Z. Li and B. Li. Network Coding: The Case for Multiple Unicast Sessions. In Proceedings 42nd Annual Allerton Conference on Communication Control and Computing, Monticello, IL, USA, 2004. [33] Z. Bar-Yossef, Y. Birk, T. S. Jayram, and T. Kol. Index Coding with Side Information. In roceedings of 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS), Berkeley, California, USA, October 2006. [34] E. Lubetzky and U. Stav. Non-linear Index Coding Outperforming the Linear Optimum. In In Proceedings of 48th Annual IEEE Symposium on Foundations of Computer Science (FOCS), Providence, Rhode Island, USA, October 2007. [35] S. El Rouayheb, A. Sprintson, and C. Georghiades. On the Index Coding Problem and its Relation to Network Coding and Matroid Theory. IEEE Transactions on Information Theory, 56(7):3187 3195, July 2010. [36] N. Alon, E. Lubetzky, U. Stav, A. Weinstein, and A. Hassidim. Broadcasting with Side Information. In Proceedings of 49th Annual IEEE Symposium on Foundations of Computer Science, Philadelphia, Pennsylvania, USA, October 2008. [37] W. H. Haemers. On Some Problems of Lovász Concerning the Shannon Capacity of a Graph. IEEE Transactions on Information Theory,, 25(2):231 232, 1979. [38] R. Peeters. Orthogonal Representations Over Finite Fields and the Chromatic Number of Graphs. Combinatorica, 16(3):417 431, 1996. PLACE PHOTO HERE Michael Langberg Michael Langberg (M 05) is a Senior Lecturer in the Computer Science department at the Open University of Israel. Previously, between 2003 and 2006, he was a postdoctoral scholar in the Computer Science and Electrical Engineering departments at the California Institute of Technology. He received his B.Sc. in mathematics and computer science from Tel-Aviv University in 1996, and his M.Sc. and Ph.D. in computer science from the Weizmann Institute of Science in 1998 and 2003 respectively. Dr. Langberg s research is in the fields of Theoretical Computer Science and Information Theory. His work focuses on the design and analysis of algorithms for combinatorial problems; emphasizing on algorithmic and combinatorial aspects of Information Theory, and on probabilistic methods in combinatorics. PLACE PHOTO HERE Alex Sprintson Alex Sprintson (S 00-M 03) received the B.Sc. degree (summa cum laude), M.Sc., and Ph.D. degrees in electrical engineering from the Technion Israel Institute of Technology, Haifa, in 1995, 2001, and 2003, respectively. Dr. Sprintson is an Assistant Professor with the Department of Electrical and Computer Engineering, Texas A&M University, College Station. From 2003 to 2005, he was a Postdoctoral Research Fellow with the California Institute of Technology, Pasadena. His research interests lie in the general area of communication networks with a focus on network coding, network survivability and robustness, and QoS routing. Dr. Sprintson received the Viterbi Postdoctoral Fellowship and the NSF CAREER award. He is an Associate Editor of the IEEE Communications Letters and Computer Networks Journal. He has been a member of the Technical Program Committee for IEEE Infocom 2006 2011. 8