1 Introduction
For a graph , we use and to denote its vertex and edge sets, respectively, and we use to denote its chromatic number. A homomorphism from a graph to a graph is a function from to such that for every edge in , is an edge in . We denote by the existence of a homomorphism from to . Note that a graph admits a proper coloring if and only if .
The categorical product of two graphs has vertex set and edge set for and belonging to and , respectively. Observe that admits a homomorphism to both and . Since a proper colouring corresponds to a homomorphism to a complete graph, and since and , it is therefore immediate that . The following conjecture is due to Hedetniemi [Hed66] and was also posed as a question by Greenwell and Lovász [GL74].
Conjecture 1.1.
.
For two graphs and , there exists an exponential graph with the following property: only if . The vertices of are functions from into , and two functions are adjacent if for every edge of , is an edge of . With this definition of an exponential graph, observe that Hedetniemi’s conjecture can be rewritten: If and , then . But now we see that it is sufficient to replace with , and Conjecture 1.1 can be restated as follows.
Conjecture 1.2.
If , then .
The connection between exponential graphs and Hedetniemi’s conjecture was observed by ElZahar and Sauer who proved Conjecture 1.2 when [ES85]. (Exponential graphs have also been studied in other contexts [Lov67].) Specifically, ElZahar and Sauer proved that if , then is
colorable. Their proof is based on a global parity argument concerning socalled fixed points of odd cycles and does not immediately yield a 3coloring of
. Attributing the question of efficiently finding a 3coloring to Edmonds, Tardif presented an algorithm, implicit in the work of ElZahar and Sauer, for 3coloring [Tar06]. Basically, Tardif noted that if we consider an (arbitrary) edge in any odd cycle of , then functions in which form a hitting set of the odd cycles in . A 3coloring can easily be found based on a bipartition of the remaining vertices in . The time complexity of this algorithm depends on the time to find a bipartition, which is polynomial in the size of , but can be exponential in . A thorough description of this algorithm is provided in Section 1.2.Tardif then posed the problem of finding an “explicit” 3coloring of . Essentially, given a function belonging to a 3chromatic component of , can we assign a color to this vertex in time polynomial in the size of ? (His precise question is a bit more involved and presented in detail in Section 1.2.) In this paper, we present an algorithm whose time complexity is linear in for finding such an explicit 3coloring.
1.1 From coloring to coloring
Let be a positive integer, and let denote the odd cycle on the vertices . The vertex set consists of all functions from into . A vertex is a fixed point in if , where indices are computed modulo . Let denote the subgraph of induced on the following vertex set.
The problem of finding a 3coloring of when can be reduced to the problem of finding a 3coloring for [ES85, Tar06]. Any nonisolated function from into contains an odd cycle with an even number of fixed points and such an odd cycle can be found in time polynomial in the size of (see Proposition 4.1 in [ES85] or Claim 2 from [Zhu98]).^{1}^{1}1Observe that the proof of this claim becomes easier when . Consider any function from into and partition into the set of vertices colored by and and the set of vertices colored by . Either the first set or the second set contains an odd cycle (which then has an even number of fixed points because it has at most two colors) or each set is bipartite, and we can color with four colors, which is a contradiction. For the connected component of containing this function , let us fix this odd cycle in to be . Now we find a 3coloring for . Each function in the same connected component of as must also have an even number of fixed points on (see Lemma 3.3 in [ES85] or Claim 1 from [Zhu98]). So for each function in the same connected component as , the restriction of onto belongs to . Therefore, the vertex in corresponding to the function can be assigned the same color that the restriction of onto receives in the 3coloring of .
1.2 Algorithm for 3coloring
Now we are ready to present the algorithm for 3coloring from [Tar06]. Let denote a fixed (but arbitrarily chosen) edge in .
ColorGraph() For all : If , assign the vertex in the color . Remove all the colored vertices from . Find a bipartition of the subgraph induced on the remaining vertices. For each vertex in , assign the vertex color . For each vertex in , assign the vertex color .
The correctness of this algorithm follows from the fact that the copies of in which form a hitting set for the odd cycles in , which follows from the main result of ElZahar and Sauer (e.g., see Lemma 3.1 and Proposition 3.4 in [ES85]).
1.3 Tardif’s open problem
Tardif asked if there is an algorithm, whose running time is polynomial in , to assign a color to so that a 3coloring is maintained for any subset of colored vertices of . (See Problem 6 in [Tar06] and also [Tar11].) He defines the vertex set
for a fixed (but arbitrarily chosen) edge . is a bipartite subgraph of induced on . If we can decide in time to which side of the bipartition belongs, then we can resolve Tardif’s question affirmatively. We present an algorithm for this task in the next section. Our approach is inspired by ideas from reconfiguration of 3recolorings [CvdHJ07].
We note that Tardif showed that the main result from [ES85] implies that is bipartite. Conversely, our algorithm gives another proof that is bipartite, and consequently, we give an alternative proof of the main result of [ES85]. Note, however, that our proof is not completely independent as it uses Lemma 3.3 and Proposition 4.1 from [ES85].
2 Properties of adjacent functions
In this section, we state and prove two properties of functions that are adjacent in . These properties are key to the design and analysis of our algorithm, which we present in Section 3
. For an ordered pair of vertices
(i.e., an arc ) with colors and , respectively, we say the value of is , whereMonochromatic pairs have value 0.
Let denote a function from into . For a vertex , its color in is denoted by . We fix the orientation for the chords of length two in the cycle so that they form the directed cycle , which we refer to as . Then we have the following definitions. Recall that is a fixed (but arbitrarily chosen) edge in .
Definition 2.1.
The label of , denoted by , is the total value of the arcs in based on . Formally,
Definition 2.2.
The little path of , denoted by , is the directed path from to in containing arcs (e.g., see Figure 1). The value of , denoted by , is computed as follows.
Observation 2.3.
.
Observation 2.4.
If , then .
Now let and be two functions from into such that and are adjacent. Recall that denotes the vertex set . Let denote the copy of in and let denote the copy of in . Define the directed cycle as follows.
(1) 
We have
(2) 
where subscripts are computed modulo . We can relate the value of the arcs in to the value of the arcs in using the following claim.
Claim 2.5.
Let and be two functions from into such that and are adjacent. Then
Proof..
Since and are adjacent, we have and for . If , then . Furthermore, we have the following observations.

, and

.
Next, we present two key properties of adjacent functions via the following lemmas.
Lemma 2.6.
Let and be two functions from into such that and are adjacent. Then .
Proof.
Lemma 2.7.
Let and be two functions from into such that and are adjacent and let . Then .
Proof.
Without loss of generality, let and . Then
and
Applying Claim 2.5, we have
Since
the lemma follows. ∎
3 Coloring a vertex of in time
Now we present an algorithm to assign a color to a function when (i.e., and ). Our algorithm will produce a 3coloring for and the time required to assign a color to is . We recall that edge is a fixed edge and is considered as input to the algorithm.
ColorVertex() If , assign color . Otherwise, compute value . If , assign color . If , assign color .
The correctness of the algorithm will be shown via the following theorem, whose proof is based on the observation that if and are adjacent in , then by Lemma 2.7, and are anticorrelated. For example, if , then either is positive and is negative or vice versa. Theorem 3.1 implies that using ColorVertex to color the vertices of results in a proper 3coloring of .
Theorem 3.1.
Let and be two functions from such that and are adjacent. Then ColorVertex assigns and different colors.
First, we show via Claim 3.2 that Step 2. of ColorVertex is welldefined.
Claim 3.2.
Let be a function in . Then either or .
Proof..
By Observation 2.3, is a multiple of 3. Since , it follows that is a multiple of 2. Thus, is an integer and is a multiple of 3.
Next, we show that two adjacent functions in will not be assigned to the same side of the bipartition, and thus will not be assigned the same color.
Claim 3.3.
Let and be two adjacent functions in and let . Then and cannot both be greater (or both smaller) than .
4 Explicit homomorphisms for odd cycles
For a graph and a cycle for odd integer , one can define (as in the introduction) the exponential graph . The vertices of are functions from into and two such functions and are adjacent if for all edges of , and are adjacent in . Häggkvist, Hell, Miller and Neumann Lara proved that if there is no homomorphism from to , then has a homomorphism to [HHML88]. Their proof can be viewed as a generalization of the work of ElZahar and Sauer, who proved the same statement when . In fact, as in the case in the latter proof of ElZahar and Sauer, it is also implicit in the proof of Häggkvist et al. that if we consider an (arbitrary) edge in any odd cycle of , then functions in which form a hitting set of the odd cycles in . It is therefore not surprising that we can extend our framework for obtaining explicit homomorphisms to odd cycles.
As in the case of , we can find a homomorphism from to by considering an arbitrary odd cycle in . Applying Lemma 7 from [HHML88], we see that if there is no homomorphism from to , then contains an odd cycle with an even number of fixed points.^{2}^{2}2In [HHML88], a fixed point is called a 2point. We refer to this odd cycle as . It remains to generalize the two key properties of adjacent functions (i.e., Lemmas 2.6 and 2.7). For an ordered pair of vertices (i.e., an arc ) with values and (from ), respectively, we say the value of is , where
(3) 
For example, we have
Let and be two adjacent functions from to . We can apply the rules from (3) to compute the values and via Definitions 2.1 and 2.2. Note that if for some arc , then is an isolated function in . Moreover, note that if for some arc , then and are not adjacent.
The next lemmas are the generalizations of Lemma 2.6 and Lemma 2.7 for homomorphisms to an odd cycle .
Lemma 4.1.
Let and be two functions from into such that and are adjacent. Then .
Proof.
Lemma 4.2.
Let and be two functions from into such that and are adjacent and let . Then .
Proof.
Let and . We observe that
Since
the lemma follows. ∎
It is straightforward to extend Claims 3.2 and 3.3 to this generalized setting and we obtain the following theorem.
Theorem 4.3.
Let and be two functions from into such that and are adjacent. Then ColorVertex assigns and to adjacent vertices in .
5 Discussion: Explicit versus efficient colorings
For a graph such that , the question of finding an explicit 3coloring of is closely related to—but not exactly the same as—the question of finding an efficient 3coloring of . A connected component of is either (i) isolated (i.e., a single vertex), (ii) bipartite, or (iii) 3chromatic. For a function from into , it can be efficiently determined (in time polynomial in the size of ) whether or not is isolated. For any given connected component of that is bipartite or 3chromatic, there exists an odd cycle that can be found efficiently (as discussed in Section 1.1) and this odd cycle can be used to obtain an explicit and efficient 3coloring for this component. In other words, for a given connected component, after a polynomial amount of preprocessing time (i.e., time to find an odd cycle and to fix an orientation of its chord cycle and an edge to use as input for the VertexColor routine), we give an explicit reason (i.e., certificate) for assigning a particular color to a function in the given connected component. In particular, the value of the little path from to is such a short certificate. In terms of efficiency, for any subset of functions in belonging to a fixed connected component, the total time required to color the subgraph induced on is .
Moreover, for a function belonging to any 3chromatic component of , we can actually use an arbitrary fixed cycle from for the ColorVertex routine. However, the fact that we can use the same cycle in for any such follows from the main result of ElZahar and Sauer; Proposition 3.4 in [ES85] states that for such an , all odd cycles in have an even number of fixed points. Note that the results we have presented here do not imply a proof of this proposition. Thus, while such a function can in fact be assigned a color efficiently (i.e., in time ), this time complexity is not implied solely by the results we have presented here.
For belonging to an arbitrary bipartite component of , using the approach presented in this paper, we can assign a color to in time , where is the set of functions for which we searched for a new odd cycle containing an even number of fixed points. Note that is upper bounded by the number of functions also belonging to bipartite components previously colored by the algorithm. In other words, the algorithm is inputsensitive; before invoking the ColorVertex routine on , we need to check all odd cycles used so far (in the order used) until we find one with an even number of fixed points with respect to . We leave it as an open problem to find an algorithm that assigns a color in time to a vertex from a bipartite component of , so that the resulting coloring is a proper 3coloring or possibly even a 2coloring. Finally, we note that we do not know how to efficiently determine if a function belongs to a bipartite component (i.e., whether or not it contains at least one odd cycle with an odd number of fixed points).
6 Acknowledgements
We thank Stéphan Thomassé for telling us about Hedetniemi’s Conjecture and for, even earlier, telling us about the results in [CvdHJ07].
References
 [CvdHJ07] Luis Cereceda, Jan van den Heuvel, and Matthew Johnson. Finding paths between 3colourings. Technical Report LSECDAM200731, London School of Economics, December 2007.
 [ES85] Mohamed ElZahar and Norbert Sauer. The chromatic number of the product of two 4chromatic graphs is 4. Combinatorica, 5(2):121–126, 1985.
 [GL74] Don Greenwell and László Lovász. Applications of product colouring. Acta Mathematica Hungarica, 25(34):335–340, 1974.
 [Hed66] Stephen T. Hedetniemi. Homomorphisms of graphs and automata. Technical Report 0310544T, University of Michigan, 1966.
 [HHML88] Roland Häggkvist, Pavol Hell, Donald J. Miller, and V. Neumann Lara. On multiplicative graphs and the product conjecture. Combinatorica, 8(1):63–74, 1988.
 [Lov67] László Lovász. Operations with structures. Acta Mathematica Hungarica, 18(34):321–328, 1967.
 [Tar06] Claude Tardif. On the algorithmic aspects of Hedetniemi’s conjecture. In M. Klazar, J. Kratochvíl, M. Loebl, R. Thomas, and P. Valtr, editors, Topics in Discrete Mathematics, volume 26 of Algorithms and Combinatorics, pages 493–496. 2006. Dedicated to Jarik Nešetřil on the occasion of his 60th birthday.
 [Tar11] Claude Tardif. Duality and exponential graphs. Presentation at Workshop on Graph Homomorphisms, The Fields Institute for Research in Mathematical Sciences, http://www.fields.utoronto.ca/audio/1112/homomorphisms/tardif, July 2011.
 [Zhu98] Xuding Zhu. A survey on Hedetniemi’s conjecture. Taiwanese Journal of Mathematics, 2(1):1–24, 1998.
Comments
There are no comments yet.