  In this work, we study the problem of index coding from graph homomorphism
perspective. We show that the minimum broadcast rate of an index coding problem
for different variations of the problem such as non-linear, scalar, and vector
index code, can be upper bounded by the minimum broadcast rate of another index
coding problem when there exists a homomorphism from the complement of the side
information graph of the first problem to that of the second problem. As a
result, we show that several upper bounds on scalar and vector index code
problem are special cases of one of our main theorems.
  For the linear scalar index coding problem, it has been shown in [1] that the
binary linear index of a graph is equal to a graph theoretical parameter called
minrank of the graph. For undirected graphs, in [2] it is shown that
$\mathrm{minrank}(G) = k$ if and only if there exists a homomorphism from
$\bar{G}$ to a predefined graph $\bar{G}_k$. Combining these two results, it
follows that for undirected graphs, all the digraphs with linear index of at
most k coincide with the graphs $G$ for which there exists a homomorphism from
$\bar{G}$ to $\bar{G}_k$. In this paper, we give a direct proof to this result
that works for digraphs as well.
  We show how to use this classification result to generate lower bounds on
scalar and vector index. In particular, we provide a lower bound for the scalar
index of a digraph in terms of the chromatic number of its complement.
  Using our framework, we show that by changing the field size, linear index of
a digraph can be at most increased by a factor that is independent from the
number of the nodes.
