literature review 2.1 graph coloring -...
TRANSCRIPT
CHAPTER 2
LITERATURE REVIEW
2.1 GRAPH COLORING
In graph theory, graph coloring is a special case of graph labeling; it is an
assignment of labels traditionally called “colors” to elements of a graph subject to
certain constraints. In its simplest form, it is a way of coloring the vertices of a
graph such that no two adjacent vertices share the same color; this is called a vertex
coloring. Similarly, an edge coloring assigns a color to each edge so that no two
adjacent edges share the same color, and a face coloring of a planar graph assigns
a color to each face or region so that no two faces that share a boundary have the
same color. Vertex coloring is the starting point of the subject, and other coloring
problems can be transformed into a vertex version. For example, an edge coloring
of a graph is just a vertex coloring of its line graph, and a face coloring of a plane
graph is just a vertex coloring of its dual. However, non-vertex coloring problems
are often stated and studied as is. That is partly for perspective, and partly because
some problems are best studied in non-vertex form, as for instance is edge coloring.
The convention of using colors originates from coloring the countries of
a map, where each face is literally colored. This was generalized to coloring the
faces of a graph embedded in the plane. By planar duality it became coloring the
vertices, and in this form it generalizes to all graphs. In mathematical and computer
representations, it is typical to use the first few positive or nonnegative integers as
17
18
the “colors”. In general, one can use any finite set as the “color set”. The nature
of the coloring problem depends on the number of colors but not on what they are.
Graph coloring enjoys many practical applications as well as theoretical challenges.
Beside the classical types of problems, different limitations can also be set on the
graph, or on the way a color is assigned, or even on the color itself. It has even
reached popularity with the general public in the form of the popular number puzzle
Sudoku. Graph coloring is still a very active field of research.
2.2 HISTORY OF GRAPH COLORINGS
The first results about graph coloring deal almost exclusively with planar
graphs in the form of the coloring of maps. While trying to color a map of the
counties of England, Francis Guthrie postulated the four color conjecture, noting
that four colors were sufficient to color the map so that no regions sharing a common
border received the same color. Guthries brother passed on the question to his
mathematics teacher Augustus de Morgan at University College, who mentioned
it in a letter to William Hamilton in 1852. Arthur Cayley raised the problem at
a meeting of the London Mathematical Society in 1879. The same year, Alfred
Kempes published a paper that claimed to establish the result, and for a decade
the four color problem was considered solved. For his accomplishment Kempes was
elected a Fellow of the Royal Society and later President of the London Mathematical
Society.
In 1890, Heawood pointed out that Kempes argument was wrong. However,
in that paper he proved the five color theorem, saying that every planar map can
be colored with no more than five colors, using ideas of Kempe. In the following
century, a vast amount of work and theories were developed to reduce the number
of colors to four, until the four color theorem was finally proved in 1976 by Kenneth
Appel and Wolfgang Haken. Perhaps surprisingly, the proof went back to the ideas
19
of Heawood and Kempe and largely disregarded the intervening developments.The
proof of the four color theorem is also noteworthy for being the first major computer-
aided proof.
In 1912, George David Birkhoff introduced the chromatic polynomial to
study the coloring problems, which was generalised to the Tutte polynomial by
Tutte, important structures in algebraic graph theory. Kempe had already drawn
attention to the general, non-planar case in 1879 and many results on generalisations
of planar graph coloring to surfaces of higher order followed in the early 20th century.
In 1960, Claude Berge formulated another conjecture about graph coloring,
the strong perfect graph conjecture, originally motivated by an information-theoretic
concept called the zero-error capacity of a graph introduced by Shannon. The
conjecture remained unresolved for 40 years, until it was established as the celebrated
strong perfect graph theorem in 2002 by Chudnovsky, Robertson, Seymour, Thomas.
Graph coloring has been studied as an algorithmic problem since the early
1970s: the chromatic number problem is one of Karps 21 NP-complete problems
from 1972, and at approximately the same time various exponential-time algorithms
were developed based on backtracking and on the deletion-contraction recurrence of
Zykov(1949). One of the major applications of graph coloring, register allocation in
compilers, was introduced in 1981.
2.2.1 Vertex Colorings
When used without any qualification, a coloring of a graph is almost always
a proper vertex coloring, namely a labelling of the graphs vertices with colors such
that no two vertices sharing the same edge have the same color. Since a vertex
with a loop could never be properly colored, it is understood that graphs in this
context are loopless. The terminology of using colors for vertex labels goes back to
map coloring. Labels like red and blue are only used when the number of colors
is small, and normally it is understood that the labels are drawn from the integers
20
{1, 2, 3, · · · }.
A coloring that uses at most k colors is called a (proper) k-coloring. The
smallest number of colors needed to color a graph G is called its chromatic number,
and is often denoted χ(G). A graph that admits a (proper) k-coloring is k-colorable,
and it is k-chromatic if its chromatic number is exactly k. A subset of vertices as-
signed to the same color is called a color class, every such class forms an independent
set. Thus, a k-coloring is the same as a partition of the vertex set into k independent
sets, and the terms k-partite and k-colorable have the same meaning.
2.2.2 Some Properties of χ(G)
• χ(G) = 1 if and only if is totally disconnected.
• χ(G) ≥ 3 if and only if G has an odd cycle. Equivalently, if G is not bipartite.
• χ(G) ≤ ∆(G) + 1.
• χ(G) ≤ ∆(G) + 1 unless G is a complete graph or an odd cycle (Brook’s
theorem).
• χ(G) ≤ 4 for any planar graph G (Four-color theorem).
2.2.3 Decision Problem
A decision problem is a language L of strings over an alphabet.
2.2.4 P and NP
P is the class of decision problems for which we can find a solution in
polynomial time. NP is the class of decision problems for which we can check
solutions in polynomial time. NP stands for Non deterministic Polynomial time.
21
2.2.5 NP-Hard
A decision problem L is NP-hard if for every language L′ in NP, L′ is
polynomial time reducible to L. (A language L′ polynomial time reducible to a
language L if there exist a polynomial time function f(x) from string to string such
that x is in L′ if f(x) is in L).
2.2.6 NP-Complete
A decision problem L is NP-complete if it is in NP and it is NP-hard.
2.3 GRAPH COLORING IS HARD
Computational complexity theory classifies problems according to their
usage of resources(time, storage, etc.). We discuss some issues in complexity theory
that relate to this treatise and point the reader to [58] for a comprehensive treatment.
The turing machine is a well known formal model of a general purpose computer.
It is an imaginary machine on which algorithms are run. The complexity class P is
the set of decision problems (with a yes-no answer) which can be solved on a turning
machine in polynomial time in the size of input. The class NP is the set of decision
problems in which “yes” answers can be verified on a turning machine in polynomial
time. Clearly P is contained in NP . Whether P and NP are the same, is one of
seven Millennium Prize Problems published by the Clay Mathematics Institute.
The decision problem 3-Colorable asks the following question. Can a given
graph G be properly colored using 3 colors? If G is indeed properly colorable with
3 colors, one such proper coloring is a proof of this and it is verifiable in polynomial
time. Thus 3-Colorable is in NP . In fact it is in NP -Complete [54], the subset of
NP problems such that if there is a problem in it which is also in P, then P is NP.
The NP-Complete problems are the most complex problems in NP .
22
A problem X is considered NP -Hard if there is a NP -Complete problem Y
such that an instance of Y can be converted into an instance ofX in polynomial time.
NP-Hard problems are at least as complex as NP problems. Even approximating
the chromatic number to within n1−ǫ where n is the number of vertices in G and ǫ
is any positive number, is NP -Hard [59].
2.4 APPLICATIONS OF GRAPH COLORINGS
Session Number Interested Participants
100 A, B, C
101 B, D, E
102 A, F, G
103 I, H, G
104 I, J, K
105 C, K, L
106 D, J, M
107 H, J, O
108 F, M, N
109 L, N, O
Table 2.1: Who Wants to Attend Which Conference Session.
Table 2.1 lists sessions of a conference with the participants interested in
attending each session. The conference organizers must assign a time slot to each
session so that for each participant, all sessions he is interested in are assigned to
distinct time slots. This will guarantee that all participants can attend the sessions
they are interested in. One can represent the information in the table 2.1 as a graph
G, with vertex 1 set corresponding to sessions. One can place an edge between 2
vertices if there is a participant interested in both the corresponding sessions. The
original scheduling problem of assigning a time slot to each session is equivalent
to finding an assignment of colors to all vertices such that adjacent vertices have
distinct colors. Such a coloring of a graph is called a proper vertex coloring. The
23
chromatic number χ(G) is the minimum number of colors required to color graph
G properly. It corresponds to the minimum number of time slots to schedule our
sessions so that all participants can attend all sessions they find interesting.
Our original scheduling problem corresponds to the Petersen graph (Figure
2.1) which has chromatic number 3. Thus 3 time slots are enough for our conference,
but less will not work.
Figure 2.1: A graph where the vertices are sessions of the conference in Table 2.1
and an edge between 2 vertices represents a scheduling conflict.
The above toy example gives a taste of how graph coloring appears in many
constrained resource allocation problems. Listed below are some other applications
of graph coloring.
⋆ Wireless network protocols for selecting communication channels: Chan-
nels using a small spectrum of frequency must be assigned to transmitters so that
they can communicate without interference from each other.
⋆ Register allocation of variables in computer programs: Variables in a
program must be assigned to a limited number of registers(by a compiler) so that
any two variables that are used at overlapping time intervals have different registers.
24
⋆ Parallel sparse matrix computations: Blocks of matrices must be assigned
to parallel processors so that computation can proceed with little information ex-
changed between processors.
There are numerous generalizations of the graph coloring problem. For
example we may color edges instead of vertices (edge coloring), or we may assign a
list of colors to each vertex and require that the color chosen for each vertex be from
its list (list coloring). Unless mentioned otherwise, we will mean “vertex coloring”
when we mention “graph coloring” in this treatise.
2.4.1 Some Problems in Graph Colorings
There are many problems that can be analyzed and sometimes solved by
modeling the situation described in the problem by a graph and defining a vertex
coloring of the graph in an appropriate manner. We consider a number of such
problems in this section. From a given group of individuals, suppose that some
committees have been formed where an individual may belong to several different
committees. A meeting time is to be assigned for each committee. Two committees
having a member in common cannot meet at the same time. A graph G can be
constructed from this situation in which the vertices are the committees and two
vertices are adjacent if the committees have a member in common. Lets look at a
specific example of this.
Example 2.4.1. At a gathering of eight employees of a company, which we denote
by A = {a1, a2, . . . , a8}, it is decided that it would be useful to have these individuals
meet in committees of three to discuss seven issues of importance to the company.
The seven committees selected for this purpose are
A1 = {a1, a2, a3}, A2 = {a2, a3, a4}, A3 = {a4, a5, a6}, A4 = {a5, a6, a7},
A5 = {a1, a7, a8}, A6 = {a1, a4, a7}, A7 = {a2, a6, a8}.
25
If each committee is going to meet during one of the time periods 1-2 pm,
2-3 pm, 3-4 pm, 4-5 pm, 5-6 pm, then what is the minimum number of time periods
needed for all seven committees to meet?
Figure 2.2: The graph G in Example 2.4.1.
Solution: No two committees can meet during the same period if some employee be-
longs to both committees. Define a graph G whose vertex set is V (G) = {A1, A2, . . . ,
A7} where two vertices Ai and Aj are adjacent if Ai ∩ Aj 6= φ (and so Ai and Aj
must meet during different time periods).
The graph G is shown in Figure 2.2. The answer to the question posed in
the example is therefore χ(G). Since each committee consists of three members and
there are only eight employees in all, it follows that the independence number of
G is α(G) = 2. Also it is known that, χ(G) ≥ n/α(G) = 7/2 and so χ(G) ≥ 4.
Since there is a 4-coloring of G, as shown in Figure 2.2, it follows that χ(G) = 4.
Hence the minimum number of time periods needed for all seven committees to meet
is 4. According to the resulting color classes, one possibility for these meetings is
1− 2 pm : A1, A4; 2− 3 pm : A2, A5; 3− 4 pm : A3; 4− 5 pm : A6, A7.
Example 2.4.2. In a rural community, there are ten children (denoted by {c1, c2, . . . ,
c10}) living in ten different homes who require physical therapy sessions during the
26
week. Ten physical therapists in a neighboring city have volunteered to visit some of
these children one day during the week but no child is to be visited twice on the same
day. The set of children visited by a physical therapist on any one day is referred to
as a tour. It is decided that an optimal number of children to visit on a tour is 4.
The following ten tours are agreed upon:
T1 = {c1, c2, c3, c4}, T2 = {c3, c5, c7, c9}, T3 = {c1, c2, c9, c10},
T4 = {c4, c6, c7, c8}, T5 = {c2, c5, c9, c10}, T6 = {c1, c4, c6, c8},
T7 = {c3, c4, c8, c9}, T8 = {c2, c5, c7, c10}, T9 = {c5, c6, c8, c10},
T10 = {c6, c7, c8, c9}.
It would be preferred if all ten tours can take place during Monday through Friday
but the physical therapists are willing to work on the weekend if necessary. Is it
necessary for someone to work on the weekend?
Solution: A graph G is constructed with vertex set {T1, T2, . . . , T10}, where Ti is
adjacent to Tj(i 6= j) if Ti ∩ Tj 6= φ (See Figure 2.3) The minimum number of days
needed for these tours is χ(G). Since {T2, T3, T5, T7, T9, T10} induces a maximum
clique in G, it follows that χ(G) = 6. There is a 6-coloring of G (see Figure 2.3)
and so χ(G) ≥ 6. Thus, visiting all ten children requires six days and it is necessary
for some physical therapist to work on the weekend.
Example 2.4.3. At a regional airport there is a facility that is used for minor
routine maintenance of airplanes. This facility has four locations available for this
purpose and so four airplanes can conceivably be serviced at the same time. This
facility is open on certain days from 7 am to 7 pm. Performing this maintenance
requires 21
2hours per airplane; however, three hours are scheduled for each plane.
A certain location may be scheduled for two different planes if the exit time for
one plane is the same as the entrance time for the other. On a particular day,
twelves airplanes, denoted by P1, P2, . . . , P12, are scheduled for maintenance during
the indicated time periods:
27
Figure 2.3: The graph G in Example 2.4.2.
P1 : 11am − 2pm;P2 : 3pm − 6pm;P3 : 8am − 11am;P4 : 1 : 30pm − 4 : 30pm;P5 :
1pm − 4pm;P6 : 2pm − 5pm;P7 : 9 : 30am − 12 : 30pm;P8 : 7am − 10am;P9 :
noon− 3pm;P10 : 4pm− 7pm;P11 : 10am− 1pm;P12 : 9am− noon.
Can a maintenance schedule be constructed for all twelve airplanes?
Solution: A graph G is constructed whose vertex set is the set of airplanes, that
is, V (G) = P1, P2, . . . , P12. Two vertices Pi and Pj(i 6= j) are adjacent if their
scheduled maintenance overlaps (see Figure 2.4). Since there are only four locations
available for maintenance, the question is whether the graph G is 4-colorable. In
fact, χ(G) = w(G) = 4, where {P1, P7, P11, P12} induces a maximum clique in G.
Ideally, it would be good if each color class has the same number of vertices (namely
three) so that each maintenance crew services the same number of planes during the
day. The 4-coloring of G shown in Figure 2.4 has this desired property.
Example 2.4.4. Two dentists are having new offices designed for themselves. In
the common waiting room for their patients, they have decided to have an aquatic
area containing fish tanks. Because some fish require a cold water environment while
others are more tropical and because some fish are aggressive with other types of fish,
28
Figure 2.4: The graph G in Example 2.4.3.
not all fish can be placed in a single tank. It is decided to have nine exotic fish, de-
noted by F1, F2, . . . , F9, where the fish that cannot be placed in the same tank as
Fi(1 ≤ i ≤ 9) are indicated below.
F1 : F2, F3, F4, F5, F6, F8, F2 : F1, F3, F6, F7, F3 : F1, F2, F6, F7, F4 : F1, F5, F8, F9,
F5 : F1, F4, F8, F9, F6 : F1, F2, F3, F7, F7 : F2, F3, F6, F9, F8 : F1, F4, F5, F9,
F9 : F4, F5, F7, F8.
What is the minimum number of tanks required?
Solution: A graph G is constructed with vertex set V (G) = F1, F2, . . . , F9, where
Fi is adjacent to Fj(i 6= j) if Fi and Fj cannot be placed in the same tank (see Figure
2.5). Then the minimum number of tanks required to house all fish is χ(G). In this
case, ω(G) = 4, so χ(G) ≥ 4. However, n = 9 and α(G) = 2 and so χ(G) ≥ 9/2.
Thus χ(G) ≥ 5. A 5-coloring of G is given in Figure 2.5, implying that χ(G) ≤ 5
and so χ(G) = 5.
Example 2.4.5. Figure 2.6 shows eight traffic lanes L1, L1, . . . , L8at the intersection
of two streets. A traffic light is located at the intersection. During each phase of
29
Figure 2.5: The graph G in Example 2.4.4.
the traffic light, those cars in lanes for which the light is green may proceed safely
through the intersection into certain permitted lanes. What is the minimum number
of phases needed for the traffic light so that (eventually) all cars may proceed through
the intersection?
Figure 2.6: Traffic lanes at street intersections in Example 2.4.5.
Solution: A graph G is constructed with vertex set V (G) = {L1, L2, . . . , L8},
where Li is adjacent to Lj(i 6= j) if cars in lanes Li and Lj cannot proceed safely
through the intersection at the same time. (See Figure 2.6) The minimum number
of phases needed for the traffic light so that all cars may proceed, in time, through
30
the intersection is χ(G). Since {L2, L3, L5, L7} induces a maximum clique in G, it
follows that χ(G) = 4. Since there is a 4-coloring of G (see Figure 2.6), it follows
that χ(G) = 4. For example, since L6, L7, and L8 belong to the same color class,
cars in those three lanes may proceed safely through the intersection at the same
time.
2.5 OTHER TYPES OF COLORINGS
Definition 2.5.1. A harmonious coloring of a simple graph G is proper vertex
coloring such that each pair of colors appears together on at most one edge. The
harmonious chromatic number χH(G) is the least number of colors in such a coloring.
Definition 2.5.2. In graph theory, complete coloring is the opposite of harmonious
coloring in the sense that it is a vertex coloring in which every pair of colors appears
on at least one pair of adjacent vertices.
Definition 2.5.3. A map is defined to a be a plane connected graph with no bridges.
A map G is said to be k-face colorable if one can color its faces with at most k
colors in such a way that no two adjacent faces i.e., two faces sharing a common
boundary edge, have the same color.
Definition 2.5.4. An edge coloring of graph G = (V,E) is a function C : E → N ,
in which any two adjacent edges e, f ∈ E are assigned different colors. The function
C is known as the edge-coloring function. A graph G for which there exists an
edge-coloring which requires k colors is called k-edge colorable, while such a coloring
is called a k-edge coloring. The smallest number k of which there exists a k - edge
- coloring of G is called the chromatic index of a graph G and is denoted by χ′(G).
Any edge - coloring of G which requires k = χ′(G) colors is called chromatic or
optimal.
Definition 2.5.5. A co-coloring of a graph G is an assignment of colors to the
vertices such that each color class forms an independent set in G or in the comple-
31
ment of G. The co-chromatic number z(G) of G is the least number of colors needed
in any co-colorings of G.
Definition 2.5.6. A grundy coloring of a graph is a proper vertex coloring φ :
V → N such that every vertex v has a neighbor of color i for all 1 ≤ i ≤ φ(v).
Definition 2.5.7. An exact coloring is a (proper) vertex coloring in which every
pair of colors appears on exactly one pair of adjacent vertices. In essence, an exact
coloring is a coloring that is both harmonious and complete.
2.6 b-COLORING
The b-chromatic number ϕ(G) [36, 37] of a graph G is the largest positive
integer k such that G admits a proper k-coloring in which every color class has a
representative adjacent to at least one vertex in each of the other color classes. Such
a coloring is called a b-coloring. This concept of b-chromatic number was introduced
in 1999 by Irving and Manlove [36], who proved that determining ϕ(G) is NP-hard
in general and polynomial for trees. They showed that the b-chromatic number is
bounded by the chromatic and the achromatic numbers: χ(G) ≤ ϕ(G) ≤ χc(G),
where χc(G) is the maximum number of colors such that any pair of color appears
in G. They also proved the following upperbound of ϕ(G)
ϕ(G) ≤ ∆(G) + 1 (2.1)
Definition 2.6.1. A graph G is defined to be b-continuous [6] if it admits a b-
coloring with t colors, for every t = χ(G), . . . , ϕ(G).
32
2.7 COMPLEXITY OF b-CHROMATIC NUM-
BER
Determining ϕ(G) for an arbitrary graph G is hard. It is clear that, for
a graph G to have a b-chromatic coloring of k colors, G must contain at least k
vertices, each of degree at least k − 1. The following definition leads to a closely
related, but stronger observation.
Definition 2.7.1. For a graph G = (V,E), suppose that the vertices of G are ordered
v1, v2, v3, . . . , vn so that d(v1) ≤ d(v2) ≤ d(v3) ≤ . . . ≤ d(vn). Then the m-degree,
m(G), of G is defined by
m(G) = max {l ≤ i ≤ n : d(vi) ≥ i− l}.
It turns out that m(G) is an upper bound for ϕ(G).
Lemma 2.7.2. For any graph G,ϕ(G) ≤ m(G).
Proof. The definition of the m-degree implies that there is some set of m(G) vertices
of G, each with degree ≥ m(G) − 1, while the other V −m(G) vertices of G each
have degree ≤ m(G) − 1. If ϕ(G) > m(G) then in any b-chromatic coloring of
size ϕ(G), there is at least one color c whose vertices all have degree ≤ m(G) − 1.
For, if not, then there are at least ϕ(G) > m(G) vertices of degree > m(G) − 1, a
contradiction. Hence, all vertices of color c have degree < ϕ(G) − 1, and none of
these can be b-chromatic, a contradiction.
Corollary 2.7.3. A proper coloring {v1, v2, . . . , vk} of a graph G = (V,E) is ≺Gb
(Partial Order - ) minimal if and only if
∀1 ≤ i ≤ k ∃vi ∈ Vi ∀1 ≤ j 6= i ≤ k ∃wj ∈ Vj {vi, wj ∈ E}
.
33
Theorem 2.7.4. [36] b-Chromatic number is NP-complete.
Proof. b-chromatic number is certainly in NP, for given a coloring of the vertices one
can use the criterion of Corollary 2.7.3 to verify that the colouring is b-chromatic,
in polynomial time. To prove NP-hardness, provide a transformation from the X3C
problem, as defined above. Suppose that S = {S1, S2, . . . , Sn} (where n = 3k for
some k), and T = {T1, T2, . . . , Tm} (where Ti ⊆ S and |Ti| = 3, for each i) is some
arbitrary instance of this problem. The X3C problem can easily be transformed to
a restricted version of the problem, in which the instance satisfies the following two
properties:
1.⋃
1≤i≤m
Ti = S
2. S 6= φ
Figure 2.7: Graph G derived from an instance of X3C.
Construct an instance of b-chromatic number as follows.
34
Let V = {u1, . . . , un, v, w1, . . . , wm, x1, . . . , xn, y1, . . . , ym}, and let E con-
tain the elements
{ui, v} for 1 ≤ i ≤ n,
{v, wi} for 1 ≤ i ≤ m,
{wi, wj} for 1 ≤ i ≤ j ≤ m
{wi, xj} for 1 ≤ i ≤ m, 1 ≤ j ≤ n,
{xi, xj} for 1 ≤ i ≤ j ≤ n,
{xi, yj} for 1 ≤ i ≤ n, 1 ≤ j ≤ m, =⇒ si ∈ Tj,
{yj, yj} for 1 ≤ i ≤ j ≤ m =⇒ Ti ∩ Tj 6= φ.
The resulting graph G = (V,E) is shown in 2.7. Now it is found that m(G) in order
to obtain an upper bound for ψ(G). It may be easily verified that :
d(ui) = 1 for 1 ≤ i ≤ n.
d(v) = m+ n.
d(wi) = m+ n for 1 ≤ i ≤ m.
d(xi) ≥ m+ n for 1 ≤ i ≤ n.
d(yi) ≤ 3 + (m− 1) < m+ n since n ≥ 3.
Therefore, m+ n+ 1 vertices of G have degree at least m+ n and all other vertices
of G have degree less than m+n. Hence m(G) = m+n+ 1 and ϕ(G) ≤ m+n+ 1.
The claim is that G has a b-chromatic coloring of size m+n+1 if and only if T has
an exact cover for S.
For, suppose that T has an exact cover Ti1 , Ti2 , . . . , TiR , For S, where r ≤ m.
35
Assign m+ n+ 1 colors to the vertices of G as follows:
c(ui) = c(xi) = i for 1 ≤ i ≤ n
c(v) = m+ n+ 1,
c(wi) = n+ i for 1 ≤ j ≤ r and
color the remaining yi, (i.e., vertices {y1, y2, . . . , ym} {yi1 , yi1 , . . . , yir})
by colors n+ 1, n+ 2, . . . , n+m− r, respectively.
It remains to show that this coloring is b-chromatic. Certainly the coloring is proper,
for the exact cover property gives us that Tij ∩ Tik = φ for 1 ≤ j < k ≤ r, so that
{yi, yik} /∈ E. Also, m − r < m + 1, so that no yi such that Ti is not in the exact
cover has color m+ n+ 1. Take each color j in turn:
If j = m+ n+ 1 then v is a b-chromatic vertex for color j.
If n+ 1 ≤ j ≤ n+m then wj−n is a b-chromatic vertex for color j.
If 1 ≤ j ≤ n then xj is adjacent to colors 1, . . . , j − 1, j + 1, . . . , n + m, plus color
m + n + 1 by the exact property of Ti1 , Ti2 , . . . , Tir , so is a b-chromatic vertex for
color j.
Therefore this coloring is b-chromatic and has size m+ n+ 1.
Conversely, suppose that G has a b-chromatic coloring of size m + n + 1.
Without loss of generality, it may be assumed that c(xi) = i for 1 ≤ i ≤ n and
c(wi) = n + i for 1 ≤ i ≤ m. There is only one remaining vertex of degree at least
m+ n, namely v, so the b-chromatic property forces c(v) = m+ n+ 1.
2.8 LITERATURE SURVEY
Several authors have studied and are interested in this parameter. In [43],
Kouider and Maheo gave some lower and upper bounds for the b-chromatic number
of the cartesian product of two graphs. In [42], Kratochvıl et al. characterized
bipartite graphs for which the lower bound on the b-chromatic number is attained
36
and proved the NP - completeness of the problem to decide whether there is a
dominating proper b-coloring even for connected bipartite graphs and k = ∆(G)+1.
In 2003 and 2005, Effantin and Kheddouci studied [14, 15, 16] the b-chromatic
number for the complete caterpillars, the powers of paths, cycles, and complete k-ary
trees.
In 2004, Faik [20] was interested in the continuity of the b-coloring and
proved that chordal graphs are b-continuous.
In 2005, Corteel et al. proved that there is no constant ǫ > 0 for which this
problem can be approximated within a factor of 120/113 − ǫ in polynomial time,
unless P = NP . An existence of a constant-factor approximation algorithm for the
b-chromatic number in general graphs was formulated as an open problem.
In 2006, Kouider and Zaker [39] proposed some upper bounds for the b-
chromatic number of several classes of graphs in function of other graph parameters
(clique number, chromatic number, biclique number).
M. Kouider and A. El Sahili proved in [40] that if G is a d-regular graph
with girth 5 and without cycles of length 6, then ϕ(G) = d+ 1.
Effantin and Kheddouci [17] proposed a discussion on relationships between
this parameter and two other coloring parameters (the Grundy and the partial
Grundy numbers). The property of the dominating nodes in a b-coloring is very
interesting since they can communicate directly with each partition of the graph. In
2006, Effantin and Kheddouci presented in [18] a distributed algorithm to determine
a b-coloring of a graphG inO(n∆) changes of colors, where ∆ is the maximum degree
of G. They showed that such a coloring can be used for routing information into a
network.
In 2008, Shuang Liu, B.Effantin and H.Kheddouci [46] proposed a beautiful
example of a dynamic distributed alogrithm for a b-coloring of graphs. Distributed
algorithms are a very attractive topic for a lot of fields and several graph problems
arise naturally in distributed systems. Such algorithms are very interesting and
37
efficient for dynamic networks.
In 2010, Sandi Klavzar and Marko Jakovac [37], proved that the b-chromatic
number of cubic graphs is four with the exception of Petersen graph, K3,3, prism
over K3, and sporadic (isolated) with 10 vertices.
Hoang and Kouider characterized in [33], the bipartite graphs and the P4-
sparse graphs for which each induced subgraph H of G has φ(H) = χ(H).
In 2011, Mekkia Kouider and Mario Valencia-Pabon [41] presented some
lower bounds for the b-chromatic number of connected bipartite graphs. They also
discussed some algorithmic consequences of such lower bounds on some subfamilies
of connected bipartite graphs.
In 2011, Clara Ines Betancur Velasquez et al. [3] proved that P4− tidy
graphs (a generalization of many classes of graphs with few induced P4s) are b-
continuous and b-monotonic and also described a polynomial time algorithm to
compute the b-chromatic number for this class of graphs.
In 2011, Sergio Cabello and Marko Jakovac [7] proved that every d-regular
graph with at least 2d3 vertices has b-chromatic number d + 1, the b-chromatic
number of an arbitrary d-regular graph with girth g = 5 is at least⌊
d+1
2
⌋
and
every d-regular graph, d ≥ 6, with diameter at least d and with no 4-cycles, has
b-chromatic number d+ 1.
In 2012, Saeed Shaebani [57] proved that, for each d-regular graph G which
contains no 4-cycle, ϕ(G) ≥ ⌊(d+ 3)/2⌋ and besides, if G has a triangle, then
ϕ(G) ≥⌊
d+4
2
⌋
. Also, if G is a d-regular graph that contains no 4-cycle and
diam(G) ≥ 6, then ϕ(G) = d + 1 and also discussed that for any d-regular graph
G which does not contain 4-cycle and has vertex connectivity less than or equal to
d+1
2, ϕ(G) = d+ 1. Moreover, when the vertex connectivity is less than 3d−3
4, intro-
duced a lower bound for the b-chromatic number in terms of the vertex connectivity.
In 2012, Frederic Havet et al. [30] proved that it is also NP -hard for a tight
chordal graph. They also found that the b-chromatic number of a split graph can
38
be computed in polynomial time.
In 2012, Frederic Maffray and Ana Silva [48] discussed how to compute in
polynomial time the b-chromatic number of an outer planar graph of girth at least
8.
In 2013, Frantisek Galcik and Jan Katrenic [24] have been settled this
question in a negative way proving that there is no constant ǫ > 0, for which the
problem can be approximated within a factor n1/4−ǫ, unless P = NP .
In 2013, Frederic Maffray and Ana Silva [49] discussed that how to find in
polynomial time an optimal b-colouring of the Cartesian product of trees by paths,
cycles and stars.
In 2013, Balakrishnan.R and S.Francis Raj [2] established that for any con-
nected graph G on n ≥ 5 vertices and any v ∈ V (G), ϕ(G)−(⌈
n2
⌉
− 2)
≤ ϕ(G−v) ≤
ϕ(G) +⌊
n2
⌋
− 2.
2.8.1 Some Applications of b-Coloring
H. Elghazel et.al [19] proposed a new unsupervised classification method
of medical data based on the b-coloring of graph where the number of classes is not
known in advance.
In order to reduce the rejection rate of our automatic reading system,
Djamel Gaceb et al [23] proposed to pre-classify the business documents by in-
troducing an Automatic Recognition of Documents stage (ARD) as a preprocessing
step. This important step will guide the other stages involved in the recognition
process of the documents contents. Once the document class identified, the reading
system will use correct information from the ARD stage to improve the segmentation
of the layout, the recognition of the document structure, the parameterization of the
Object character recoginition (OCR), and the final decision for the rejection. They
also presented the graph b-coloring method and its application in an ARD stage. It
39
can process documents having variable layouts and provides a real representation of
documents classes by using dominants documents. Moreover the b-coloring allows
to increase the coherence between different phases of the ARD system and reduces
the overall computation cost of the system.
In a distributed system, [46] a node exchanges information only with its
neighborhood. Every node has a set of local variables to determine a local state of
the node. The state of the entire system, called global state, is the union of the
local states of all the nodes in the system. The objective in a distributed system is
to obtain automatically a desirable global final state (called legitimate state) where
each node is considered as a distinct entity able to compute its own state itself, with
its neighborhood as only knowledge. Distributed algorithms are a very attractive
topic for a lot of fields and several graph problems arise naturally in distributed
systems. For example, distributed algorithms for finding spanning trees, matchings,
independent sets. Such algorithms are so very interesting and efficient for dynamic
networks.
Brice Effantin and Hamamache Kheddouci [18] proposed a distributed method
to determine a particular coloring of graphs. Thus, they proposed a partitioning
method of a graph based on b-colorings.
L. Dekar [12] proposed a self-learning scheme named COWSA, which aims
to enhance the performances of existing Web services composition algorithms. Their
scheme is based on a new dynamic clustering of Web services that is oriented to Web
services composition. This clustering is performed through using the b-coloring of
graphs.