[]
|
Research 
|
Profile 
|
Teaching 
|
Software 
|
Contact 
|

 
 

Applications of Graph Theory

Shariefuddin Pirzada and Ashay Dharwadker


 
 

JOURNAL OF THE KOREAN SOCIETY FOR INDUSTRIAL AND APPLIED MATHEMATICS VOL. 11 NO. 4 2007

Abstract

Graph theory is becoming increasingly significant as it is applied to other areas of mathematics, science and technology. It is being actively used in fields as varied as biochemistry (genomics), electrical engineering (communication networks and coding theory), computer science (algorithms and computation) and operations research (scheduling). The powerful combinatorial methods found in graph theory have also been used to prove fundamental results in other areas of pure mathematics. This paper, besides giving a general outlook of these facts, includes new graph theoretical proofs of Fermat’s Little Theorem and the Nielson-Schreier Theorem. New applications to DNA sequencing (the SNP assembly problem) and computer network security (worm propagation) using minimum vertex covers in graphs are discussed. We also show how to apply edge coloring and matching in graphs for scheduling (the timetabling problem) and vertex coloring in graphs for map coloring and the assignment of frequencies in GSM mobile phone networks. Finally, we revisit the classical problem of finding re-entrant knight’s tours on a chessboard using Hamiltonian circuits in graphs.
 

Ackowledgements

This paper was originally published in the Journal of the Korean Society for Industrial and Applied Mathematics (KSIAM), Vol. 11, No. 4, pp. 19-38, 2007. We are pleased to announce that Applications of Graph Theory has also been published by Amazon in 2011.
 
 

Introduction

Graph theory is rapidly moving into the mainstream of mathematics mainly because of its applications in diverse fields which include biochemistry (genomics), electrical engineering (communications networks and coding theory), computer science (algorithms and computations) and operations research (scheduling). The wide scope of these and other applications has been well-documented cf. [5] [19]. The powerful combinatorial methods found in graph theory have also been used to prove significant and well-known results in a variety of areas in mathematics itself. The best known of these methods are related to a part of graph theory called matchings, and the results from this area are used to prove Dilworth’s chain decomposition theorem for finite partially ordered sets. An application of matching in graph theory shows that there is a common set of left and right coset representatives of a subgroup in a finite group. This result played an important role in Dharwadker’s 2000 proof of the four-color theorem [8] [18]. The existence of matchings in certain infinite bipartite graphs played an important role in Laczkovich’s affirmative answer to Tarski’s 1925 problem of whether a circle is piecewise congruent to a square. The proof of the existence of a subset of the real numbers R that is non-measurable in the Lebesgue sense is due to Thomas [21]. Surprisingly, this theorem can be proved using only discrete mathematics (bipartite graphs). There are many such examples of applications of graph theory to other parts of mathematics, but they remain scattered in the literature [3][16]. In this paper, we present a few selected applications of graph theory to other parts of mathematics and to various other fields in general.
 

1. The Cantor-Schröder-Bernstein Theorem

Here we discuss the graph theoretical proof of the classical result of Schröder and Bernstein. This theorem was presumed to be an obvious fact by Cantor (cf. remark 1.2) and later proved independently by Schröder (1896) and Bernstein (1905). The proof given here can be found in [14] and is attributed to König.

1.1. Theorem (Cantor-Schröder-Bernstein). For the sets A and B, if there is an injective mapping f: A → B and an injective mapping g: B → A, then there is a bijection from A onto B, that is, A and B have the same cardinality.

Proof. Without loss of generality, assume A and B to be disjoint. Define a bipartite graph G = (A, B, E), where xyE if and only if either f(x) = y or g(y) = xxA, yB. By the hypothesis, 1  ≤  d(v)  ≤  2 for each v of G. Therefore, each component of G is either a one-way infinite path (that is, a path of the form x0, x1, ..., xn, ...), or a two-way infinite path (of the form ..., x-n, ..., x-1 , x0, x1, ..., xn, ...), or a cycle of even length with more than two vertices, or an edge. Note that a finite path of length greater or equal to two cannot be a component of G. Thus, in each component there is a set of edges such that each vertex in the component is incident with precisely one of these edges. Hence, in each component, the subset of vertices from A is of the same cardinality as the subset of vertices from B. ☐

1.2. Remark. Cantor inferred the result as a corollary of the well-ordering principle. The above argument shows that the result can be proved without using the axiom of choice.
 

Figure 1.1. Types of components of the bipartite graph G
 

2. Fermat’s (Little) Theorem

There are many proofs of Fermat’s Little Theorem. The first known proof was communicated by Euler in his letter of March 6, 1742 to Goldbach. The idea of the graph theoretic proof given below can be found in [12] where this method, together with some number theoretic results, was used to prove Euler’s generalization to non-prime modulus.

2.1. Theorem (Fermat). Let a be a natural number and let p be a prime such that a is not divisible by p. Then, ap - a is divisible by p.

Proof. Consider the graph G = (V, E), where the vertex set V is the set of all sequences (a1, a2, ..., ap) of natural numbers between 1 and a (inclusive), with ai  ≠ aj for some i  ≠ j. Clearly, V has ap - a elements. Let u = (u1, u2, ..., up), v = (up, u1, ..., up-1) ∈V. Then, we say uvE. With this assumption, each vertex of G is of degree 2. So, each component of G is a cycle of length p. Therefore, the number of components is (ap - a) / p. That is, p |  (ap - a). ☐
 

Figure 2.1. The graph G for a = 2 and p = 3
 

3. The Nielson-Schreier Theorem

Babai [2] proved the Nielson-Schreier Theorem for subgroups of free groups, as well as other results in diverse areas, from his Contraction Lemma. The particular case of this lemma when G is a tree, and its use in proving the Nielson-Schreier Theorem, was also observed by Serre [20].
     Let H be a group and let S be a set of generators of H. The product of generators and their inverses which equals the identity element 1 is called a trivial relation among the generators in S if 1 can be obtained from that product by repeatedly replacing xx-1 or x-1x  by 1. Otherwise such a product is called a nontrivial relation. A group H is free if H has a set of generators such that all relations among the generators are trivial. The Cayley graph G(H, S) of H with respect to S, has vertices x, y, ... ∈H, and {x, y} is an edge if and only if either x = ya or y = xa, for some aS.
 
Figure 3.1. The neighborhood of a typical vertex x in the Caley graph of the free group generated by S = {a1, a2, a3, ...}

A group H of permutations acting on a set V is called semi-regular if for each xV, the stabilizer Hx = {hH: xh = x} consists of the identity only, where xh denotes the image of x under h. If H is transitive and semi-regular, then it is regular. For any fixed hH, let hR be a permutation of H obtained by multiplying all the elements of H on the right by h. The collection HR = {hR: hH} is a regular group of permutations (under composition) and is called the (right) regular permutation representation of H. The automorphism group of a graph G is the group of all permutations p of the vertices of G with the property that {p(x), p(y)} is an edge of G if and only if {x, y} is an edge of G. It can be shown cf. [2] that G is a Cayley graph of the group H if and only if G is connected and HR is a subgroup of the automorphism group of G. If G is any graph and e = {x, y} an edge of G, then by contraction along e, we mean the graph G' obtained by identifying the vertices x and y. We say that a graph G1 is contractible onto a graph G2 if there is a sequence of contractions along edges which transforms G1 to G2.

3.1. Contraction Lemma. Let H be a semi-regular subgroup of the automorphism group of a connected graph G. Then, G is contractible onto some Cayley graph of H. The proof of this lemma is rather technical, although it only uses ideas from group theory and graph theory cf. [2].

3.2. Corollary. If J is a subgroup of a group H, then any G(H, S) is contractible onto G(J, T) for some set T of generators of J.

3.3. Theorem (Nielson-Schreier). Any subgroup of a free group is free.

Proof. We first show that in any group H and for any set S of generators of H, the Cayley graph G(H, S) contains a cycle of length > 2 if and only if there is a nontrivial relation among the generators in S. To show this, suppose x0, x1, ..., xn = x0 is a cycle of  G(H, S). Then, there are ai∈ S, 1  ≤ i  ≤  n, such that xi-1aiεi = xi where εi∈ {-1, 1}. Hence,  xn = xn-1anεn = xn-2 an-1εn-1anεn = ... = x0 a1ε1a2ε2 ... anεn, that is, the identity 1 = a1ε1a2ε2 ... anεn. If this were a trivial relation, then there would exist an integer i, 1  ≤  i  ≤  n, such that ai = ai+1 and εi = -εi+1. However, this implies that xi-1 = xi+1, a contradiction. Similarly, if a1ε1a2ε2 ... anεn = 1 is a nontrivial relation, then x0, x1, ..., xn, where xi = xi-1aiεi, 1  ≤  i  ≤  n, and x0 = xn, is a closed trial in G(H, S), which must contain a cycle.
     Suppose now that H is a free group, S a minimal set of generators of H, and J a subgroup of H. Since there is no nontrivial relation on the elements of S, G(H, S) does not contain a cycle. Also, from the corollary above, G(H, S) is contractible onto G(J, T) for some set T of generators of J. Because any contraction of a cycle-free graph is again cycle-free, G(J, T) must be cycle-free, and, thus, there is no nontrivial relation on the elements of T. Hence, J must be a free group, freely generated by T. ☐

 

4. The SNP Assembly Problem

In computational biochemistry there are many situations where we wish to resolve conflicts between sequences in a sample by excluding some of the sequences. Of course, exactly what constitutes a conflict must be precisely defined in the biochemical context. We define a conflict graph where the vertices represent the sequences in the sample and there is an edge between two vertices if and only if there is a conflict between the corresponding sequences. The aim is to remove the fewest possible sequences that will eliminate all conflicts. Recall that given a simple graph G, a vertex cover C is a subset of the vertices such that every edge has at least one end in C. Thus, the aim is to find a minimum vertex cover in the conflict graph G (in general, this is known to be a NP-complete problem [13]). We look at a specific example of the SNP assembly problem given in [15] and show how to solve this problem using the vertex cover algorithm [6].
     A Single Nucleotide Polymorphism (SNP, pronounced “snip”) [15] is a single base mutation in DNA. It is known that SNPs are the most common source of genetic polymorphism in the human genome (about 90% of all human DNA polymorphisms).
 
Figure 4.1. The DNA double helix and SNP assembly problem

The SNP Assembly Problem [15] is defined as follows. A SNP assembly is a triple (S, F, R) where S = {s1, ..., sn} is a set of n SNPs, F = {f1, ..., fm} is a set of m fragments and R is a relation R: S×F →  {0, A, B} indicating whether a SNP siS does not occur on a fragment fjF (marked by 0) or if occurring, the non-zero value of si (A or B). Two SNPs si and sj are defined to be in conflict when there exist two fragments fk and fl such that exactly three of R(si, fk), R(si, fl), R(sj, fk), R(sj, fl) have the same non-zero value and exactly one has the opposing non-zero value. The problem is to remove the fewest possible SNPs that will eliminate all conflicts. The following example from [15] is shown in the table below. Note that the relation R is only defined for a subset of S×F obtained from experimental values.
 

R f1 f2 f3 f4 f5
s1 A B - - B
s2 B A A A 0
s3 0 0 B B A
s4 A 0 A 0 B
s5 A B B B A
s6 B - A A 0
Figure 4.2. Table for the relation R

Note, for instance, that s1 and s5 are in conflict because R(s1, f2) = B, R(s1, f5) = B, R(s5, f2) = B, R(s5, f5) = A. Again, s4 and s6 are in conflict because R(s4, f1) = A, R(s4, f3) = A, R(s6, f1) = B, R(s6, f3) = A. Similarly, all pairs of conflicting SNPs are easily determined from the table. The conflict graph G corresponding to this SNP assembly problem is shown below in figure 4.3.
 

Figure 4.3. The conflict graph G

We now use the vertex cover algorithm [6] to find minimal vertex covers in the conflict graph G. The input is the number of vertices 6, followed by the adjacency matrix of G shown below in figure 4.4. The entry in row i and column j of the adjacency matrix is 1 if the vertices si and sj have an edge in the conflict graph and 0 otherwise.
 

0 0 0 0 1 0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
1
1
0
0
1
0
0
0
0
0
1
0
0
Figure 4.4. The input for the vertex cover algorithm

The vertex cover program [6] finds two distinct minimum vertex covers, shown in figure 4.5.
 

Minimum Vertex Cover: s1, s4
Minimum Vertex Cover: s4, s5
Figure 4.5. The output of the vertex cover algorithm

Thus, either removing s1, s4 or removing s4, s5 solves the given SNP assembly problem.

 

5. Computer Network Security

A team of computer scientists led by Eric Filiol [11] at the Virology and Cryptology Lab, ESAT, and the French Navy, ESCANSIC, have recently used the vertex cover algorithm [6] to simulate the propagation of stealth worms on large computer networks and design optimal strategies for protecting the network against such virus attacks in real-time.
 
Figure 5.1. The set {2, 4, 5} is a minimum vertex cover in this computer network

The simulation was carried out on a large internet-like virtual network and showed that that the combinatorial topology of routing may have a huge impact on the worm propagation and thus some servers play a more essential and significant role than others. The real-time capability to identify them is essential to greatly hinder worm propagation. The idea is to find a minimum vertex cover in the graph whose vertices are the routing servers and whose edges are the (possibly dynamic) connections between routing servers. This is an optimal solution for worm propagation and an optimal solution for designing the network defense strategy. Figure 5.1 above shows a simple computer network and a corresponding minimum vertex cover {2, 4, 5}.

 

6. The Timetabling Problem

In a college there are m professors x1, x2, …, xm and n subjects y1, y2, …, yn to be taught. Given that professor xi is required (and able) to teach subject yj for pij periods (p = [ pij ]  is called the teaching requirement matrix), the college administration wishes to make a timetable using the minimum possible number of periods. This is known as the timetabling problem [4] and can be solved using the following strategy. Construct a bipartite multigraph G with vertices x1, x2, …, xm, y1, y2, …, yn such that vertices xi and yj are connected by pij edges. We presume that in any one period each professor can teach at most one subject and that each subject can be taught by at most one professor. Consider, first, a single period. The timetable for this single period corresponds to a matching in the graph and, conversely, each matching corresponds to a possible assignment of professors to subjects taught during this period. Thus, the solution to the timetabling problem consists of partitioning the edges of G into the minimum number of matchings. Equivalently, we must properly color the edges of G with the minimum number of colors. We shall show yet another way of solving the problem using the vertex coloring algorithm [7]. Recall that the line graph L(G) of G has as vertices the edges of G and two vertices in L(G) are connected by an edge if and only if the corresponding edges in G have a vertex in common. The line graph L(G) is a simple graph and a proper vertex coloring of L(G) yields a proper edge coloring of G using the same number of colors. Thus, to solve the timetabling problem, it suffices to find a minimum proper vertex coloring of L(G) using [7]. We demonstrate the solution with a small example.
     Suppose there are four professors x1, x2, x3, x4 and five subjects y1, y2, y3, y4, y5 to be taught [4]. The teaching requirement matrix p = [ pij ] is given below in figure 6.1.
 
p y1 y2 y3 y4 y5
x1 2 0 1 1 0
x2 0 1 0 1 0
x3 0 1 1 1 0
x4 0 0 0 1 1
Figure 6.1. The teaching requirement matrix

We first construct the bipartite multigraph G shown below in figure 6.2.
 

Figure 6.2. The bipartite multigraph G

Next, we construct the line graph L(G). The adjacency matrix of L(G) is given below.
 

0
1
1
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
1
1
1
0
1
0
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
Figure. The adjacency matrix of L(G)

Now, we use the vertex coloring algorithm [7] to find a minimum proper 4-coloring of the vertices of L(G).
 

Figure 6.3. A minimum proper 4-coloring of the vertices of L(G)

Vertex Coloring: (1, green), (2, red), (3, blue), (4, yellow), (5, yellow), (6, green), (7, green), (8, yellow), (9, red), (10, blue), (11, yellow). This, in turn, yields a minimum proper edge 4-coloring of the bipartite multigraph G:
 

Figure 6.4. A minimum proper 4-coloring of the edges of G

Edge Coloring: ({x1, y1}, green), ({x1, y1}, red), ({x1, y3}, blue), ({x1, y4}, yellow), ({x2, y2}, yellow), ({x2, y4}, green), ({x3, y2}, green), ({x3, y3}, yellow), ({x3, y4}, red), ({x4, y4}, blue), ({x4, y5}, yellow). Interpret the colors green, red, blue, yellow as periods 1, 2, 3, 4 respectively. Then, from the edge coloring of G, we obtain a solution of the given timetabling problem as shown below in figure 6.5.
 

- 1 2 3 4
x1 y1 y1 y3 y4
x2 y4 - - y2
x3 y2 y4 - y3
x4 - - y4 y5
Figure 6.5. The timetable
 

7.  Map Coloring and GSM Mobile Phone Networks

Given a map drawn on the plane or the surface of a sphere, the famous four color theorem asserts that it is always possible to properly color the regions of the map such that no two adjacent regions are assigned the same color, using at most four distinct colors [8][18][1]. For any given map, we can construct its dual graph as follows. Put a vertex inside each region of the map and connect two distinct vertices by an edge if and only if their respective regions share a whole segment of their boundaries in common. Then, a proper vertex coloring of the dual graph yields a proper coloring of the regions of the original map.
 
Figure 7.1. The map of India
Figure 7.2. The dual graph of the map of India

We use the vertex coloring algorithm [7] to find a proper coloring of the map of India with four colors, see figures 7.1 and 7.2 above.
     The Groupe Spécial Mobile (GSM) was created in 1982 to provide a standard for a mobile telephone system. The first GSM network was launched in 1991 by Radiolinja in Finland with joint technical infrastructure maintenance from Ericsson. Today, GSM is the most popular standard for mobile phones in the world, used by over 2 billion people across more than 212 countries. GSM is a cellular network with its entire geographical range divided into hexagonal cells. Each cell has a communication tower which connects with mobile phones within the cell. All mobile phones connect to the GSM network by searching for cells in the immediate vicinity. GSM networks operate in only four different frequency ranges. The reason why only four different frequencies suffice is clear: the map of the cellular regions can be properly colored by using only four different colors! So, the vertex coloring algorithm may be used for assigning at most four different frequencies for any GSM mobile phone network, see figure 7.3 below.
 

Figure  7.3. The cells of a GSM mobile phone network
 

8.  Knight’s Tours

In 840 A.D., al-Adli [17], a renowned shatranj (chess) player of Baghdad is said to have discovered the first re-entrant knight's tour, a sequence of moves that takes the knight to each square on an 8×8 chessboard exactly once, returning to the original square. Many other re-entrant knight's tours were subsequently discovered but Euler [10] was the first mathematician to do a systematic analysis in 1766, not only for the 8×8 chessboard, but for re-entrant knight's tours on the general n×n chessboard. Given an n×n chessboard, define a knight's graph with a vertex corresponding to each square of the chessboard and an edge connecting vertex i with vertex j if and only if there is a legal knight's move from the square corresponding to vertex i to the square corresponding to vertex j. Thus, a re-entrant knight's tour on the chessboard corresponds to a Hamiltonian circuit in the knight's graph. The Hamiltonian circuit algorithm [9][13] has been used to find re-entrant knights tours on chessboards of various dimensions.
 
Figure 8.1. A re-entrant knight’s tour on the 8×8 chessboard
 

References

[1] K. Appel and W. Haken, Every Planar Map is Four Colorable, Bull. Amer. Math. Soc. 82 (1976) 711-712.
[2] L. Babai, Some applications of graph contractions, J. Graph Theory, Vol. 1 (1977) 125-130.
[3] E. Bertram and P. Horak, Some applications of graph theory to other parts of mathematics, The Mathematical Intelligencer (Springer-Verlag, New York) (1999) 6-11.
[4] J.A. Bondy and U.S.R. Murty, Graph Theory with Applications, 1976, Elsevier Science Publishing Company Inc.
[5] L. Caccetta and K. Vijayan, Applications of graph theory, Fourteenth Australasian Conference on Combinatorial Mathematics and Computing (Dunedin, 1986), Ars. Combin., Vol. 23 (1987)  21-77.
[6] Ashay Dharwadker, The Vertex Cover Algorithm, 2006, http://www.dharwadker.org/vertex_cover
[7] Ashay Dharwadker, The Vertex Coloring Algorithm, 2006, http://www.dharwadker.org/vertex_coloring
[8] Ashay Dharwadker, A New Proof of The Four Colour Theorem, 2000, http://www.dharwadker.org
[9] Ashay Dharwadker, A New Algorithm for finding Hamiltonian Circuits, 2004, http://www.dharwadker.org/hamilton
[10] L. Euler, Solution d'une question curieuse qui ne paroit soumise a aucune analyse, Mémoires de l'Académie Royale des Sciences et Belles Lettres de Berlin, Année 1759 15, 310-337, 1766.
[11] Eric Filiol, Edouard Franc, Alessandro Gubbioli, Benoit Moquet and Guillaume Roblot, Combinatorial Optimisation of Worm Propagation on an Unknown Network, Proc. World Acad. Science, Engineering and Technology, Vol 23, August 2007, http://www.waset.org/journals/waset/v34/v34-8.pdf
[12] K. Heinrich and P. Horak, Euler’s theorem, Am. Math. Monthly, Vol. 101 (1994) 260.
[13] R.M. Karp, Reducibility among combinatorial problems, Complexity of Computer Computations, Plenum Press, 1972.
[14] D. König, Theorie der endlichen und unendlichen graphen, Akademische Verlagsgesllschaft, Leipzing (1936), reprinted by Chelsea, New York (1950).
[15] G. Lancia, V. Afna, S. Istrail, L. Lippert,  and R. Schwartz, SNPs Problems, Complexity and Algorithms, ESA 2002, LNCS 2161, pp. 182-193, 2001. Springer-Verlag 2001.
[16] L. Lovasz, L. Pyber, D. J. A. Welsh and G. M. Ziegler, Combinatorics in pure mathematics, in Handbook of Combinatorics, Elsevier Sciences B. V., Amsterdam (1996).
[17] H. J. R. Murray, A History of Chess, Oxford University Press, 1913.
[18] Shariefuddin Pirzada and Ashay Dharwadker, Graph Theory, Orient Longman and Universities Press of India, 2007.
[19] F. S. Roberts, Graph theory and its applications to the problems of society, CBMS-NSF Monograph 29, SIAM Publications, Philadelphia (1978).
[20] J. P. Serre, Groupes Discretes, Extrait de I’Annuaire du College de France, Paris (1970).
[21] R. Thomas, A combinatorial construction of a non-measurable set, Am. Math. Monthly 92 (1985) 421-422.
 

Shariefuddin Pirzada

Department of Mathematics
University of Kashmir
Srinagar
Jammu and Kashmir 190006
India
sdpirzada@yahoo.co.in
http://www.dharwadker.org/pirzada

Ashay Dharwadker

Institute of Mathematics
H-501 Palam Vihar
District Gurgaon
Haryana 122017
India
ashay@dharwadker.org
http://www.dharwadker.org

JOURNAL OF THE KOREAN SOCIETY FOR INDUSTRIAL AND APPLIED MATHEMATICS VOL. 11 NO. 4 2007

ISBN 1466397098