<<

LINE GRAPHS AND FLOW NETS

A Thesis

Presented to the

Faculty of

San Diego State University

In Partial Fulfillment

of the Requirements for the

Master of Arts

in

Mathematics

by

Bridget Kinsella Druken

Fall 2010

iii

Copyright c 2010 by Bridget Kinsella Druken iv

The man in the wilderness asked of me, “How many strawberries grow in the salt sea?” I answered him, as I thought good, As many a ship as sails in the wood.

The man in the wilderness asked me why His hen could swim and his pig could fly. I answered him as I thought best, “They were both born in a cuckoos nest.”

The man in the wilderness asked me to tell All the sands in the sea and I counted them well. He said he with a grin, “And not one more?” I answered him, “Now you go make sure.”

– written by Mother Goose, sung by Natalie Merchant v

ABSTRACT OF THE THESIS

Line Graphs and Flow Nets by Bridget Kinsella Druken Master of Arts in San Diego State University, 2010

Every graph has a , but not all graphs are line graphs of some graph. Certain types of induced subgraphs indicate whether a graph is a line graph. For example, the claw is not a line graph. This thesis gives a careful characterization of the main theorem of line graphs, that is, the necessary and sufficient conditions for a graph to be a line graph. We show the relationship between triangles, forbidden subgraphs, Krausz partitions and line graphs by providing additional lemmas which aim to support the main theorem. Less attention has been devoted to line graphs of directed graphs. De Bruijn graphs give a motivation to investigate this class since they are directed line graphs. Another motivation for learning about directed line graphs arises from the study of the sum-product algorithm for low density parity check codes. We work with a very general class of directed graphs that allow multiple edges and loops, which are called nets by Harary. We investigate the flow net and compare it to the line graph to lay the foundation for future study of directed line graphs. vi

TABLE OF CONTENTS PAGE ABSTRACT ...... v LIST OF TABLES...... vii LIST OF FIGURES ...... viii ACKNOWLEDGEMENTS...... x CHAPTER 1 GRAPHSANDNETS...... 1 1.1 Graphs ...... 2 1.2 Nets ...... 5 1.3 Matrix Representation ...... 7 2 LINEGRAPHS ...... 10 2.1 Triangles...... 15 2.2 Forbidden Subgraphs...... 18 2.3 Krausz Partitions and Reconstructing the Root Graph ...... 22 2.4 MainTheorem for LineGraphs ...... 28 3 FLOWNETS...... 30 3.1 DeBruijnGraphs...... 30 3.2 LineNetsandFlowNets...... 34 3.3 FlowNetsandLineNets...... 38 4 CONCLUSION ...... 39 BIBLIOGRAPHY...... 40 APPENDIX KRAUSZ RECOVERING PROCESS APPLIED TO THE NINE FORBID- DEN SUBGRAPHS ...... 41 vii

LIST OF TABLES PAGE Table A.1 Applying Krausz Recovering Process to the Nine Forbidden Subgraphs...... 42 viii

LIST OF FIGURES PAGE Figure 1.1 Induced subgraphs and spanning subgraphs...... 4 Figure 1.2 A graph G and a net N...... 7 Figure 2.1 Graphs and their line graphs...... 11 Figure 2.2 All connected graphs with three edges and their linegraphs...... 12 Figure 2.3 All connected graphs with four edges and their linegraphs...... 12

Figure 2.4 Example of a triangle t1t2t3 made odd by u in K5...... 16 Figure 2.5 Nine forbidden subgraphs first found by Beineke in 1968...... 18 Figure 2.6 Three forbidden subgraphs which result from Case 1...... 19 Figure 2.7 Two forbidden subgraphs which result from Case 2a...... 20 Figure 2.8 Two forbidden subgraphs which result from Case 2b...... 20 Figure 2.9 Two forbidden subgraphs which result from Case 2c...... 21 Figure 2.10 Four forbidden subgraphs which result from Case 2d...... 21 Figure 2.11 Two forbidden subgraphs which result from Case 2e...... 21 Figure 2.12 Two forbidden subgraphs which result from Case 2f...... 22 Figure 2.13 (a) Line graph L with a Krausz partition, (b) root graph G...... 23 Figure 2.14 Applying the Krausz recovering process to line graph L...... 25 Figure 2.15 All ways two triangles that share an edge can be even...... 25

Figure 2.16 Case 3: x ∈ D1 ∩ D2 ∩ C1...... 27 Figure 3.1 Examples of De Bruijn sequences of order 2, 3 and 4 with symbols 0, 1...... 31 Figure 3.2 De Bruijn graph(2, 3) with Hamiltonian circuit...... 32 Figure 3.3 De Bruijn graph(2, 2) with Eulerian circuit...... 32 Figure 3.4 De Bruijn graph(2, 4) with Hamiltonian circuit...... 33

Figure 3.5 Examples of a symmetric net N of K1,3 and its line net L(N)...... 35

Figure 3.6 Examples of a symmetric net N of C3 and its line net L(N)...... 35 ∗ Figure 3.7 Examples of a symmetric net N of C3 and its flow net N ...... 36 ∗ Figure 3.8 Examples of a symmetric net N of K1,3 and its flow net N ...... 36 Figure 3.9 Example of a connected net with a disconnected linenet...... 37 Figure 3.10 Example of two nets where N 6∼= N ′ but L(N) ∼= L(N ′)...... 37 ix

Figure 3.11 Example of a net N ∼= L(N)...... 37

Figure A.1 G1, K(G1), L(K(G1))...... 42

Figure A.2 G2, K(G2), L(K(G2))...... 43

Figure A.3 G3, K(G3), L(K(G3))...... 43

Figure A.4 G4, K(G4), L(K(G4))...... 43

Figure A.5 G5, K(G5), L(K(G5))...... 43

Figure A.6 G6, K(G6), L(K(G6))...... 44

Figure A.7 G7, K(G7), L(K(G7))...... 44

Figure A.8 G8, K(G8), L(K(G8))...... 44

Figure A.9 G9, K(G9), L(K(G9))...... 44 x

ACKNOWLEDGEMENTS I would like to thank Dr. Michael O’Sullivan for his support, feedback and for being a wonderful mentor throughout the course of my thesis work. I would like to thank Dr. Roxana Smarandache and Dr. Joseph Lewis for serving on my committee and providing insightful feedback. I would also like to thank Dr. Andrew Izs´ak, Dr. Joanne Lobato, and Dr. Susan Nickerson for providing teaching support and research opportunities in math education. A big thanks to my dear friends, fellow graduate students, nice professors and helpful staff who made my graduate school experience enjoyable and rich. My learning has been a product of my interactive environment and self-reflection. I would like to thank my awesome family Val, Pat, Kelsey, Abbey, Catherine, Glenna and Maddie, whether near or far away in Rhode Island, for their support, laughter, stories, encouragement and perspective. I am lucky to have such loving, kind and thoughtful sisters. In particular, I would like to thank: my sister Kelsey Druken for her wise words regarding academia, support and being an amazing role model; Mell Mol for her perspective, contagious happiness, surf sessions, and sharing both her dog Zona and car with me; and Natalie Selinski for her artistic and flexible interpretations of mathematics, support for teaching and mathematics education, flaps and being a great human. I would like to thank xkcd.com, PhdComics.com, Huffington Post and NPR for providing much welcomed entertainment, distraction and information. 1

CHAPTER 1 GRAPHS AND NETS

One definition of a graph is a finite nonempty set V of vertices with a set E of edges or unordered pairs of vertices, without multiple edges, loops or directed edges [1]. To make this point clear, authors will call it a “simple graph.” A graph that allows multiple edges is called a . A graph that allows multiple edges and loops is called a pseudograph, although some authors use multigraph and pseudograph interchangeably. In Chapter 1, we give the formal definitions and basic propositions of these terms. Motivated to simplify terminology, we give the definition of a net, a that allows multiple edges and loops, defined by Harary. We conclude Chapter 1 by defining adjacency matrices for graphs and defining two new ways to express nets in matrices. We study line graphs of simple graphs in Chapter 2, a graph transformation where edges are replaced by vertices with a specific way of connecting two vertices. Because not all graphs are line graphs, it is an interesting problem to decide which graphs can be line graphs. In the study of the literature, triangles, which are cycles on three vertices, forbidden graphs, which are the only subgraphs not allowed in a line graph, and Krausz partitions, which is a specific way to partition a graph, play an integral role in distinguishing which graphs can be line graphs. Thus, in Chapter 2 we carefully characterize the necessary and sufficient conditions for the main theorem of line graphs previously proved by three mathematicians. We analyze even and odd triangles, determine how the nine forbidden subgraphs were created and discuss how Krausz partitions indicate a line graph. After discussing line graphs of simple graphs, it is natural to ask what would be the parallel for the line graph of directed graphs. De Bruijn graphs, which have been around since the late 1800s, serve as one kind of motivation to study line graphs of directed graphs. Another reason to study the idea of directed line graphs resulted from the study of the sum-product algorithm for low density parity check codes [2]. Chapter 3 gives an example of such directed line graphs with De Bruijn graphs. We then create a new kind of graph transformation for nets called flow nets, which has previously not been used in the literature. The goal of Chapter 3 is to create the foundation for future work in the area of nets and flow nets. We now turn to defining terminology. In Section 1.1, we discuss definitions and terminology related to graphs. In Section 1.2 we define similar terms for nets. In Section 1.3, 2 we briefly define two matrices for graphs and give two new definitions for matrix representation of nets.

1.1 GRAPHS Due to the nature of graph theory, a few variations on the definition of a graph exist. We use the following definition of a graph provided by Harary throughout this paper [1].

Definition 1.1. A graph G is a finite nonempty set V of vertices and a set E of distinct unordered pairs of vertices called edges.

We write G =(V, E). As previously mentioned, the definition of a graph does not allow multiple edges or loops since the unordered pairs of vertices must be distinct. A graph which allows for multiple edges is called a multigraph and a graph that allows for both multiple edges and loops is called a pseudograph. Some texts distinguish this kind of graph from and pseudographs by inserting the word “simple” in front of the word graph. Thus, “simple” is yet another way to clarify a graph which does not allow for multiple edges or loops. We denote an edge u by the pair of vertices u1u2. A graph may have no edges, in this case it is called the empty graph. We denote the vertex set of a graph G as V (G) and the edge set as E(G). Many mathematicians define a graph in the same way but recognize that different words might be used. Behzad and Chartrand [3] define a graph as the following, “A graph G (sometimes called an ordinary graph) is a finite, non-empty set V together with a (possibly empty) set E (disjoint from V ) of two-element subsets of (distinct) elements of V .” They continue on by saying, It should be noted at the outset that the terms introduced here are not used universally. For example, point and node are often synonyms for vertex, and line is sometimes used instead of edge. Indeed, the reader of an article on graph theory might do well to check the author’s interpretation of the word “graph” itself [3].

Note that their definition of graph is distinct from a multigraph as well as a pseudograph. Beineke and Wilson define a graph as, “a pair (V (G), E(G)), where V (G) is a finite non-empty set of elements called vertices, and E(G) is a finite set of distinct unordered pairs of distinct elements of V (G) called edges” [4]. Harary notes in a footnote following his definition the following list of synonyms used in literature, not necessarily in the stated pairs: point & line, vertex & edge, node & arc, junction & branch, 0-simplex & 1-simplex, element & element [1]. The term “adjacent” can be used to describe a pair of vertices, or a pair of edges. Two edges in a graph are said to be adjacent if they share a common vertex. Two vertices are said to be adjacent if there is an edge which connects them. When describing an edge and a vertex, 3 we use the term “incident.” A vertex is incident with an edge if the vertex is one of the two vertices which make up the edge. The degree of a vertex is the number of edges incident to the vertex. The size of a graph is the number of edges, denoted |E(G)|. The order of a graph is the number of vertices, denoted by |V (G)|.

Definition 1.2. A subgraph H of a graph G is a graph where V (H) ⊆ V (G) and E(H) ⊆ E(G).

We denote a subgraph H of G as H ≤ G. Note that the graph G − u, u = u1u2, is the graph obtained by deleting the edge u from G while maintaining the same vertex set. In other words, G =(V, E −{u}). The graph G − u1 is the graph obtained by deleting the vertex u1 as well as any edge incident to vertex u1. In other words, G =(V −{u1}, E −{u1u|u adjacent to u1)}.

Definition 1.3. A spanning subgraph H of a graph G is a subgraph of G where V (H)= V (G) and E(H) ⊆ E(G).

Let H ≤ G. We say that H =(S, E(S)) is induced by a vertex set S if H is the graph created from selecting all edges between vertices of S that are in G. More formally, we have the following definition.

Definition 1.4. An H of G is a subgraph such that if u1 and u2 are in V (H) and u1u2 ∈ E(G), then u1u2 ∈ E(H).

We write H E G to indicate that H is an induced subgraph of G. Many terms exists for different types of walks which can be performed on a graph. A walk of length r is alternating sequence of vertices and edges v0e1v1e2 ...envr of r edges and r +1 vertices in which every vertex has degree two except for the beginning and ending vertex. The walk is closed if v0 = vr and open otherwise. The walk is a trail if all edges are distinct. The walk is a if all vertices as well as edges are distinct. We denote a on n vertices as Pn. Notice that a path Pn has n − 1 edges, although some authors define a path by the number of edges in the path rather than vertices. A walk or trail is closed if v0 = vr. A is a closed path in which all vertices are distinct. We denote a on n vertices that has n edges (and n vertices) by Cn.

A on n vertices denoted by Kn is a graph with n vertices where every n pair of vertices are adjacent, thus Kn has 2 edges. A is a graph whose vertex set V can be partitioned into two disjoint subsets V1,V2 such that every edge connects a vertex of V1 to a vertex of V2. That is, each edge must have an end point from each of the vertex sets.

If there is an edge from every vertex in V1 to every vertex in V2, then we call the bipartite 4

graph complete and denote it by Kn,m, where n signifies the number of vertices in V1 and m signifies the number of vertices of V2. A special cases of bipartite graphs is when one of the vertex sets is the singleton set, K1,n for n ∈ N. These graphs are sometimes called stars. A on n vertices denoted by Wn is a cycle of length n − 1 along with an additional vertex v, called the hub, which is connected to all vertices of the cycle. Thus there are n vertices and 2(n − 1) edges.

One example of an induced subgraph of K4 is C3 obtained by selecting three vertices u,v,w and all edges between those vertices. Note that C4 is not an induced subgraph of K4 since all edges between the four vertices must be included. Figure 1.1 demonstrates examples of a subgraph, spanning subgraph and an induced subgraph.

• • •

• • • • •

• • • (a) K4 (b) C3 (c) C4 Figure 1.1. Graph (b) is both a subgraph and induced subgraph of (a), while (c) is a spanning subgraph but not an induced subgraph of (a).

Definition 1.5. An is a graph G formed from a family of sets

Si, i =0, 1, 2,... by creating one vertex vi for each set Si and joining two vertices vi and vj whenever the two corresponding sets Si and Sj have non-empty intersection. The edge set can be represented as E(G)= {(vi, vj)|Si ∩ Sj =6 ∅}.

The intersection graph results from the intersection of a family of sets. Note that every graph can be viewed as an intersection graph by letting Si equal all edges incident to a vertex vi of G. Then two vertices of the intersection graph will be connected if there is an edge between the two vertices in the graph G. The concept of an intersection graph will appear in Chapter 2 where the family of sets are edges, where two sets are connected if two edges share a vertex.

Definition 1.6. Two graphs are isomorphic if there is a correspondence between their vertex sets that preserves adjacency and non-adjacency. In other words, G and G′ are isomorphic if there is a bijection φ : V (G) 7→ V (G′) such that xy ∈ E ⇐⇒ φ(x)φ(y) ∈ E′.

Definition 1.7. A graph G is called connected if there exists a path between any two vertices x, y ∈ V (G). 5 Definition 1.8. A triangle T of a graph G is a cycle on three vertices.

Definition 1.9. A triangle of a graph is called odd if there exists a vertex of G that is adjacent with an odd number of vertices of the triangle. A triangle of a graph is called even otherwise; that is, if every vertex of G is adjacent with an even number of vertices of the triangle.

Definition 1.10. A maximal complete subgraph of a graph G is a complete subgraph which is not properly contained in any other complete subgraph of G.

We include the following definition of a , which is the same as a maximal complete subgraph, since both are used in the literature.

Definition 1.11. A clique of a graph G is a maximal complete subgraph of G.

Definition 1.12. The complement of a graph G is the graph Gc with the vertex set of G and edge set {uv ∈ E(Gc)|uv 6∈ E(G)}.

1.2 NETS In order to account for graphs, multigraphs, pseudographs and directed graphs in one definition without using a term like directed-multi-pseudo-graphs, we work with a very general class of directed graphs called nets. In this section, we define the term “net” used by graph theorists such as Harary, Norman and Cartwright in [5]. Before we define a net, we define a directed graph. −→ Definition 1.13. A directed graph G(sometimes called a digraph) is a finite non-empty set V of vertices with a set E of distinct ordered pairs of vertices called edges.

The definition of a directed graph does not include multiple edges or loops [1]. Notice that the order of vertices listed in an edge matters, unlike for a graph. We denote a directed −−→ edge by the ordered pair of vertices u1u2. We now define the broader term called a net.

Definition 1.14. A net N is defined as having two sets, the set of vertices V (N) and directed edges E(N), along with the two functions σ : E(N) → V (N), τ : E(N) → V (N) which denote the starting and terminating vertices, respectively, for a directed edge e ∈ E(N)

Notice that both multiple edges and loops are allowed in a net. Since a net is a directed −−→ −−→ graph, edge vivj is different from edge vjvi.

Definition 1.15. A symmetric net is a net N with an involution − : E(N) → E(N) defined as e 7→ e with e =6 e, e = e. 6

Conjugate edges are a pair of edges e, e with the property that σ(e)= τ(e),

σ(e)= τ(ei) and e = e. A symmetric net can be obtained from a graph by treating each undirected edge as two directed conjugate edges. We denote this process as N (G). Conversely, the underlying undirected graph of a symmetric net can be found by treating each pair of directed conjugate edges as a single undirected edge.

Definition 1.16. The net N (G) of a graph G is the net with vertex set the same as the vertex set of G and edge set created by treating each undirected edge u1u2 ∈ G as two directed edges, one from u1 to u2 and the other from u2 to u1.

Conversely, each can be thought of as a graph with the same vertex set by treating each pair of opposing edges as one undirected edge. The following definitions of subnets and spanning subnets are similar to those for graphs.

Definition 1.17. A subnet M of a net N is a net such that every vertex of M is a vertex of N, and every edge of M is an edge of N. In other words, V (M) ⊆ V (N) and E(M) ⊆ E(N).

Definition 1.18. A spanning subnet M of N is a subnet with the property that V (M)= V (N) and E(M) ⊆ E(N).

As in the case of a directed graph, one has to specify the definition of “adjacent.” We define edge u to be adjacent to edge v if τ(u)= σ(v). Note that u adjacent to v does not imply v is adjacent to u. This adjacency is known as a “head to tail” adjacency, first introduced by Harary and Norman [6]. Other kinds of adjacencies include “head to head” or “tail to tail.” Similarly, edge incidence needs to be specified. We define an edge u to be incident with a vertex x if τ(u)= x or σ(u)= x. The degree in and degree out for a vertex are intuitive: the number of edges going “in” towards a vertex and the number of edges going “out” from a vertex. More formally, we have the degree in of a vertex v, denoted as degin(v), is the number of edges such that τ(e)= v.

Similarly, degree out of a vertex v, denoted as degout(v), is the number of edges such that σ(e)= v. Connectedness takes on a few different meanings with nets. A path for a net is alternating sequence of distinct vertices and edges v0, e1, v1, ··· , en, vn. Anetis strongly connected if for every pair of vertices u, v there exists a path from u to v and a path from v to u. Anetis unilaterally connected if for every pair of vertices u, v there exists a path from u to v or a path from v to u. A net is strictly unilateral if it is unilateral but not strong.

Definition 1.19. Two nets are isomorphic if there is a correspondence between their vertex sets that preserves adjacency. In other words, N and N ′ are isomorphic if there is a bijection φ : N 7→ N ′ such that uv ∈ E(N) ⇐⇒ φ(x)φ(y) ∈ E(N ′). 7 Similar to the definitions for graphs, the order of a net N is the number of vertices of N. The size of a net N is the number of edges of N.

1.3 MATRIX REPRESENTATION A natural representation that follows after studying both graphs and nets is their matrix representation. Expressing a graph or net in matrix form allows for flexibility and the application of many results of matrix theory to graph theory. We define different ways to represent a graph and net in matrix form.

Definition 1.20. An A = A(G) of a graph G on v = {1,...,n} vertices is an n × n matrix whose (i, j) entry is defined as following

1 if{i, j} ∈ E ai,j =  0 else Since graphs are not directed, adjacency matrices are symmetric. Similarly, since loops are not permitted in the definition of a graph, each diagonal element is 0. This implies that the trace of matrix A, or the sum of the elements on the diagonal, is 0. When we refer to matrix properties of a graph G, it is implied that we are referring to the matrix properties of the adjacency matrix of the graph G, or A(G). For example, the adjacency matrix A for graph G in Figure 1.2a is 0 1 0 1  1 0 1 1  A =    0 1 0 1     1 1 1 0   

e2 e2 •v2 •v3 •v2 •v3

e1 e1 e3 e5 e3 e5

•v1 •v4 •v1 •v4 e4 e4 (a) Graph G (b) Net N Figure 1.2. A graph G and a net N.

Definition 1.21. An R = R(G) of a graph G on v = {1,...,n} vertices and |E| = m edges is an n × m matrix whose (i, j) entry is defined as following

1 if edge j is incident to vertex i ri,j =  0 else  8 Note that sometimes the word unoriented is placed in front of incidence to indicate that it is the incidence matrix of unoriented graph versus an oriented graph. The incidence matrix R for graph G of Figure 1.2a is

10010  11100  R =    01001     00111    The incidence matrix has the vertices of G as rows and the edges of G as columns.

Each column ei has two entries since each edge is incident to two vertices. Each row vi sums to the degree of the vertex vi. The matrix R might not be square, symmetric nor have trace equal to zero. We define the following incidence matrix for directed graphs.

Definition 1.22. An oriented incidence matrix C = C(G) of a directed graph, G on v = {1,...,n} vertices and |E| = m is an n × m matrix whose (i, j) entry is defined as following +1 if edge j issues from vertex i  ci,j = −1 if edge j terminates into vertex i  0 else  The oriented matrix Cfor net N of Figure 1.2b is

-1 0 0 1 0  11100  C =    0 -1 0 0 1     0 0 -1 -1 -1    Now we define some matrix representations for nets. We can not use an adjacency matrix to represent a net. For example, we would not be able to indicate more than one loop at a vertex. Hence, we seek a better way to represent a net by a matrix. For our purposes, we define the following “origin” and “terminating” adjacency matrices.

Definition 1.23. An origin matrix M σ = M σ of a net N on V = {1,...,n} vertices and E = {1,...,m} edges is a n × m matrix whose (v, e) entry is defined as following

σ 1 when σ(e)= v (M )(v,e) =  0 else This matrix tells from which vertex each edge originates. For this reason, we call matrix M σ the origin matrix. Similarly, we have the following adjacency matrix which tells at which vertex each edge terminates. 9

Definition 1.24. A terminating matrix M τ = M τ of a net N on V = {1,...,n} vertices and E = {1,...,m} edges is an n × m matrix whose (v, e) entry is defined as the following

τ 1 when τ(e)= v (M )(v,e) =  0 else  The M σ and M τ matrices for net N in Figure 1.2b are the following:

00010 10000  11100   00000  M σ(N)= M τ (N)=      00001   01000       00000   00111      There are a few properties of the M σ, M τ matrices worth mentioning. First, we have that ((M τ )(M σ)T )= A where the superscript T denotes the transpose of a matrix. Also, (M σ) − (M τ )= C, the oriented incidence matrix. 10

CHAPTER 2 LINE GRAPHS

We now transition to a specific area of graph theory called line graphs. The goal of Chapter 2 is to determine the criteria needed to decide when a given graph L is the line graph of some graph G, i.e., when L is a graph such that L(G)= L. By doing so, we will decompose one of the main theorems of line graphs proved in part by J. Krausz, A.C.M. van Rooij, H.S. Wilf, L. Beineke and F. Harary [1][4]. Chapter 2 begins by discussing basic properties of line graphs. Section 2.1 gives results regarding subgraphs and triangles related to the line graph. Section 2.2 turns to the subject of the nine forbidden graphs and their relationship to odd triangles relate to line graphs. Section 2.3 describes how Krausz partitions relate to line graphs and gives a way to recover the original graph from its line graph. Lastly, Section 2.4 proves the main theorem of line graphs by bringing together theorems and lemmas from previous sections. Although in 1932 and J. Krausz in 1943 were the first to study the concepts of line graphs, the name was coined in 1960 by Harary and Norman who used the word “line” instead of “edge” [4][7]. Today they could have been called “edge graphs.” Hemminger and Beineke discuss other names of line graphs to indicate adjacencies of edges in a graph [4]. Some of these names include “edge-to-vertex dual ” by Seshu and Reed, “covering graph” by Kasteleyn and Fisher, “interchange graph” by Ore, “adjoint graph” by Menon, “derived graph” by Beineke, a graduate student of Harary, and “derivative” by Sabidussi. We start the discussion of line graphs by providing definitions along with proving some basic propositions about line graphs.

Definition 2.1. A line graph L(G) of a graph G is a graph with the edges of G as the vertex set of L(G) along with the edge set that has the property that two vertices u, v ∈ V (L(G)) are adjacent whenever their corresponding edges u1u2, v1v2 ∈ E(G) are adjacent in G.

Figure 2.1 gives some examples of line graphs of graphs. We shall use the letter L to suggest a graph that may be a line graph, and H,G for graphs in general. If L(G)= L is true, we can then state that L is the line graph of G. The original graph G is sometimes referred to as the “root” graph. One can think of a line graph L of a graph G as a graph that describes edge adjacencies of G in terms of the edges of L, without referring to the vertex set of G. Another 11

•c • b a • • c b • • • e a c d a b • • • • d (a) G1 (b) G2 (c) G3

•c •b

•c •a •b •a •e •c

•a •b •d •d

(d) L(G1) (e) L(G2) (f) L(G3) Figure 2.1. Graphs and their line graphs.

way to think about a line graph is as an intersection graph. The family of sets Si are edges of

G written as {vi, vj}, vi, vj ∈ V (G). The intersection graph is made by creating a vertex for

each set Si and connecting two vertices vi, vj when their corresponding sets Si,Sj have non-empty intersection. This means the two edges corresponding to the two sets are adjacent in G. The line graph of a graph with no edges is the empty graph. We shall denote L(L(G)) as L2(G) and in general shall write the iterated line graph as Ln(G)= L(Ln−1(G)). As with any class of graphs, it is desirable to have a closed form which gives the number of edges and vertices in the line graph. We have the following formula for counting edges and vertices of a line graph with respect to its root graph [1].

Lemma 2.2. If G is a graph with |V (G)| = p and |E(G)| = q, then the number of vertices in 1 n 2 L(G) is q and the number of edges of L(G) is 2 i=1 di − q, where di signifies the degree of vertex vi. P

Proof. By the definition of a line graph, L(G) has q vertices. Note that each vertex vi ∈ V (G) di adds 2 edges to L(G). Thus we have that the number of edges in L(G) is  p n n n n di 1 1 2 1 1 2 = di(di − 1) = d − di = d − q  2  2 2 i 2 2 i Xi=1 Xi=1 Xi=1 Xi=1 Xi=1

Figures 2.2 and 2.3 name all possible connected graphs with three edges and four edges along with their line graphs for reference. Note that we use the + sign to signify the combining of the edges from two graphs to make one graph. Similarly, we use the − sign to 12 •

• • • •

• • • • •

(a) P4 (b) K1,3 (c) C3 •

• • •

• • • • •

(d) L(P4) (e) L(K1,3) (f) L(C3) Figure 2.2. All connected graphs with three edges and their line graphs.

• • • •

• • • • • • • • • • •

• • • • • • •

(a) P5 (b) K1,3 + K2 (c) K1,4 (d) C4 (e) C3 + K2 • • •

• • • • • • • • •

• • • • • • • •

(f) L(P5) (g) L(K1,3 + K2) (h) L(K1,4) (i) L(C4) (j) L(C3 + K2) Figure 2.3. All connected graphs with four edges and their line graphs. signify either taking away an edge from a graph or a vertex with all incident edges. We will refer to the figures later. We have the following proposition regarding connectivity of line graphs which is useful when determining what class of graphs have L as a line graph. We will refer to this 13

proposition later on to show that K1,3, also called the claw, can not be a line graph of any graph G.

Proposition 2.3. Let G be a graph and L(G) its line graph. Then the following statements are true:

(i) Isolated vertices of G disappear in the line graph L(G)

(ii) If graph G is connected, then the line graph L(G) is connected.

(iii) If G has no isolated vertices, connected components of G give connected components in L(G).

(iv) If G has no isolated vertices, then L(G) connected implies G connected.

Proof. (i) By definition we have that isolated vertices of G are not in L(G).

(ii) Assume G is connected. Let u = u1u2, v = v1v2 be two vertices of L(G) that are also edges of G denoted by their end vertices of G. Since G is connected, there exists edges ai = ai1ai2 of G such that u1u2a11a12 ··· an1an2v1v2 is a path in G. Then by definition of a line graph, vertices u and a1 are incident, vertices a1, a2 are incident, . . ., and vertices an, v are incident in L(G). Thus there exists a path from vertex u to vertex v in L(G) denoted by the vertices ua1a2 ··· anv. Since this holds for any two vertices of L(G), then L(G) is connected. (iii) Apply proof of (2) to each connected component of G. Since no two connected components have adjacent edges in G, no edge of one connected component shares a vertex with another connected component in L(G).

(iv) Assume that L(G) is connected. Let u1, v2 be two vertices of G. Since G has no isolated vertices, then there exists edges u, v ∈ G such that u = u1u2, v = v1v2. Since L(G) is connected, there exists a path ua1a2 ··· anv in L(G) where each ai is a vertex that originated from the edge ai1ai2 ∈ G with u2 = a11, ai2 = ai+11, v1 = an2. If we rewrite the path in L(G) as the path in G of consecutive vertices, we obtain the path u1a11a21a31 ··· an1v1v2. Thus there is a path from vertex u1 to vertex v2. Since this holds for any two vertices of G, then G is connected.

The line graphs of paths and cycles are relatively simple to obtain. Line graphs of

paths become shorter by one edge after finding its line graph, i.e. L(Pn)= Pn−1 for all n ≥ 1.

Line graphs of cycles remain cycles, i.e. L(Cn)= Cn for all n ≥ 3.

The following proposition gives the line graph of complete graphs of the form K1,n.

Proposition 2.4. Let G be a graph. Then the following statements hold:

(i) The line graph of K1,n is the complete graph Kn, for n ≥ 1. 14 ∼ ∼ (ii) If G is connected and n ≥ 2, n =36 , then L(G) = Kn if and only if G = K1,n.

Proof. (i) Since each edge in G is adjacent to all other edges of G, then each vertex in the line

graph will be adjacent to all other vertices in the line graph. Hence the line graph of K1,n is

the complete graph Kn.

(ii) Let G be connected and n =2. Then we have that L(K1,2) ≡ K1. Conversely, the ∼ root graph G for line graph K2 must have two edges that are adjacent, hence G = P2. For

n =3, notice that both C3 and K1,3 have line graphs isomorphic to K3, where C3 is not of the

form K1,3. Finally, n ≥ 4 and assume L(G) ≡ Kn. By definition of a line graph, this happens

if and only if each edge ei in the root graph G is incident to all other edges of G. Note that since there are n vertices of L(G), then there are n edges of G. Each of the n edges of G is

incident to all other edges of the connected graph G if and only if G is isomorphic to K1,n since n ≥ 4.

It is interesting to note, however, that if multiple edges were allowed in the definition of a graph, then the graph on two vertices with n edges between them would also have the

graph Kn as its line graph. Another basic observation about line graphs involves noting the size of a graph after iterating the line graph. Note that iterations of the line graph of paths will approach the empty graph, and iterations of cycles remain as cycles. We have the following result [4].

Lemma 2.5. Let G be a connected graph which is not isomorphic to K1,3 or apathor a n cycle, and let pn denote the number of edges in L (G). Then limn→∞ pn = ∞.

In other words, the line graph of a connected graph G contains more edges than G for

G not a path, cycle, or claw. Note that we exclude K1,3 graphs since it has the same line graph as a cycle on three vertices. The proof of this theorem by van Rooij and Wilf [8], which we omit, uses the fact that if G is connected and not a path, cycle or a claw, then L3(G) contains two cycles with at most one vertex in common. The proof also uses the fact that if a graph has two cycles connected by a path of length k ≥ 0 then its line graph has two cycles connected by a path of length k +1 [4].

Notice that Kn is a . We say that a graph G is regular when all vertices have the same degree. A regular line graph L(G) occurs if each edge of a graph G is incident

to the same number of edges. If G is regular or of the form K1,n, then L(G) is regular.

We now have Proposition 2.6 which proves why the claw K1,3 is not a line graph.

Proposition 2.6. K1,3 is not a line graph.

Proof. By contradiction. Assume K1,3 is a line graph, that is, K1,3 = L(G) for some graph G. Then G must have four edges since L(G) has four vertices. We can assume G to have no 15 isolated vertices, otherwise we would take the connected component of G with four edges. Then G is connected since L(G) is connected. Then Figure 2.3 shows all possible connected

graphs with four edges. But none of the graphs have K1,3 as its line graph. Thus, K1,3 is not a line graph.

An alternate proof would be the following. If K1,3 were a line graph of a graph G,

then since one vertex of K1,3 is adjacent to three other vertices, this implies that there exists an edge of G incident to three edges with none of the three edges themselves incident to each

other. This is impossible, thus we can conclude that K1,3 is not a line graph. We can generalize this example to say that any graph G that has a claw as an induced subgraph is not a line graph. Proposition 2.7, which follows from Figure 2.3, gives the unique root graph by exhaustion.

Proposition 2.7. The root graph for the line graph K3 + K2 is the connected K1,3 + K2.

2.1 TRIANGLES Triangles play an important role in line graphs in part because there is not a unique root graph for a triangle. In this section, we state and prove some preliminary results and properties about subgraphs and triangles with respect to line graphs. We conclude the section

with a lemma stating that if L is a line graph, then L does not have K1,3 as an induced

subgraph and any induced subgraph isomorphic to K4 − K2 has one of its triangles even. The following two lemmas discuss properties of subgraphs and induced subgraphs of line graphs.

Lemma 2.8. Let G be a graph. If H ≤ G, then L(H) ≤L(G).

Proof. Assume H ≤ G. Notice that the vertex set for L(H) is contained in the vertex set of

L(G) since all edges of H belong to G as well. Notice that if u1u2, v1v2 ∈ E(H) are adjacent edges in H, making u, v ∈ V (L(H)) adjacent vertices in L(H), we have that

u1u2, v1v2 ∈ E(G) and u, v ∈ V (L(G)) will also be adjacent in L(G). Thus, the edge set for L(H) is contained in the edge set for L(G) preserving adjacencies. Thus, L(H) ≤L(G).

Lemma 2.9. Let L′ E L where L = L(G). Then there exists G′ ≤ G such that L(G′)= L′.

Proof. Since L is a line graph, let G be the graph such that L(G)= L. First, we identify the vertices of G′ in terms of L and L′, then show that L(G′)= L′ which will yield the desired result. Let V (L′) be the set of vertices of L′. Since L′ ≤ L, we have V (L′) ⊆ V (L)= E(G). Define G′ as the graph which consists of the edges that correspond to V (L′). Notice that 16

G′ ≤ G. By Lemma 2.8, we have that L(G′) ≤L(G). To show that L(G′)= L′, note that L(G′) and L′ have the same vertex set by way of construction. Vertices of L(G′) are adjacent whenever the corresponding edges are adjacent in G′. Since L′ is an induced subgraph of L, L(G′) contains all edges between the vertex set of L(G′). Thus, L(G′)= L′.

We say that a graph G has a triangle if C3 ≤ G. Notice that a triangle in a line graph results from both claws and triangles since L(C3)= L(K1,3)= C3. A triangle of a graph is called odd if there exists a vertex of a graph G that is adjacent to an odd number of vertices of the triangle. A triangle of a graph is called even otherwise; that is, if every vertex of G is adjacent with an even number of vertices of the triangle. Every triangle contained in a larger complete subgraph Kn of G is odd for n ≥ 4. Note that any vertex u not a vertex of the triangle can be selected as the vertex which makes the triangle odd since u will be adjacent to all three vertices of the triangle. See Figure 2.4 for an example of an odd triangle in the

complete graph K5.

t3 • •

t2 • •u

t1 • Figure 2.4. Example of a triangle t1t2t3 made odd by vertex u in K5.

An interesting and perhaps useful task is to determine the number of triangles in L(G) in terms of some characteristics of G. Note that there are two instances when a triangle is contained in a line graph. A triangle results in the line graph when there is a triangle in G. A triangle also results in the line graph when there are three edges incident to the same vertex in

G, otherwise known as a claw K1,3. There is no other way to create a triangle in the line graph. Hence we can count the number of triangles in the line graph of G by counting the

number of triangles of G and adding it to the number of K1,3 or claws in G. Thus,

|△∈L(G)| = |△ ∈ G| + |K1,3 ∈ G|. We now state and prove a few lemmas regarding triangles and line graphs.

Lemma 2.10. If T is a triangle in a graph G, then its corresponding triangle L(T ) in L(G) is even.

Proof. Assume T to be a triangle in the graph G and let L(T ) denote the line graph of T in

L(G). We have L(T ) ≤L(G) by Lemma 2.8. If there exists an edge e1e2 ∈ E(G) that is incident to a vertex of T , then the corresponding vertex e ∈ V (L(G)) will be adjacent to two 17

vertices of the corresponding triangle L(T ). In other words, an edge in G can not be incident to one or three edges of T . Thus, there does not exist a vertex v ∈L(G) that is adjacent to one or three vertices of L(T ). Hence L(T ) is an even triangle.

We see that it is impossible for one edge of G to be adjacent to either one edge of the triangle or all three edges of the triangle by nature of a triangle. One might ask then if there is a way to obtain an odd triangle in a line graph. The answer is yes. But as seen from above, it does not result from a triangle. Odd triangles in a line graph result from claws.

Lemma 2.11. If a claw K1,3 is a proper induced subgraph in a graph G, then the vertices in L(G) corresponding to the edges of the claw form an odd triangle T .

Proof. Let K1,3 E G and define T = L(K1,3). We discuss two ways an edge in G can be adjacent to the induced claw. An edge u ∈ E(G) could be adjacent to exactly one edge of the claw. Triangle T would be made odd by vertex u ∈ V (L(G)). The second way an edge u could be adjacent to the induced claw is if it is adjacent to all three edges, forming a K1,4 in G. Then vertex u would be adjacent to all three vertices of the triangle T . Since these are the only two ways an edge can be adjacent to the induced subgraph K1,3, we have that T is odd.

Notice that Lemma 2.11 does not hold for those claws which are not induced. Take the

graph K3 + K2. It has a claw as a subgraph but not as an induced subgraph. Since the line graph of K3 + K2 is K4 − K2, we see that the triangle corresponding to the claw is even.

Lemma 2.12. If a triangle T in a line graph L(G) is odd, then its corresponding edges in G

form a claw K1,3.

Proof. Assume T to be an odd triangle in the line graph L(G). By Lemma 2.9, T = L(H) for some H ≤ G. There are two ways to arrive at a triangle in a line graph: from a claw or

triangle. By Lemma 2.11, we have H must be K1,3.

We have the following theorem about line graphs with claws and two odd triangles that share an edge.

Theorem 2.13. If L(G) is a line graph, then L(G) does not have K1,3 as an induced subgraph and any subgraph of L(G) induced by the four vertices of two odd triangles that

share an edge is K4.

Proof. Let G be the root graph of L(G). By Proposition 2.6, we have that a claw is not an induced subgraph. Assume that L(G) has two odd triangles. By Lemma 2.12, we know that the corresponding edges of each triangle form a claw in G. Thus we have two claws in the root graph G. Since each of the two triangles share two vertices in L(G), this implies that each of 18 the two claws share two of the same edges. But the only way this could happen is if the root graph is of the form K1,4. By Proposition 2.4, we have that the line graph of K1,4 is K4.

Another equivalent way to state Theorem 2.13 is the following: “If L(G) is a line graph, then L(G) does not have K1,3 as an induced subgraph, and any induced subgraph isomorphic to K4 − K2 has one of its triangles even.”

2.2 FORBIDDEN SUBGRAPHS It is well known that a graph is a line graph if and only if none of the nine forbidden subgraphs is an induced subgraph of the graph [1]. The nine forbidden subgraphs in Figure 2.5 can be used to distinguish whether or not a graph is a line graph. First found by Beineke in 1968 and also in Robertson’s unpublished works, the graphs represent all the ways two triangles △abc and △abd that share an edge can both be odd [3]. In this section to prepare the necessary and sufficient conditions between line graphs and forbidden subgraphs, we show that L has K1,3 as an induced subgraph or any induced subgraph isomorphic to K4 − K2 has both triangles odd if and only if one of the nine forbidden subgraphs is an induced subgraph of L.

•c •c •c

•a •a •b •v •a •b •v

•d •b •d •d

(a) G1 (b) G2 (c) G3 •c •c

•c •u •u •u •a •b •a •b •a •b •v

•v •d •v •d •d

(d) G4 (e) G5 (f) G6

•c •u •c •u •c •u

•a •b •a •b •a •b

•d •v •v •d •d •v

(g) G7 (h) G8 (i) G9 Figure 2.5. Nine forbidden subgraphs first found by Beineke in 1968. 19 We begin the discussion of forbidden subgraphs by proving the following corollary which follows from Theorem 2.13.

Corollary 2.14. If a graph G has one of the nine forbidden subgraphs as an induced subgraph, then G is not a line graph.

Proof. By Theorem 2.13, G1 is not a line graph. Since the remaining eight forbidden subgraphs G2,...,G9 have two odd triangles that share an edge, we have by Theorem 2.13 that the subgraphs are not line graphs. Therefore, none of the graphs in Figure 2.5 are line graphs and any graph with an induced subgraph isomorphic to them is not a line graph.

The next theorem details how to arrive at each of the nine forbidden subgraphs [1]. This is one of the most technical of all proofs regarding forbidden subgraphs and line graphs.

Theorem 2.15. G has one of the nine graphs of Figure 2.5 as an induced subgraph if and only if G has an induced subgraph isomorphic to K1,3 or to K4 − K2 with both triangles odd.

Proof. Assume G has one of the nine graphs of Figure 2.5 as an induced subgraph. Clearly, G either has as an induced subgraph the claw K1,3 or K4 − K2 with both triangles odd.

Conversely, assume G has an induced subgraph isomorphic to K4 − K2 with both triangles odd. We will show that G has one of the nine forbidden subgraphs as an induced subgraph. Let G have odd triangles △abc and △abd with c and d not adjacent. There are two possible ways the two triangles could be odd: either one vertex could make both odd, or two different vertices could make both odd. We examine each of these two cases. Case (1): There is one vertex v adjacent to an odd number of vertices of △abc and of △abd. Figure 2.6 demonstrates the ways in which v can be adjacent to an odd number of vertices of both. Either v is adjacent to exactly one vertex of each of these triangles or it is adjacent to more than one vertex of one of them. If v is adjacent to just one vertex of each triangle, either v is adjacent only either to a or b, giving G1 or to both c an d, giving G2. If v is adjacent to more than one vertex of each triangle, v must be adjacent to all four vertices of the two triangles, giving G3 as an induced subgraph of G.

•c •c •c

•a •b •v •a •b •v •a •b •v

•d •d •d

(a) G1 induced by {b,c,d,v} (b) G2 (c) G3 Figure 2.6. Three forbidden subgraphs which result from Case 1. 20 Case (2): There is no one vertex adjacent to an odd number of vertices of both triangles. Let u be adjacent to an odd number of vertices of △abc and let v be adjacent to an odd number of vertices of △abd. For ease, we denote vertex u adjacent to x vertices of △abc and y vertices of △abd, and vertex v adjacent to x′ vertices of △abd and y′ vertices of △abc by the pairs (x, y)(x′,y′). We consider the following cases: (a) (1, 0)(1, 0): Let u be adjacent to 1 vertex of △abc and 0 vertices of △abd, and v be

adjacent to 1 vertex of △abd and 0 vertices of △abc. If edge uv ∈ G, the graph G7 is induced,

and if uv 6∈ G, the graph G4 is induced. See Figure 2.7. (Note that we do not consider any cases where u is adjacent to one vertex which lies in both triangles since this reduces back to Case 1 of the proof.)

•c •u •c •u

•a •b •a •b

•v •d •d •v

(a) G4 (b) G7 Figure 2.7. Two forbidden subgraphs which result from Case 2a.

(b) (1, 0)(1, 2): If uv ∈ G, then G8 is induced, while if uv 6∈ G, then vertices

{a,c,u,v} induce G1. See Figure 2.8.

•c •u •c •u

•a •b •v •a •b •v

•d •d

(a) G8 induced (b) G1 induced by vertices {a,c,u,v} Figure 2.8. Two forbidden subgraphs which result from Case 2b.

(c) (1, 0)(3, 2): If uv ∈ G, then we have G2 induced by vertices {a, b, d, u, v}. If

uv 6∈ G, then we have G5 induced. See Figure 2.9. (d) (1, 2)(1, 2): We consider two possibilities. Let u and v be incident to different

vertices. If uv ∈ G then G2 is induced by vertices {a, b, c, u, v}, while if uv 6∈ G, then G8 is an induced subgraph. Now let u and v be incident to the same vertex. If uv ∈ G, then G9 is an induced subgraph. If uv 6∈ G, then G1 is induced by vertices {a, b, u, v}. See Figure 2.10. 21

•c •c •u •u •a •b •a •b

•d •v •d •v

(a) G2 induced by vertices (b) G5 {a,b,d,u,v} Figure 2.9. Two forbidden subgraphs which result from Case 2c.

•c •c •c •c

•v •a •b •u •v •a •b •u •a •b •v •a •b •v

•d •d •d •u •d •u

(a) G2 induced by vertices (b) G8 (c) G9 (d) G1 induced by vertices {a,b,c,u,v} {a,b,u,v} Figure 2.10. Four forbidden subgraphs which result from Case 2d.

(e) (1, 2)(3, 2): If uv ∈ G, then G3 is induced by vertices {a, b, c, u, v}. If uv 6∈ G, then G1 is induced by vertices {b,d,u,v}. See Figure 2.11.

•c •c •u •u •a •b •a •b

•d •v •d •v

(a) G3 induced by vertices (b) G1 induced by vertices {a,b,c,u,v} {b,d,u,v} Figure 2.11. Two forbidden subgraphs which result from Case 2e.

(f) (3, 2)(3, 2): If uv ∈ G, then G3 is induced. If uv 6∈ G, then we have G6 induced. See Figure 2.12.

This then proves the statement if L does not have one of the nine forbidden subgraphs as an induced subgraph, then L does not have K1,3 as an induced subgraph, and if two odd triangles have a common edge then the subgraph induced by their vertices is K4. 22

•c •c

•u •u

•a •b •a •b •v •v

•d •d

(a) G3 induced (b) G6 by vertices {a,b,c,u,v} Figure 2.12. Two forbidden subgraphs which result from Case 2f.

We now turn our attention to Krausz partitions. We will show that if L does not have

K1,3 as an induced subgraph and any induced subgraph isomorphic to K4 − K2 has one of its triangles even, then L is indeed a line graph.

2.3 KRAUSZ PARTITIONS AND RECONSTRUCTING THE ROOT GRAPH One way to think about line graphs of a graph G is through the use of complete subgraphs induced by stars of G. In this section, we define a Krausz partition and how to reconstruct the root graph G of a line graph L using Krausz partitions. As a result, we prove that a graph is a line graph if and only if it has a Krausz partition. With the aid of Krausz partitions, we show that if a graph L does not have K1,3 as an induced subgraph and any induced subgraph isomorphic to K4 − K2 with at least one of its triangles even, then L is a line graph. We begin by defining a Krausz partition.

Definition 2.16. A collection K of subgraphs of a graph G is a Krausz partition if it has the following three properties:

(i) Each member of K is a complete graph;

(ii) Every edge of G is in exactly one member of K;

(iii) Every vertex of G is in exactly two members of K.

See the first graph of Figure 2.13 for an example of a Krausz partition. We have the following two propositions regarding Krausz partitions and line graphs.

Proposition 2.17. If a graph L is a line graph, then L has a Krausz partition. 23

•v3 •v5

•v4 •v6

•v2 •v1

(a) Krausz partition K = {S1,S2,...,S6} (b) Root graph G of L Figure 2.13. (a) Line graph L with a Krausz partition, (b) root graph G.

Proof. Let L be the line graph of G. Without loss of generality, we assume that G is connected. Then the edges in the at each vertex of G induces a complete subgraph of L, and every edge of L lies in exactly one such subgraph. Since each edge of G belongs to the stars of exactly two vertices of G, each vertex of L lies in exactly two of these complete subgraphs. Thus, L has a Krausz partition.

Proposition 2.18. If a graph L has a Krausz partition, then it is a line graph.

k Proof. We create a graph G and show that L(G)= L. Let {Si}i=1 = {S1,S2,...,Sk} be

members of a Krausz partition K of L. Note that for any i =6 j, Si ∩ Sj has at most one vertex. This is because two or more vertices in common implies that an edge is in two of the members, which contradicts the definition of a Krausz partition.

Let G have vertex set {v1,...,vk} where each vi corresponds to Si and edge set

{vivj : Si ∩ Sj =6 ∅, i =6 j}. There can be at most one edge from vi to vj since Si ∩ Sj has at most one vertex. Thus, we have just created a simple graph G. Now we show that L(G)= L.

Since each vertex of L lies in exactly two members, say Si and Sj, there is a one-to-one correspondence between edges of G and vertices of L. Thus, L(G) and L have the

same number of vertices. Let l1, l2 be two adjacent vertices in L(G). We will show that l1, l2

are two adjacent vertices in L. Vertices l1, l2 are adjacent in L(G) if and only if the

corresponding edges e1, e2 ∈ G are adjacent. Edges e1, e2 are adjacent in G if and only if they

are incident to vertex vi and are thus are two edges in the same set Si. This occurs if and only if there is an edge connecting l1 to l2. Thus, l1 and l2 are two adjacent vertices in L.

In conclusion, we have that L is a line graph if and only if there exists a Krausz partition in the graph. Figure 2.13 gives an example of a Krausz partition

K = {K4,K3,K2,K1,K1,K1} of a graph L, where L is the line graph of the graph G. Notice

each member of the Krausz partition Ki of the line graph L corresponds to a star si in G. 24

In order to reconstruct the root graph G given the graph L(G), we use Krausz partitions [1]. We find a Krausz partition of the line graph then use it to create an intersection graph. By finding a Krausz partition of the line graph, we relate each member of the partition to an induced star of G. Recall Proposition 2.4 which states the line graph of K1,n is Kn. We discuss the way to find a Krausz partition in the line graph. First, take all cliques of degree n ≥ 4 as members of the Krausz partition. Recall that even triangles in a line graph result from triangles. Because we want to relate complete graphs to stars, we select only odd triangles rather than even triangles for members of the Krausz partition. Hence the next step is to take all odd triangles as members of the Krausz partition. Out of the even triangles and edges which remain, we take maximal edges as well as edges from unique and even triangles members of the Krausz partition. Finally, we select the vertices of the form K1 which lie in a clique K that is not adjacent to the graph L(G) − K. These vertices correspond to an edge incident to only one vertex of G. Thus we have just created the Krausz partition K = {S1,S2,...,Sk}.

The Krausz partition K = {S1,S2,...,Sk} of L(G) is then used to recreate the root graph G by forming an intersection graph. We create a vertex vi for each of the members of the Krausz partition K and connect two vertices vi, vj of G if and only if their corresponding complete subgraphs in L(G) have non-empty intersection, that is, Si ∩ Sj =6 ∅. For ease, we refer to this recovering process as the Krausz recovering process denoted as K(L). Note that the Krausz recovering process can always be performed since it is well defined. It has been shown that Krausz partitions are not always unique [4]. For example, there exists two Krausz ′ partitions of K3, namely, K = {K2,K2,K2} and K = {K3,K1,K1,K1}. Interestingly ′ enough, the root graph created when using K is C3 whereas the root graph created using K is

K1,3. It turns out that all line graphs, except a set of five graphs which are edge isomorphic not induced by an isomorphism, have unique Krausz partitions. Whitney’s Theorem, which we omit, says that except for K1,3 and C3, all connected graphs have the property that L(G) ∼= L(G′) if and only if G ∼= G′. Whitney’s Theorem is a corollary to a more powerful theorem regarding edge-isomorphisms and isomorphisms of graphs. Figure 2.14 demonstrates how to apply the Krausz recovering process to line graph L in order to reconstruct the root graph G such that L(G)= L. Let C = {{1, 2, 3, 4}, {4, 5, 6}}, D = {{5, 7}, {6, 7}} and E = {{1}, {2}, {3}}. By forming the intersection graph of all of the sets in C∪D∪E, the root graph G can be reconstructed. Before we prove the following lemmas regarding Krausz partitions, observe a fact made by Harary [1]. He noted that there are three ways an induced subgraph isomorphic to

K4 − K2 can have both triangles even. In all of the cases, each graph is a line graph. See Figure 2.15 for the three graphs with their respective labeled root graphs. 25

•1 •2

•3 •(1)

•4 •(2) •(1,2,3,4) •(3)

•5 •6 •(4,5,6)

•7 •(5,7) •(6,7) (a) L (b) G Figure 2.14. (a) Applying the Krausz recovering process to line graph L. (b) Root graph G of L.

•a • •

T1 T1 T1 •b •c • • •y w• • • •y T2 T2 T2

•d • •

(a) K4 − K2 = L(K1,3 + x) (b) W4 = L(K4 − K2) (c) L(K4) Figure 2.15. All ways two triangles that share an edge can be even.

We now prove the following lemma, creating a method of reconstructing the root graph similar to that of Harary and Behzad and Chartrand [3][5].

Lemma 2.19. If connected graph L does not have K1,3 as an induced subgraph, and any

induced subgraph isomorphic to K4 − K2 has at least one triangle even, then L has a Krausz partition.

Proof. Assume L does not have K1,3 as an induced subgraph, and any induced subgraph isomorphic to K4 − K2 has at least one triangle even. Then exactly one of the following statements is true:

1. L contains an induced subgraph isomorphic to K4 − K2 with both triangles even.

2. L does not contain an induced subgraph isomorphic to K4 − K2 with both triangles even. For the first case, recall that Harary states that the the three graphs in Figure 2.15 are the only possibilities. Each of these is the line graph of some graph G, so by Proposition 2.17 there exists a Krausz partition. 26 We now consider the second statement. We create a Krausz partition by listing its members and show that all three properties of the Krausz partition are satisfied. Let C be the set of all cliques of degree n ≥ 4 as well as odd triangles. Let D be the set of all edges left after removing C. Note that these edges are either maximal edges or come from even triangles. Every edge is in at least one Krausz member by way of construction. To show each edge is in exactly one, assume there exists an edge x1x2 that lies in two members

C1, C2 ∈ C. For all u ∈ V (C1), there exists a vertex v ∈ V (C2) such that uv 6∈ E(L) since Ci are maximal complete subgraphs. If u =6 x1, x2 was such that uv ∈ E(L), then C1 would not be a clique. Recall that any triangle in a complete graph of degree n ≥ 4 is odd. Since every triangle in C is odd, we have a contradiction since two odd triangles share an edge. Thus, each edge of L lies in exactly one member of the Krausz partition K. Let E be the set of all vertices of L which are only in one clique. Note that every vertex is in at least one Krausz member since each edge is in one Krausz member and L is connected. Later we will show that each vertex is in exactly two Krausz members. Let K = C ∪ D ∪ E be the Krausz partition of complete subgraphs. We now show that each vertex lies in exactly two Krausz members. Assume each vertex lies in three Krausz members. We consider the following cases:

Case (1): Assume x ∈ C1 ∩ C2 ∩ C3. For all u ∈ V (C1), there exists a vertex v ∈ V (C2) such that uv 6∈ E(L). Similarly, for all u ∈ V (C1), there exists a vertex w ∈ V (C3) such that uw 6∈ E(L). If vw 6∈ E(L), we arrive at a contradiction since the ′ vertices {x,u,v,w} induce K1,3. If vw ∈ E(L), note that there exists v ∈ V (C2) such that ′ ′ edge v w 6∈ E(L) since otherwise this creates a K4. Then △xvv ∈ C2 is odd and we have a contradiction since odd triangles △xvw and △xvv′ share an edge.

Case (2): Assume x ∈ C1 ∩ C2 ∩ D1. Let wx ∈ E(D1). There exists u ∈ V (C1) such that wu 6∈ E(L) and v ∈ V (C2) such that uv 6∈ E(L). We apply the same reasoning as in Case 1 and arrive at a contradiction.

Case (3): Assume x ∈ D1 ∩ D2 ∩ C1. Let xv be the edge of D1, xw the edge of D2. ′ ′ ′ Let u and u be in V (C1). If vu and vu are both in L, then the vertices {x,v,u,u } induce a

K4 which contradicts our construction of D1. Consequently, v can be connected to at most one vertex of C1, and similarly w can be connected to at most one vertex of C1.

On the other hand, any u ∈ V (C1) must be connected to either v or w. For otherwise, vertices {x,v,w,u} would induce a claw if vw 6∈ E(L) or △xvw would be an odd triangle if vw ∈ E(L). C1 has at least two vertices, each must be connected to either v or w but at most ′ one can be connected to v and one to w. Consequently, C1 = △xuu . Without loss of generality, u is connected to vertex v (not w) and u′ is connected to vertex w (not v). We have two possible scenarios as demonstrated in Figure 2.16: 27

•v •w •v •w

•x •x

•u •u′ •u •u′ (a) (b)

Figure 2.16. Case 3: x ∈ D1 ∩ D2 ∩ C1.

In the first case, we have that the vertices {v,w,x,u} induce a claw. In the second ′ case, in order to make △xuu odd, but not part of a K4, some vertex in V (L) must meet △xuu′ once. This will make one of the triangles △vxu or △wxu′ odd. This contradicts the fact that the edges of D came from even triangles or maximal edges.

Case (4): Assume x ∈ D1,D2,D3. If none of uv, vw or wu ∈ L, then we have a contradiction since the edges xu, xv, and xw induce K1,3. If exactly one of uv, vw or wu ∈ L, then this would imply the existence of an odd triangle. This contradicts the assumption that the edges of D1 and D2 are in no odd triangle. If exactly two of uv, vw or wu ∈ L, then we have two triangles, which must be even by construction, and which share an edge. This contradicts our initial assumption. See Figure 2.15 for all ways for two triangles which share an edge to be even triangles. If all of uv, vw or wu ∈ L, we have a contradiction since K4 is induced by {x,u,v,w}. Thus K is a Krausz partition.

To verify that the nine forbidden graphs indeed do not have a root graph, we apply the Krausz recovering process. Since none of the nine forbidden subgraphs have two even triangles which share an edge, we can apply the Krausz partitioning process to check that they do not have root graphs. The result of applying Krausz recovering process to the forbidden graphs yields a graph H, where the line graph of H is not the forbidden graph with which we started. In other words, we have K(G)= H but L(H) =6 G, where G is the forbidden graph. Please refer to the Appendix A for the result of applying the Krausz recovering process to each of the nine forbidden subgraphs.

Corollary 2.20. If L does not have K1,3 as an induced subgraph, and if any two odd triangles with a common edge have as an induced subgraph K4, then L is a line graph.

Proof. This follows from Proposition 2.18.

Corollary 2.21. If none of the nine forbidden subgraphs is an induced subgraph of a graph L, then L is a line graph. 28 Proof. Assume none of the nine subgraphs in Figure 2.5 is an induced subgraph of a graph G.

By Theorem 2.15, we have that G does not have K1,3 as an induced subgraph, and if two odd triangles have a common edge, then the subgraph induced by their vertices is K4. By Corollary 2.20, we have that G is a line graph.

We now have three necessary and sufficient conditions for a graph L to be a line graph. We know that L is a line graph if and only if it does not have one of the nine forbidden subgraphs as an induced subgraph, L is a line graph if and only if it has a Krausz partition, and lastly L is a line graph if and only if L does not have K1,3 as an induced subgraph, and if two odd triangles have a common line then the subgraph induced by their vertices is K4. These three statements combine to make the main theorem of line graphs which we discuss in Section 2.4.

2.4 MAIN THEOREM FOR LINE GRAPHS In this section, we discuss the main theorem for line graphs. The theorem results from statements from Krausz, van Rooij and Wilf, and Beineke and Robertson [4]. Three necessary and sufficient conditions are given in order for a graph L to be a line graph of a graph G.

Theorem 2.22. (Categorization of Line Graphs) The following statements are equivalent:

(i) L is a line graph

(ii) L has a Krausz partition.

(iii) L does not have K1,3 as an induced subgraph, and any subgraph of L induced by the

four vertices of two odd triangles that share an edge is K4.

(iv) None of the nine graphs of Figure 2.5 is an induced subgraph of L.

Theorem 2.22 culminates from theorems proved by different mathematicians. Behzad and Chartrand state the theorem as the following: “A graph H is a line graph if and only if (i)

K1,3 is not an induced subgraph of H and (ii) if K4 − e (for any e ∈ E(K4)) is an induced subgraph of H, then at least one of its triangles is even” [3]. van Rooij stated the theorem as, “A graph H is the interchange graph of some graph G if and only if (i) If H contains a section

graph isomorphic with D (K4 − K2), then one of its two triangles is even and (ii) H contains

no section graph isomorphic with C (the claw K1,3)” [8]. Note that an “interchange graph” is another name for a line graph, and that a “section graph” is a subgraph. Although Beineke et al and Harary stated Theorem 2.22 almost verbatim, each worded

part (iii) in differently [1][4]. Harary stated it as “G does not have K1,3 as an induced subgraph, and if two odd triangles have a common edge, then the subgraph induced by their 29 vertices is K4.” Beineke and Hemminger stated it as, “G does not have K1,3 as an induced sugbraph, and any induced subgraph isomorphic to K4 − K2 has one of its triangles even.” The two statements are equivalent. We now prove Theorem 2.22 using previously proved lemmas and theorems.

Proof. (i) → (ii) See Proposition 2.17. (ii) → (i) See Proposition 2.18. (i) → (iii) See Theorem 2.13. (iii) → (ii) See Lemma 2.19. (i) → (iv) See Corollary 2.14. (iii) → (iv) See Theorem 2.15. (iv) → (iii) See Theorem 2.15.

Note that for (ii) → (iv), we see that all the graphs of Figure 2.5 can not be partitioned into complete subgraphs that satisfy the Krausz partition criteria. By Lemma 2.9, the result follows. For (iii) → (i) see Corollary 2.20. 30

CHAPTER 3 FLOW NETS

In this chapter, we define a new term called flow nets and discuss their relationship to line graphs. Section 3.1 introduces directed De Bruijn graphs, a special kind of line graph, as an example of a directed line graph. Section 3.2 discusses line graphs of directed graphs and defines flow net in terms of a general net. Lastly, Section 3.3 relates the flow net to the line graph.

3.1 DE BRUIJN GRAPHS De Bruijn graphs are a special case of line graphs. Named after Nicolaas Govert de Bruijn, they were discovered independently both by De Bruijn in 1946 and J. Good in 1946. n−1 In [9], De Bruijn proved that for each n there were 22 −n sequences consisting of the symbols 0, 1 that have a certain property now known as being a De Bruijn sequence, where n indicates the length of the sequence. This was not the first time someone had proven this property about De Bruijn sequences, though. In 1894, Camille Flye Sainte-Marie solved the question regarding “the counting of circular arrangements of 2n zeros and ones that show each n-letter word exactly once” [10]. De Bruijn acknowledged Sainte-Flye’s work through a paper and gave credit to the solution published in a French journal in [10]. Before we discuss De Bruijn graphs, we introduce De Bruijn sequences. The following sequence of 0’s and 1’s is an example of a De Bruijn sequence for n =3: 00011101. Taking three digits at a time and looping to the start cyclically, we have the following three-digit sequences: 000, 001, 011, 111, 110, 101, 010, 100. Notice that each of the 23 combinations appear exactly once while going left to right, looping back to the beginning. We call these consecutive sequences of symbols subsequences. All combinations of three-digit sequences using the symbols 0’s and 1’s creates a three-digit De Bruijn sequence on 2 symbols. Refer to Figure 3.1 for an example of the De Bruijn sequence showing the circular nature of De Bruijn sequences along with some other examples of two-digit and four-digit sequences. We formally define a De Bruijn sequence as the following:

Definition 3.1. A De Bruijn sequence(k, n) of order n is a cyclic sequence using an alphabet of k distinct symbols in which each of the kn subsequences appears as a sequence of symbols exactly once.

The subsequences of length n are sometimes referred to as words. Each of the kn words of length n appears exactly once as one travels around the cycle formed by the 31 symbols. We choose to focus on De Bruijn sequences with symbols 0, 1. In the example 00011101, we have a De Bruijn sequence with k =2 symbols of order n =3. We denote this sequence as De Bruijn sequence(2, 3). Another example of a De Bruijn sequence of the symbols {0, 1} and length n =2 is 0110 as seen in Figure 3.1. Just like when noting a permutation on symbols, we have four different ways to express the same De Bruijn sequence. The De Bruijn sequence 0110 can also be expressed as 1100, 1001, or 0011.

0 0 1 0 0 0 1 1

0 0 1 1 0 1 0 1 0 0 1 0 1 1 0 1 1 1 0 1 (a) n=2 k=2 (b) n=3 k=2 (c) n=4 k=2 Figure 3.1. Examples of De Bruijn sequences of order 2, 3 and 4 with symbols 0, 1.

We now define a De Bruijn graph which can be created from any De Bruijn sequence.

Definition 3.2. A De Bruijn graph(k, n) is a directed graph created from a De Bruijn sequence; it has one vertex for each of the kn words of length n from k symbols. It has a −−−→ directed edge w1w2 from word w1 to word w2 if the last n − 1 digits of w1 equal the first n − 1

digits of w2.

One way to find the set of directed edges is by identifying “overlapping” vertices: the last n − 1 symbols of one vertex are the same as the first n − 1 symbols of the second vertex. Another way to think of the set of edge is the following: take any vertex, shift all symbols to the left one place, then attach one of the k symbols, either a 0 or a 1 in our case, to the end of the sequence. There are k directed edges originating from a vertex since there are k possible ways the last n − 1 digits can match with the first n − 1 digits of a sequence with k symbols. Similarly, there are k directed edges terminating at a vertex. In general, a De Bruijn graph(k, n) has kn vertices and kn+1 directed edges. A Hamiltonian circuit of a graph G is a closed circuit with each vertex of G listed exactly once in the circuit and an Eulerian circuit is a closed circuit with each edge of G listed exactly once. These definitions can also be applied to directed graphs. We see that a De Bruijn sequence is related to a Hamiltonian circuit in its corresponding De Bruijn graph. In our first example of a De Bruijn sequence(2, 3), the Hamiltonian circuit 000 001 010 101 011 32

111 110 100 gives a De Bruijn sequence(2, 3) which is 00101110. See Figure 3.2 for a Hamiltonian circuit in the De Bruijn graph(2, 3). This is one way to use a De Bruijn graph to obtain a De Bruijn sequence.

001 011

000 101010 111

100 110

Figure 3.2. De Bruijn graph(2, 3) with Hamiltonian circuit 000 001 010 101 011 111 110 100 and Eulerian circuit 000 000 001 011 110 100 001 010 101 011 111 111 110 101 010 100 000.

Another way to use a De Bruijn graph to find a De Bruijn sequence of order n is to use the De Bruijn graph of order n − 1 on the same set of symbols. Finding an Eulerian circuit in the De Bruijn graph(k, n − 1) creates the De Bruijn sequence(k, n). In our case, to find a De Bruijn sequence(2, 3) we look to the De Bruijn graph(2, 2). In Figure 3.3, we can easily see that each directed edge in the graph corresponds to a word of three digits. Take the digits from the origin vertex and the last digit of the terminating vertex. Thus, traveling from vertex 00 to vertex 01 indicates the word 001. If we continue to vertex 10, we create the word 010. By traversing each edge of the graph exactly once, we create each of the 8 three-digit words exactly once. Thus, an Eulerian circuit 0001100111111000 of the De Bruijn graph(2, 2) yields a De Bruijn sequence(2, 3) of 00101110. See Figure 3.3 for the Eulerian circuit.

01

00 11

10 Figure 3.3. De Bruijn graph(2, 2) with Eulerian circuit 0001100111111000. 33

Example 3.3. We find a De Bruijn sequence(2, 4) in two different ways. The first way is to find a Hamiltonian circuit in the De Bruijn graph(2, 4). The reader can verify that 0000 0001 0011 0110 1100 1001 0010 0101 1011 0111 1111 1110 1101 1010 0100 1000 0000 is a Hamiltonian circuit in Figure 3.4. To arrive at the De Bruijn sequence, one starts with the vertex 0000 and adds to it the last digit of the next vertex, 1, in order to obtain 00001, and continues on in this fashion.

0011

0010 1011

0001 1010 0111

1001 0000 1111 0110

1000 0101 1110

1101 0100

1100 Figure 3.4. De Bruijn graph(2, 4) with Hamiltonian circuit 0000 0001 0011 0110 1100 1001 0010 0101 1011 0111 1111 1110 1101 1010 0100 1000 0000.

The second way is to find an Eulerian circuit in the De Bruijn graph(2, 3). The reader can verify that 000 000 001 011 110 100 001 010 101 011 111 111 110 101 010 100 000 is an Eulerian circuit in Figure 3.2. In both methods, we arrive at the De Bruijn sequence(2, 4) of 0000110010111101. Before we state the relationship between De Bruijn graphs and line graphs, first note that we can define the line graph for a directed graph as following. −→ −→ Definition 3.4. The line graph of a directed graph G is a directed graph L(G) with the edges −→ −→ −→ −→ −→ of G as the vertex set of L(G) and edge set {(u, v) ∈ E(G) × E(G) : u2 = v1 ∈ G where −−→ −−→ u = u1u2 and v = v1v2}. In other words, there is an edge from vertex u to vertex 34 −→ −−→ −−→ −→ v ∈ V (L(G)) whenever their corresponding edges u1u2, v1v2 ∈ E(G) have the property that −→ u2 = v1 in G. −−→ −−→ −→ We say that if edge u1u2 “flows into” the edge v1v2 in the graph G, then there is the −→ directed edge from u to v in L(G). The line graph of a directed graph is often called a “line digraph” and has been studied by mathematicians [4][6]. We will discuss the idea of a line graph of directed graphs in more detail in Section 3.2. De Bruijn graphs are related to directed line graphs. In fact, each order n De Bruijn graph is the line graph of the order (n − 1) De Bruijn graph with the same set of symbols. Mathematically, we write the relationship as L(De Bruijn(k, n − 1)) = De Bruijn(k, n). For example, a De Bruijn graph(2, 3) has the De Bruijn graph(2, 4) as its line graph. Figure 3.3 gives the De Bruijn graph(2, 2) and Figure 3.2 shows its line graph. Figure 3.2 gives the De Bruijn graph(2, 3) and Figure 3.4 shows its line graph. Each edge in an order (n − 1) De Bruijn graph represents a vertex in the order n De Bruijn graph. The two vertices 00 and 01 in the De Bruijn graph(2, 2) create the directed edge 001, which is a vertex in the De Bruijn graph(2, 3). De Bruijn graphs are used for a technique that sequences genomes [11].

3.2 LINE NETS AND FLOW NETS As mentioned in Section 3.1, one can find the line graph of a directed graph. It follows from the definition of a directed graph that a directed line graph has no multiple edges or loops since both multiple edges and loops are not allowed in directed graphs. If loops were allowed in the directed graph, a directed line graph would have a loop at vertex u if and only if u is a loop in the original directed graph. We define more generally the process of replacing edges with vertices for a net denoted by L(N).

Definition 3.5. The line net of a net N is the net L(N) with the edges of N as the vertex set of L(N) and edge set {(u, v) ∈ E(N) × E(N) : τ(u)= σ(v) ∈ N}.

The definition is similar to Definition 3.4 except that multiple edges and loops are allowed due to the fact that we apply this process to nets rather than directed graphs. We call symmetric pairs of edges conjugate edges. We call a symmetric directed graph a symmetric net. See Figures 3.6 and 3.5 for examples of nets and their line nets. Notice that L(N (G)) =6 N (L(G)), in other words, the line graph of the net of G is not the same as the net of the line graph of a graph. Take for instance the graph G = K1,3. Its net and line graph of the net are given in Figure 3.5. But the net of the line graph of K1,3, namely the net of the cycle C3 shown in Figure 3.6, is not the same as the line graph of the net of G. We define more formally a graph transformation of nets similar to the line graph transformation of graphs. 35

•e2 •e3 •• • •e2 •e3

e1 e3 e2 e2 e1 e3 •e1 •

•e1

Figure 3.5. Examples of a symmetric net N of K1,3 and its line net L(N).

•e2 •e3 • •e2 •e3

e2 e3 e2 e3

e1 •e1 • • e1

•e1

Figure 3.6. Examples of a symmetric net N of C3 and its line net L(N).

Definition 3.6. The flow net of a symmetric net N is the net F(N) with the set of directed edges of N as the vertex set of F(N) and edge set {(u, v) : τ(u)= σ(v) ∈N, u =6 v}.

In other words, the flow net is like the line graph with the exception that the flow net excludes edge adjacencies of conjugate pairs of directed edges. This extension of line graphs to symmetric nets via the flow net allows for a more natural analogy. We do this to avoid placing an edge between conjugate pairs of edges. We say that a net F is a flow net if there exists a symmetric net N such that F = F(N). Figures 3.7 and 3.8 demonstrate examples of flow nets of symmetric nets. Notice that both the line net and flow net of a net distinguish between the net of a cycle C3 and the net of the claw K1,3. As previously seen, this is not the case for line graphs of C3 and K1,3. We summarize how to count the number of directed edges and vertices of a flow net in the following lemma. 36

•e2 •e3 • •e2 •e3

e2 e3 e2 e3

e1 •e1 • • e1

•e1

Figure 3.7. Examples of a symmetric net N of C3 and its flow net N ∗.

•• •

•e1 •e2

e1 e3 e2 e2 •e2 •e3 e1 e3

•e3 •e1 •

Figure 3.8. Examples of a symmetric net N of K1,3 and its flow net N ∗.

Lemma 3.7. If N is a symmetric net with |V (N)| = p and |E(N)| = q, then number of p vertices in F(N) is q and the number of edges of F(N) is i=1 di · (di − 1), where di signifies the degree of vertex vi. P

Proof. By the definition of a flow net, F(N) has q vertices. Note that each vertex vi ∈ V (N)

adds di · (di − 1) edges to F(N). Thus we have that the number of edges in F(N) is

p

(di) · (di − 1) Xi=1

We account for the fact that flow nets do not flow into its conjugate edge by −→ subtracting 1. Unlike for flow nets, we have the number of edges in the line graph L(G) of a −→ p directed graph G to be i=1(din(vi)) · (dout(vi)), where p signifies the number of vertices and din,dout signify theP in-degree and out-degree of vertex vi, respectively. Line nets have some interesting properties that line graphs do not have [4]. Note that a net is strongly connected if for every pair of vertices u, v, there is a directed path from u to v 37 and one from v to u. Anetis unilaterally connected if there is a directed path from u to v or one from v to u. Anetis connected if there is a path from u to v in the underlying graph of the directed graph. Figures 3.9 through 3.11 are examples made by Beineke [4]. Figure 3.9 shows a line net of a connected net that is not connected [4]. Figure Figure 3.10 shows non-isomorphic nets with isomorphic line nets. For line graphs, this only occurs with the claw and cycle. Figure 3.11 shows a line net that is isomorphic to its root net. For line graphs, this only occurs when G is a cycle.

• • • • • •

• • • (a) N (b) L(N) Figure 3.9. Example of a connected net with a disconnected line net.

• • • • • • •

• • • • • •

• • • • • •

• • • • (a) G (b) G′ (c) L(G) (d) L(G′) Figure 3.10. Example of two nets where N 6∼= N ′ but L(N) ∼= L(N ′).

• • • •

• • • • • •

• • • •

• • (a) N (b) L(N) Figure 3.11. Example of a net N ∼= L(N). 38

3.3 FLOW NETS AND LINE NETS The line net of a symmetric net is related to the flow net of a symmetric net. The line net of a symmetric net includes conjugate edge flows, whereas the flow net by definition does not. In Figures 3.7 and 3.8, conjugate pairs of vertices are {e1, (e1)}, {e2, (e2)}, and

{e3, (e3)}. For a symmetric net N, let J be the net whose vertices are the edges of N and whose edge set is {ee : e ∈ E(N)}. If we label the adjacency matrix with rows and columns

as e1, (e1),...,ei, (ei), we have the following adjacency matrix for the net J:

010000  100000     000100  A(N (J)) =    001000       000001     000010    The adjacency matrices of the flow net and line net in Figures 3.7 and 3.6 respectively are:

000010  000100     100000  A(F(N)) =    000001       001000     010000    010010  100100     100100  A(L(N)) =    001001       001001     010010    In terms of adjacency matrices, we have that A(L(N)) = A(F(N)+ A(N (J)). 39

CHAPTER 4 CONCLUSION

This thesis gave a detailed and careful exposition of the main theorem of line graphs. In doing so, we provided lemmas and corollaries which aimed to support the understanding of the main theorem for line graphs. We detailed a study of triangles, forbidden subgraphs and Krausz partitions and explicitly showed their relationship to line graphs in order to deepen the current body of work. A natural transition from line graphs of simple graphs was to line graphs of directed graphs. De Bruijn graphs served as a motivation to study line graphs of directed graphs. Another reason to study the idea of directed line graphs resulted from the study of the sum-product algorithm for low density parity check codes [2]. We worked with a very general form of a graph that allows directed edges, multiple edges and loops called a net. We used the term net, previously used by Harary, Norman and Cartwright in 1965 because all notions generalize easily to this context [5]. We presented a new extension of line graphs to nets via the flow net. We defined the flow net for nets as a similar transformation to line graphs for nets and discussed the relationship between the two. The flow net is a more natural generalization of a line graph which disallows an edge flowing into its conjugate. By using nets and flow nets, we have set the foundation for a study of flow nets that could be paralleled to the study of line graphs. Future work with flow nets might include analyzing the relationship between the line graph of a net and the flow net of the net of a graph, i.e. L(G) and F(N (G)). One study could be to determine when a net is the flow net of a net which would serve as the theorem corresponding to Whitney’s Theorem for flow nets [3][7]. Another possible study might be characterizing which class of nets are isomorphic to their root nets or if isomorphic flow nets have isomorphic root nets. Beineke and Hemminger answered some of these questions for line graph of a digraph [4]. Continuing the study of flow nets and their relation to line graphs would serve as an extension of the study of De Bruijn graphs, the sum-product algorithm code for low density parity check codes and flow nets. 40

BIBLIOGRAPHY

[1] . Graph theory. Addison-Wesley Publishing Co., Reading, Mass.-Menlo Park, Calif.-London, 1969. [2] Tom Richardson and Ruediger Urbanke. Modern Coding Theory. Cambridge University Press, March 2008. [3] Mehdi Behzad and . Introduction to the theory of graphs. Allyn and Bacon Inc., Boston, Mass., 1971. [4] Lowell W. Beineke and Robin J. Wilson, editors. Selected topics in graph theory. Academic Press Inc. [Harcourt Brace Jovanovich Publishers], London, 1978. [5] Frank Harary, Robert Z. Norman, and Dorwin Cartwright. Structural models: An introduction to the theory of directed graphs. John Wiley & Sons Inc., New York, 1965. [6] Frank Harary and Robert Z. Norman. Some properties of line digraphs. Rend. Circ. Mat. Palermo (2), 9:161–168, 1960. [7] Hassler Whitney. Congruent graphs and the connectivity of graphs. American Journal of Mathematics, 54(1):150–168, January 1932. [8] A. C. M. van Rooij and H. S. Wilf. The interchange graph of a finite graph. Acta Math. Acad. Sci. Hungar., 16:263–269, 1965. [9] N. G. de Bruijn. A combinatorial problem. Nederl. Akad. Wetensch., Proc., 49:758–764 = Indagationes Math. 8, 461–467 (1946), 1946. [10] N.G. de Bruijn. Acknowledgement of priority to C. Flye Sainte-Marie on the counting of circular arrangements of 2n zeros and ones that show each n-letter word exactly once. Technological University Eindhoven, 1975. [11] Daniel R. Zerbino and Ewan Birney. Velvet: algorithms for de novo short read assembly using de bruijn graphs. Genome Research, 18(5):821–829, 2008. 41

APPENDIX KRAUSZ RECOVERING PROCESS APPLIED TO THE NINE FORBIDDEN SUBGRAPHS 42

KRAUSZ RECOVERING PROCESS APPLIED TO THE NINE FORBIDDEN SUBGRAPHS

We apply the Krausz recovering process to each of the nine forbidden subgraphs in Figure 2.5. Table A.1 lists the sets of cliques, edges and vertices that result when applying the Krausz recovering process. Figures A.1 through A.9 show the forbidden subgraph, the resulting graph from the Krausz recovering process, and the line graph of the Krausz recovering process graph.

Table A.1. Applying Krausz Recovering Process to the Nine Forbidden Subgraphs.

G1 G2 G3 C = {{1, 2}, {2, 3}, {2, 4}} C = {{1, 2, 3}, {2, 3, 5}, C= {{1, 2, 3, 4}, {2, 3, 4, 5} {1, 4}, {4, 5}} D = ∅ D = ∅ D = ∅ E = {{1}, {3}, {4}} E = ∅ E = {{1}, {5}} G4 G5 G6 C = {{1, 3, 4}, {3, 4, 6}, C = {{1, 2}, {2, 3}, {2, 4}} C = {{1, 2, 3, 4}, {3, 4, 5, 6} {1, 2}, {5, 6}} D = ∅ D = ∅ D= ∅ E = {{2}, {5}} E = {{1}, {2}, {6}} E = {{1}, {2}, {5}, {6}} G7 G8 G9 C = {{1, 3, 4}, {3, 4, 5}, C = {{1, 2, 4}, {1, 3, 4}, C = {{1, 2, 6}, {2, 3, 6}, {3, 4, 6}, {1, 2}, {2, 6}, {5, 6}} {3, 4, 6}, {3, 5, 6}} {4, 5, 6}, {1, 5, 6}} D = ∅ D = ∅ D = ∅ E = ∅ E = {{2}, {5}} E = ∅

•1 •f •4 •3 f • • 2 1,2 •b •e b e

•1 •3 •2,3 •2,4 •4 a c d •a •c •d

Figure A.1. G1, K(G1), L(K(G1)). 43

b •1 1,2,3• •2,3,5 •b

•2 •3 •4 a c •a •c

•5 1,4• •4,5 •d d

Figure A.2. G2, K(G2), L(K(G2)).

b 1,2,3,4• •2,3,4,5 •1

a c •a •b •c •2 •3 •4

1• •5 •5

Figure A.3. G3, K(G3), L(K(G3)).

c 1,3,4• •3,4,6

•1 •2 b d

•3 •4 1,2• •5,6 •a •b •c •d •e

•5 •6 a e

•2 •5

Figure A.4. G4, K(G4), L(K(G4)).

•1 •2 • • • 1 a b a b

•1,2,3,4 •2 •c c •3 •4 •3,4,5 •d d •5,6 •6 •5 •e e

•6

Figure A.5. G5, K(G5), L(K(G5)). 44

•1 •1 •2 a b •a •b •2 •1,2,3,4 •3 •4 c •c •5 •3,4,5,6 •d •e d e •6 •5 •6

Figure A.6. G6, K(G6), L(K(G6)).

a •2,6 •5,6 •a •1 •2 e b • • •e •b 3 4 •1,2 •3,4,5

•5 •6 d c •1,3,4 •d •c

Figure A.7. G7, K(G7), L(K(G7)).

•2 a •a •b

•1 •2 1,2,4• •1,3,4 b d c •d •c •3 •4 •3,4,6 e •e •5 •6 •3,5,6 f •f •5

Figure A.8. G8, K(G8), L(K(G8)).

a• b•

•1,5,6 •f •1 •2 a b f •h •i 1,2,6• •4,5,6 •5 •6 h i j g e c •4 •3 •e •j •g •c 2,3,6• •3,4,6 d

•d

Figure A.9. G9, K(G9), L(K(G9)), where L(K(G9)) is the complement of the Peterson graph.