  An edge-colored graph G is rainbow connected if any two vertices are
connected by a path whose edges have distinct colors. The rainbow connectivity
of a connected graph G, denoted rc(G), is the smallest number of colors that
are needed in order to make G rainbow connected. In addition to being a natural
combinatorial problem, the rainbow connectivity problem is motivated by
applications in cellular networks. In this paper we give the first proof that
computing rc(G) is NP-Hard. In fact, we prove that it is already NP-Complete to
decide if rc(G) = 2, and also that it is NP-Complete to decide whether a given
edge-colored (with an unbounded number of colors) graph is rainbow connected.
On the positive side, we prove that for every $\epsilon$ > 0, a connected graph
with minimum degree at least $\epsilon n$ has bounded rainbow connectivity,
where the bound depends only on $\epsilon$, and the corresponding coloring can
be constructed in polynomial time. Additional non-trivial upper bounds, as well
as open problems and conjectures are also pre sented.
