# [2], [3], which realize a time bound of O(n. e(c + 1)).

Save this PDF as:

Size: px
Start display at page:

Download "[2], [3], which realize a time bound of O(n. e(c + 1))."

## Transcription

1 SIAM J. COMPUT. Vol. 4, No. 1, March 1975 FINDING ALL THE ELEMENTARY CIRCUITS OF A DIRECTED GRAPH* DONALD B. JOHNSON Abstract. An algorithm is presented which finds all the elementary circuits-of a directed graph in time bounded by O((n + e)(c + 1)) and space bounded by O(n + e), where there are n vertices, e edges and c elementary circuits in the graph. The algorithm resembles algorithms by Tiernan and Tarjan, but is faster because it considers each edge at most twice between any one circuit and the next in the output sequence. Key words, algorithm, circuit, cycle, enumeration, digraph, graph 1. Introduction. Broadly speaking, there are two enumeration problems on sets of objects. The one, which we call counting, is determining how many objects there are in the set. The other, which we call finding, is the construction of every object in the set exactly once. Indeed, objects may always be counted by finding them if a method to do so is at hand. But knowing the count is usually of little aid in finding the objects. We give an algorithm for finding the elementary circuits of a directed graph which is faster in the worst case than algorithms previously known. As far as we know, it is also the fastest method known for the general enumeration problem as well (see 1, p. 2263). Specific counting problems are, of course, solved. For example, there are exactly i=1 n-i+ (n i)! elementary circuits in a complete directed graph with n vertices. Thus the number of elementary circuits in a directed graph can grow faster with n than the exponential 2". So it is clear that our algorithm, which has a time bound of O((n + e)(c + 1)) on any graph with n vertices, e edges and c elementary circuits, is feasible for a substantially larger class of problems than the best algorithms previously known [2], [3], which realize a time bound of O(n. e(c + 1)). A directed graph G (V, E) consists of a nonempty and finite set of vertices V and a set E of ordered pairs of distinct vertices called edges. There are n vertices and e edges in G. A path in G is a sequence of vertices Pv, (v v 1, v2, "", vk u) such that (v i, vi+ 1)e E for _< < k. A circuit is a path in which the first and last vertices are identical. A path is elementary if no vertex appears twice. A circuit is elementary if no vertex but the first and last appears twice. Two elementary circuits are distinct if one is not a cyclic permutation of the other. There are c distinct elementary circuits in G. Our definitions exclude graphs with loops (edges of the form (v, v)) and multiple edges between the same vertices. It is obvious that for any circuit qv, there exists a vertex u such that q is composed of a path followed by edge (u, v). If qv is elementary, then pu is also elementary. Received by the editors December 1, 1973, and in final revised form June 1, Computer Science Department, Pennsylvania State University, University Park, Pennsylvania

2 _ 78 DONALD B. JOHNSON F is.a subgraph of G induced by W if W 1/and (u, v) induced by a vertex set W such that W c W 1/. F (I/V, {(u, v)lu, v W and El). An induced subgraph F is a (maximal) strong component of G if for all u, v W there exist paths P,v and pv, and this property holds for no subgraph of G The literature contains several algorithms which find the elementary circuits of any direct graph. In the algorithms of Tiernan [4] and of Weinblatt [5], time exponential in the size of the graph may elapse between the output of one circuit and the next [2]. Tarjan [2] presents a variation of Tiernan s algorithm in which at most O(n. e) time elapses between the output of any two circuits in sequence, giving a bound of O(n. e(c + 1)) for the running time of the algorithm on an entire graph in the worst case. Ehrenfeucht, Fosdick, and Osterweil [3] give a similar algorithm which realizes the same bound. In the case of Tarjan s algorithm, the worst-case time bound is realized, for instance, on the graph shown in Fig. 1. We assume that the algorithm s with vertex and, in any search from vertices through k + 1, it visits vertices k + 2 through 2k + before a first visit to vertex 2k + 2. In the course of finding each of the k elementary circuits which contain vertex 1, the subgraph on vertices 2k + 2 through 3k + 3 will be explored k times, once for each of the vertices k + 2 through 2k + 1. Thus exploration from vertex alone consumes O(k3) time. Since there are exactly 3k elementary circuits in the entire graph, the running time is O(n.e(c + 1)). at least The worst-case time bound for Tarjan s algorithm is also realized on the graph in Fig: 2. Assuming a start at vertex 1, the algorithm takes O(k) time to find the one elementary circuit of the graph. Then the fruitless searches from vertices 2 through k take O(k2) time, which is O(n. e( + 1)). So we see that there are two ways in which the time bound is realized in Tarjan s algorithm. One is through repeated fruitless searching of a subgraph while seeking circuits with a certain least vertex; the other is through fruitless searches from many vertices which are least vertices in no elementary circuit. The graphs of Figs. and 2 are strongly connected, and their undirected versions are biconnected. On such graphs, obvious preprocessing techniques, such as reducing the graph to its strong components (as Weinblatt does [5]) or to components which in addition to strong connectivity have biconnected undirected versions, do not improve the performance of Tarjan s algorithm. Stronger techniques are needed to get a better asymptotic running time in the worst case. 2k+5 k+2 2k+4, : 2k+l FIG.. A worst-cse cxmh [or Trj s lgorith

3 FINDING ELEMENTARY CIRCUITS k-i k FIG. 2. A second worst-case example for Tarjan s algorithm 2. The algorithm. In our algorithm, the time consumed between the output of two consecutive circuits as well as before the first and after the last circuits never exceeds the size of the graph, O(n + e). We employ the basic notion of Tiernan s algorithm. Elementary circuits are constructed from a root vertex s in the subgraph induced by s and vertices "larger than s" in some ordering of the vertices. Thus the output is grouped according to least vertices of the circuits. To avoid duplicating circuits, a vertex v is blocked when it is added to some elementary path ning in s. It stays blocked as long as every path from v to s intersects the current elementary path at a vertex other than s. Furthermore, a vertex does not become a root vertex for constructing elementary paths unless it is the least vertex in at least one elementary circuit. These two features avoid much of the fruitless searching of Tiernan s, Weinblatt s and Tarjan s algorithms and of the algorithm of Ehrenfeucht, Fosdick, and Osterweil. The algorithm accepts a graph G represented by an adjacency structure AG composed of an adjacency list AG(v) for each v V. The list A(v) contains u if and only if edge (v, u) E. The algorithm assumes that vertices are represented by integers from to n. The algorithm proceeds by building elementary paths from s. The vertices of the current elementary path are kept on a stack. A vertex is appended to an elementary path by a call to the procedure CIRCUIT and is deletbd upon return from this call. When a vertex v is appended to a path it is blocked by setting blocked (v) true, so that v cannot be used twice on the same path. Upon return from the call which blocks v, however, v is not necessarily unblocked. Unblocking is always delayed sufficiently so that any two unblockings of v are separated by either an output of a new circuit or a return to the main procedure. CIRCUIT-FINDING ALGORITHM integer list array A(n), B(n); logical array blocked (n); integer s; logical procedure CIRCUIT (integer value v); logical f; procedure UNBLOCK (integer value u); blocked (u):= false; for wb(u) do delete w from B(u); if blocked(w) then UNBLOCK(w); end end UNBLOCK f :: false;

4 8O DONALD B. JOHNSON stack v; blocked(v):- true; L for wak(v) do if w- s then output circuit composed of stack followed by s; f :- true; end else if--blocked(w) then if CIRCUIT(w) then f true; L2: iffthen UNBLOCK(v) else for wa:(v) do if vqb(w) then put v on B(w); unstack v; CIRCUIT := f; end CIRCUIT; empty stack; s:=l; while s < n do A:= adjacency structure of strong component K with least if A - vertex in subgraph of G induced by {s, s+ 1, then s := least vertex in V; for ivu, do blocked(i) :-- false; B(i) :--,; end; L3: dummy :- CIRCUIT(s); s:=s+l; end else s n; end end; The correctness of the algorithm depends on no vertex remaining blocked when there is a path from the vertex to s which intersects the stack only at s. On the other hand, the bound on running time depends on all vertices remaining blocked as long as possible, consistent with the requirements of correctness. The following lemma establishes these properties. It will be seen that the B-lists are used to remember information obtained from searches of portions of the graph which do not yield an elementary circuit. The procedure UNBLOCK has the property that if there is a call UNBLOCK(x) and vertex y is on list B(x), then there will be a call UNBLOCK(y) following which blocked(y) will be false. LEMMA 1. At L2,for any vertex x 4: s, there is a call UNBLOCK(v) which sets blocked(x) false if and only if n};

5 FINDING ELEMENTARY CIRCUITS 81 (i) there is a path, containing v, from x.to s on which only v and s are on the stack, and (ii) there is no path.from x to s on which only s is on the stack. Proof. Assume, to the contrary, that there is an execution of L2 at which the lemma first fails and that the lemma fails for no vertex before it fails for vertex y. Two cases are possible under this assumption. Case 1. Suppose that the path conditions, (i) and (ii), hold for y at L2, but blocked(y) is not set false. Because there is an edge (v, z) on the path from y to s, f is true at L2. This fact is immediate if z s. If z -: s, it follows from our assumption that the lemma holds for z before the return from the call CIRCUIT(z). Thus there is a call UNBLOCK(v) and, without loss of generality, a path (y re, " ",/)k =/)) on which only/) is on the stack and only y is not unblocked as a result of the call UNBLOCK(v) at L2. But when y was last blocked, y was on the stack. Since y remained blocked when y was removed from the stack, y was put on list B(/)e). So there was a call UNBLOCK(y), a contradiction. Case 2. Suppose that there is a call UNBLOCK(/)) at L2 and that blocked(y) is set false, but that either (i) or (ii) is not satisfied. It cannot be that/) s because it is clear that the lemma holds when only/) s is on the stack, and s cannot be stacked more than once. Since f is true there is an edge (/), z) such that either z s or f was set true when the call CIRCUIT(z) returned. It follows from our assumption that, when f was set true, there was a path from z to s on which only s was on the stack. It may be that several calls to CIRCUIT occur after f is set true and before the current call UNBLOCK(/)). In any event, the current stack (when the call UNBLOCK(/)) occurs) is identical to the stack when f was set true, so there is a path (/), z,..., s) on which only/) and s are on the stack. Since/) is on the stack, (i) and (ii) would be satisfied if y So y :/:/), and there is some vertex which is unblocked before y is unblocked such that y is on B(t). By assumption, there is a path from to s on which only and s are on the stack. Furthermore, when y was last put on B(t), blocked(t) was true and y was on the stack. But blocked(t) has to remain true until the current call UNBLOCK(/)). Otherwise y would have been removed from B(t). Since y must have been unstacked after y was put on B(t), there was some execution of L2 where the stack was a prefix of the current stack, (i) and (ii) held for t, and blocked(t) was not set false. But by assumption, the lemma did not fail then for t. From this contradiction, we find that Case 2 is also impossible. COROLLARY 1. The algorithm outputs only elementary circuits. Proof. Certainly only circuits are output. By Lemma 1, a vertex is only unblocked if it will be off the stack before any call to CIRCUIT can occur. Thus no vertex can be repeated on the stack. LEMMA 2. The algorithm outputs every elementary circuit exactly once. Proof. No circuit is output more than once since, for any stack (s..,/)k) with/)k on top, once/) is removed the same stack cannot reoccur. Let (/)1,/)e, " ",/)l,/)1) be an elementary circuit such that/)1 -</)i, _< =< I. A first call CIRCUIT(v1) will eventually occur at L3 since there is a strong component with least vertex/) 1. Since no vertex is blocked when this first call occurs, it follows by induction using Lemma that whenever the stack is (s vl,/)e, " ", for < l, the stack will later be (s vl,/)2,",/)i+ 1)" Thus every elementary circuit is output.

6 82 DONALD B. JOHNSON The foregoing results show that the algorithm does indeed find all the elementary circuits of a directed graph. The bound on running time follows from the next lemma. LFMMa 3. At most O(n + e) time can elapse in a call at L3 to CIRCUIT before either the call returns or a circuit is output. Proof. First we show that no vertex can be unblocked twice in succession unless a circuit is output. Then we show that no more than O(n + e) time can elapse before some vertex is unblocked a second time. Suppose a circuit is output and then some vertex y is unblocked. By Lemma 1, as soon as v is unstacked there is a path (y v,/)2, /)k S) on which only s is on the stack. Let some vertex v, < < k, be the first vertex on this path to be put on the stack again. We see by induction on the execution of the algorithm that eventually the stack will be (s,..., v, v+,..., v_ ) and a new circuit output. Until the new circuit is output, no vertex on the path will be unstacked. Thus no vertex can be unblocked more than once before a circuit is output. Charge a unit of cost to a vertex if it is an argument to a procedure call and a unit of cost to an edge if consideration of this edge by the for loop at L1 in CIR- CUIT does not result in a procedure call. The cost of all work in the procedure CIRCUIT will be bounded by a constant times the number of units charged. For any vertex x, calls to CIRCUIT and UNBLOCK must alternate. Consequently, no more than three units can be charged to each vertex before some vertex is unblocked twice. As to edge charges, let some edge originate in vertex x. A unit may be charged to this edge only when blocked(x) is true and, once a unit is charged, x must be unblocked and blocked again before a second unit can be charged to the same edge. It follows that at most two units can be charged to any edge before some vertex is unblocked twice. [3 COlOIIAgY 2. The algorithm runs in O((n + e)(c + 1)) time and uses O(n + e) storage space plus the space used for output. Proof. The time bound follows directly from Lemma 3 and a known algorithm [6] for finding strong components in O(n + e) time. The space bound is immediate from the observation that no vertex appears more than once on any B-list. 3. Discussion of running time. We have shown that in the worst case, our algorithm is asymptotically faster than algorithms previously known. With respect to Tarjan s algorithm, a stronger statement can be made. There is a constant factor which bounds how much slower our algorithm can be compared to his on any graph, provided the same adjacency structure is used as input to both algorithms. Such a constant, of course, is implementation dependent. Its existence follows from two facts. First, the time spent by our algorithm in finding the strong k is of no greater order than the search in Tarjan s component with least vertex s >= algorithm for circuits with least vertex k, for =< k =< n. Second, if the calls to UNBLOCK are ignored, on identical adjacency structures the sequence of edge explorations generated by our algorithm is embedded in the sequence generated by Tarjan s. But for every edge in the sequence, for our algorithm there can occur at most one call to UNBLOCK. Therefore, since the search time in each algorithm is related by constant factors to the number of edge explorations, the effort spent by our algorithm in finding circuits from a given base vertex, s, is bounded by a

7 FINDING ELEMENTARY CIRCUITS 83 constant factor times the effort expended by Tarjan s algorithm for the corresponding search on the same adjacency structure for any graph. Experimental results are shown in Tables and 2. The algorithms were implemented in ALGOL W [7] and were run on an IBM 37/168 with virtual address hardware inoperative. The benefit predicted for our algorithm on worst cases is apparent in the results in Table 1. Table 2 shows superior performance by our algorithm on complete graphs as well. Although only a constant factor is involved, this second result is somewhat surprising since on complete graphs, both algorithms make the same number of edge explorations. The result, however, appears to be explained by two features of Tarjan s algorithm. He maintains two vertex stacks and tests in the innermost loop for elimination of vertices less than s. If his algorithm were redesigned to correct these problems, "he analysis of the TABLE Running times on the family of graphs of Fig. Number of vertices Number of circuits Running time IBM 37/168, second (Johnson s algorithm) (Tarjan s algorithm) Timer resolution 1/6 second. Because running times fluctuate with system load, all data shown taken from computer Results averages of two times rounded to the second decimal place. TABLE 2 Running times on complete directed graphs Number of vertices Number of circuits Running time IBM 37/168, seconds (Johnson s algorithm) (Tarjan s algorithm) , Timer resolution 1/6 second. Because running times fluctuate with system load, all data shown taken from computer Results averages of two times rounded to the second decimal place.

8 84 DONALD B. JOHNSON preceding paragraph would still hold. In both tests, the space bound of O(n + e) was confirmed. 4. Conclusions. The algorithm we have shown is faster asymptotically in the worst case than algorithms previously known. The algorithm appears particularly suited for general use because of the stronger property, which we have shown in relation to Tarjan s algorithm, of being never slower on any graph by more than a constant factor. In fact, in the tests run, our algorithm was always faster except on trivially small graphs. Acknowledgment. Credit is due to the referees for suggesting that, for comparative tests, a family of graphs be found in which the members are strongly connected and whose undirected versions are biconnected, and for a suggestion that led to an improvement, by a constant factor, in running time. REFERENCES [1] F. HARARY AND E. PALMER, Graphical Enumeration, Academic Press, New York, [2] R. TARJAN, Enumeration of the elementary circuits of a directed graph, this Journal, 2 (1973), pp [3] A. EHRENFEUCHT, L. FOSDICK AND L. OSTERWEIL, An algorithm for finding the elementary circuits of a directed graph, Tech. Rep. CU-CS-24-23, Dept. of Computer Sci., Univ. of Colorado, Boulder, [4] J. C. TIERNAN, An efficient search algorithm to find the elementary circuits of a graph, Comm. ACM, 13 (197), pp [5] H. WENBLAX, A new search algorithm for finding the simple cycles of a finite directed graph, J. Assoc. Comput. Mach., 19 (1972), pp [6] R. TARJAN, Depth-first search and linear graph algorithms, this Journal, (1972), pp [7]. R. L. Sxa ES, Algol W reference manual, Tech. Rep. STAN-CS-71-23, Computer Sci. Dept., Stanford Univ., Stanford, Calif., 1971.

### Two General Methods to Reduce Delay and Change of Enumeration Algorithms

ISSN 1346-5597 NII Technical Report Two General Methods to Reduce Delay and Change of Enumeration Algorithms Takeaki Uno NII-2003-004E Apr.2003 Two General Methods to Reduce Delay and Change of Enumeration

### each college c i C has a capacity q i - the maximum number of students it will admit

n colleges in a set C, m applicants in a set A, where m is much larger than n. each college c i C has a capacity q i - the maximum number of students it will admit each college c i has a strict order i

### {(u, w)lzlv((u, v) R & (v, w) e S)}.

SIAM J. COMPUT. Vol. 1, No. 2, June 1972 DEPTH-FIRST SEARCH AND LINEAR GRAPH ALGORITHMS* ROBERT TARJAN" Abstract. The value of depth-first search or "bacltracking" as a technique for solving problems is

### Determination of the normalization level of database schemas through equivalence classes of attributes

Computer Science Journal of Moldova, vol.17, no.2(50), 2009 Determination of the normalization level of database schemas through equivalence classes of attributes Cotelea Vitalie Abstract In this paper,

### On the k-path cover problem for cacti

On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China zeminjin@eyou.com, x.li@eyou.com Abstract In this paper we

### 136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics

### Chapter 4. Trees. 4.1 Basics

Chapter 4 Trees 4.1 Basics A tree is a connected graph with no cycles. A forest is a collection of trees. A vertex of degree one, particularly in a tree, is called a leaf. Trees arise in a variety of applications.

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### Partitioning edge-coloured complete graphs into monochromatic cycles and paths

arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edge-coloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political

### Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

### A Turán Type Problem Concerning the Powers of the Degrees of a Graph

A Turán Type Problem Concerning the Powers of the Degrees of a Graph Yair Caro and Raphael Yuster Department of Mathematics University of Haifa-ORANIM, Tivon 36006, Israel. AMS Subject Classification:

### Odd induced subgraphs in graphs of maximum degree three

Odd induced subgraphs in graphs of maximum degree three David M. Berman, Hong Wang, and Larry Wargo Department of Mathematics University of New Orleans New Orleans, Louisiana, USA 70148 Abstract A long-standing

### Finding and counting given length cycles

Finding and counting given length cycles Noga Alon Raphael Yuster Uri Zwick Abstract We present an assortment of methods for finding and counting simple cycles of a given length in directed and undirected

### Basic Notions on Graphs. Planar Graphs and Vertex Colourings. Joe Ryan. Presented by

Basic Notions on Graphs Planar Graphs and Vertex Colourings Presented by Joe Ryan School of Electrical Engineering and Computer Science University of Newcastle, Australia Planar graphs Graphs may be drawn

### Graphs and Network Flows IE411 Lecture 1

Graphs and Network Flows IE411 Lecture 1 Dr. Ted Ralphs IE411 Lecture 1 1 References for Today s Lecture Required reading Sections 17.1, 19.1 References AMO Chapter 1 and Section 2.1 and 2.2 IE411 Lecture

### Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

### SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov

Serdica Math. J. 30 (2004), 95 102 SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS Nickolay Khadzhiivanov, Nedyalko Nenov Communicated by V. Drensky Abstract. Let Γ(M) where M V (G) be the set of all vertices

### On end degrees and infinite cycles in locally finite graphs

On end degrees and infinite cycles in locally finite graphs Henning Bruhn Maya Stein Abstract We introduce a natural extension of the vertex degree to ends. For the cycle space C(G) as proposed by Diestel

### Small Maximal Independent Sets and Faster Exact Graph Coloring

Small Maximal Independent Sets and Faster Exact Graph Coloring David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science The Exact Graph Coloring Problem: Given an undirected

### COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

### COT5405 Analysis of Algorithms Homework 3 Solutions

COT0 Analysis of Algorithms Homework 3 Solutions. Prove or give a counter example: (a) In the textbook, we have two routines for graph traversal - DFS(G) and BFS(G,s) - where G is a graph and s is any

### Cycles in a Graph Whose Lengths Differ by One or Two

Cycles in a Graph Whose Lengths Differ by One or Two J. A. Bondy 1 and A. Vince 2 1 LABORATOIRE DE MATHÉMATIQUES DISCRÉTES UNIVERSITÉ CLAUDE-BERNARD LYON 1 69622 VILLEURBANNE, FRANCE 2 DEPARTMENT OF MATHEMATICS

### arxiv:1112.0829v1 [math.pr] 5 Dec 2011

How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly

### Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph

### Practice Final Exam Solutions

1 (1 points) For the following problem, the alphabet used is the standard -letter English alphabet, and vowels refers only to the letters A, E, I, O, and U (a) ( points) How many strings of five letters

### Diameter and Treewidth in Minor-Closed Graph Families, Revisited

Algorithmica manuscript No. (will be inserted by the editor) Diameter and Treewidth in Minor-Closed Graph Families, Revisited Erik D. Demaine, MohammadTaghi Hajiaghayi MIT Computer Science and Artificial

### MIX-DECOMPOSITON OF THE COMPLETE GRAPH INTO DIRECTED FACTORS OF DIAMETER 2 AND UNDIRECTED FACTORS OF DIAMETER 3. University of Split, Croatia

GLASNIK MATEMATIČKI Vol. 38(58)(2003), 2 232 MIX-DECOMPOSITON OF THE COMPLETE GRAPH INTO DIRECTED FACTORS OF DIAMETER 2 AND UNDIRECTED FACTORS OF DIAMETER 3 Damir Vukičević University of Split, Croatia

### A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries

Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do

### Planar Tree Transformation: Results and Counterexample

Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem

### 10. Graph Matrices Incidence Matrix

10 Graph Matrices Since a graph is completely determined by specifying either its adjacency structure or its incidence structure, these specifications provide far more efficient ways of representing a

### Catalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni- versity.

7 Catalan Numbers Thomas A. Dowling, Department of Mathematics, Ohio State Uni- Author: versity. Prerequisites: The prerequisites for this chapter are recursive definitions, basic counting principles,

### Graphical degree sequences and realizations

swap Graphical and realizations Péter L. Erdös Alfréd Rényi Institute of Mathematics Hungarian Academy of Sciences MAPCON 12 MPIPKS - Dresden, May 15, 2012 swap Graphical and realizations Péter L. Erdös

### Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

### Chapter 4: Trees. 2. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:

9 Properties of Trees. Definitions: Chapter 4: Trees forest - a graph that contains no cycles tree - a connected forest. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:

### PART II Algorithms for Message- Passing Systems. Section 7 Introduction Model Basic Graph Algorithms

PART II Algorithms for Message- Passing Systems Section 7 Introduction Model Basic Graph Algorithms 1 Formal Model for Message-Passing Systems There are n processes in the system: p 0,.., p n-1 Each process

### UPPER BOUNDS ON THE L(2, 1)-LABELING NUMBER OF GRAPHS WITH MAXIMUM DEGREE

UPPER BOUNDS ON THE L(2, 1)-LABELING NUMBER OF GRAPHS WITH MAXIMUM DEGREE ANDREW LUM ADVISOR: DAVID GUICHARD ABSTRACT. L(2,1)-labeling was first defined by Jerrold Griggs [Gr, 1992] as a way to use graphs

### Mean Ramsey-Turán numbers

Mean Ramsey-Turán numbers Raphael Yuster Department of Mathematics University of Haifa at Oranim Tivon 36006, Israel Abstract A ρ-mean coloring of a graph is a coloring of the edges such that the average

### Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like

### On a tree graph dened by a set of cycles

Discrete Mathematics 271 (2003) 303 310 www.elsevier.com/locate/disc Note On a tree graph dened by a set of cycles Xueliang Li a,vctor Neumann-Lara b, Eduardo Rivera-Campo c;1 a Center for Combinatorics,

### Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery

### ON THE TREE GRAPH OF A CONNECTED GRAPH

Discussiones Mathematicae Graph Theory 28 (2008 ) 501 510 ON THE TREE GRAPH OF A CONNECTED GRAPH Ana Paulina Figueroa Instituto de Matemáticas Universidad Nacional Autónoma de México Ciudad Universitaria,

### The degree, size and chromatic index of a uniform hypergraph

The degree, size and chromatic index of a uniform hypergraph Noga Alon Jeong Han Kim Abstract Let H be a k-uniform hypergraph in which no two edges share more than t common vertices, and let D denote the

### Best Monotone Degree Bounds for Various Graph Parameters

Best Monotone Degree Bounds for Various Graph Parameters D. Bauer Department of Mathematical Sciences Stevens Institute of Technology Hoboken, NJ 07030 S. L. Hakimi Department of Electrical and Computer

### The Relative Worst Order Ratio for On-Line Algorithms

The Relative Worst Order Ratio for On-Line Algorithms Joan Boyar 1 and Lene M. Favrholdt 2 1 Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark, joan@imada.sdu.dk

### Efficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.

Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity

### 12 Abstract Data Types

12 Abstract Data Types 12.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define the concept of an abstract data type (ADT).

### COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS Alexander Burstein Department of Mathematics Howard University Washington, DC 259, USA aburstein@howard.edu Sergey Kitaev Mathematics

### Institut für Informatik Lehrstuhl Theoretische Informatik I / Komplexitätstheorie. An Iterative Compression Algorithm for Vertex Cover

Friedrich-Schiller-Universität Jena Institut für Informatik Lehrstuhl Theoretische Informatik I / Komplexitätstheorie Studienarbeit An Iterative Compression Algorithm for Vertex Cover von Thomas Peiselt

### OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION Sérgio Pequito, Stephen Kruzick, Soummya Kar, José M. F. Moura, A. Pedro Aguiar Department of Electrical and Computer Engineering

### The Prime Numbers. Definition. A prime number is a positive integer with exactly two positive divisors.

The Prime Numbers Before starting our study of primes, we record the following important lemma. Recall that integers a, b are said to be relatively prime if gcd(a, b) = 1. Lemma (Euclid s Lemma). If gcd(a,

### The LCA Problem Revisited

The LA Problem Revisited Michael A. Bender Martín Farach-olton SUNY Stony Brook Rutgers University May 16, 2000 Abstract We present a very simple algorithm for the Least ommon Ancestor problem. We thus

### Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

### Data Structure with C

Subject: Data Structure with C Topic : Tree Tree A tree is a set of nodes that either:is empty or has a designated node, called the root, from which hierarchically descend zero or more subtrees, which

### Analysis of Algorithms, I

Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

### Chapter 6 Planarity. Section 6.1 Euler s Formula

Chapter 6 Planarity Section 6.1 Euler s Formula In Chapter 1 we introduced the puzzle of the three houses and the three utilities. The problem was to determine if we could connect each of the three utilities

### ON DEGREES IN THE HASSE DIAGRAM OF THE STRONG BRUHAT ORDER

Séminaire Lotharingien de Combinatoire 53 (2006), Article B53g ON DEGREES IN THE HASSE DIAGRAM OF THE STRONG BRUHAT ORDER RON M. ADIN AND YUVAL ROICHMAN Abstract. For a permutation π in the symmetric group

### Introduction to Flocking {Stochastic Matrices}

Supelec EECI Graduate School in Control Introduction to Flocking {Stochastic Matrices} A. S. Morse Yale University Gif sur - Yvette May 21, 2012 CRAIG REYNOLDS - 1987 BOIDS The Lion King CRAIG REYNOLDS

### Class One: Degree Sequences

Class One: Degree Sequences For our purposes a graph is a just a bunch of points, called vertices, together with lines or curves, called edges, joining certain pairs of vertices. Three small examples of

### 1 Definitions. Supplementary Material for: Digraphs. Concept graphs

Supplementary Material for: van Rooij, I., Evans, P., Müller, M., Gedge, J. & Wareham, T. (2008). Identifying Sources of Intractability in Cognitive Models: An Illustration using Analogical Structure Mapping.

### Graph. Consider a graph, G in Fig Then the vertex V and edge E can be represented as:

Graph A graph G consist of 1. Set of vertices V (called nodes), (V = {v1, v2, v3, v4...}) and 2. Set of edges E (i.e., E {e1, e2, e3...cm} A graph can be represents as G = (V, E), where V is a finite and

### 4 Basics of Trees. Petr Hliněný, FI MU Brno 1 FI: MA010: Trees and Forests

4 Basics of Trees Trees, actually acyclic connected simple graphs, are among the simplest graph classes. Despite their simplicity, they still have rich structure and many useful application, such as in

### When is a graph planar?

When is a graph planar? Theorem(Euler, 1758) If a plane multigraph G with k components has n vertices, e edges, and f faces, then n e + f = 1 + k. Corollary If G is a simple, planar graph with n(g) 3,

### Complexity and Completeness of Finding Another Solution and Its Application to Puzzles

yato@is.s.u-tokyo.ac.jp seta@is.s.u-tokyo.ac.jp Π (ASP) Π x s x s ASP Ueda Nagao n n-asp parsimonious ASP ASP NP Complexity and Completeness of Finding Another Solution and Its Application to Puzzles Takayuki

### 1 Basic Definitions and Concepts in Graph Theory

CME 305: Discrete Mathematics and Algorithms 1 Basic Definitions and Concepts in Graph Theory A graph G(V, E) is a set V of vertices and a set E of edges. In an undirected graph, an edge is an unordered

### COLORED GRAPHS AND THEIR PROPERTIES

COLORED GRAPHS AND THEIR PROPERTIES BEN STEVENS 1. Introduction This paper is concerned with the upper bound on the chromatic number for graphs of maximum vertex degree under three different sets of coloring

### The Open University s repository of research publications and other research outputs

Open Research Online The Open University s repository of research publications and other research outputs The degree-diameter problem for circulant graphs of degree 8 and 9 Journal Article How to cite:

### Every tree contains a large induced subgraph with all degrees odd

Every tree contains a large induced subgraph with all degrees odd A.J. Radcliffe Carnegie Mellon University, Pittsburgh, PA A.D. Scott Department of Pure Mathematics and Mathematical Statistics University

### 6.852: Distributed Algorithms Fall, 2009. Class 2

.8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election

### Finding the Shortest Move-Sequence in the Graph-Generalized 15-Puzzle is NP-Hard

Finding the Shortest Move-Sequence in the Graph-Generalized 15-Puzzle is NP-Hard Oded Goldreich Abstract. Following Wilson (J. Comb. Th. (B), 1975), Johnson (J. of Alg., 1983), and Kornhauser, Miller and

### A 2-factor in which each cycle has long length in claw-free graphs

A -factor in which each cycle has long length in claw-free graphs Roman Čada Shuya Chiba Kiyoshi Yoshimoto 3 Department of Mathematics University of West Bohemia and Institute of Theoretical Computer Science

### Crossing the Bridge at Night

A1:01 Crossing the Bridge at Night Günter Rote Freie Universität Berlin, Institut für Informatik Takustraße 9, D-14195 Berlin, Germany rote@inf.fu-berlin.de A1:02 August 21, 2002 A1:03 A1:04 Abstract We

### Fundamentals of Media Theory

Fundamentals of Media Theory ergei Ovchinnikov Mathematics Department an Francisco tate University an Francisco, CA 94132 sergei@sfsu.edu Abstract Media theory is a new branch of discrete applied mathematics

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

### A simple criterion on degree sequences of graphs

Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree

### Computer Science Department. Technion - IIT, Haifa, Israel. Itai and Rodeh [IR] have proved that for any 2-connected graph G and any vertex s G there

- 1 - THREE TREE-PATHS Avram Zehavi Alon Itai Computer Science Department Technion - IIT, Haifa, Israel Abstract Itai and Rodeh [IR] have proved that for any 2-connected graph G and any vertex s G there

### Homework 15 Solutions

PROBLEM ONE (Trees) Homework 15 Solutions 1. Recall the definition of a tree: a tree is a connected, undirected graph which has no cycles. Which of the following definitions are equivalent to this definition

### Theorem A graph T is a tree if, and only if, every two distinct vertices of T are joined by a unique path.

Chapter 3 Trees Section 3. Fundamental Properties of Trees Suppose your city is planning to construct a rapid rail system. They want to construct the most economical system possible that will meet the

### Competitive Analysis of On line Randomized Call Control in Cellular Networks

Competitive Analysis of On line Randomized Call Control in Cellular Networks Ioannis Caragiannis Christos Kaklamanis Evi Papaioannou Abstract In this paper we address an important communication issue arising

### Matthias F.M. Stallmann Department of Computer Science North Carolina State University Raleigh, NC 27695-8206

Matthias F.M. Stallmann Department of Computer Science North Carolina State University Raleigh, NC 27695-8206 August, 1990 UNIFORM PLANAR EMBEDDING IS NP-COMPLETE* MATTHIAS F.M. STALLMANN Key Words. planar

### Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS

Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS 1.1.25 Prove that the Petersen graph has no cycle of length 7. Solution: There are 10 vertices in the Petersen graph G. Assume there is a cycle C

### Cacti with minimum, second-minimum, and third-minimum Kirchhoff indices

MATHEMATICAL COMMUNICATIONS 47 Math. Commun., Vol. 15, No. 2, pp. 47-58 (2010) Cacti with minimum, second-minimum, and third-minimum Kirchhoff indices Hongzhuan Wang 1, Hongbo Hua 1, and Dongdong Wang

### Discrete Mathematics (2009 Spring) Induction and Recursion (Chapter 4, 3 hours)

Discrete Mathematics (2009 Spring) Induction and Recursion (Chapter 4, 3 hours) Chih-Wei Yi Dept. of Computer Science National Chiao Tung University April 17, 2009 4.1 Mathematical Induction 4.1 Mathematical

### Ph.D. Thesis. Judit Nagy-György. Supervisor: Péter Hajnal Associate Professor

Online algorithms for combinatorial problems Ph.D. Thesis by Judit Nagy-György Supervisor: Péter Hajnal Associate Professor Doctoral School in Mathematics and Computer Science University of Szeged Bolyai

### Euler Paths and Euler Circuits

Euler Paths and Euler Circuits An Euler path is a path that uses every edge of a graph exactly once. An Euler circuit is a circuit that uses every edge of a graph exactly once. An Euler path starts and

### CHAPTER II THE LIMIT OF A SEQUENCE OF NUMBERS DEFINITION OF THE NUMBER e.

CHAPTER II THE LIMIT OF A SEQUENCE OF NUMBERS DEFINITION OF THE NUMBER e. This chapter contains the beginnings of the most important, and probably the most subtle, notion in mathematical analysis, i.e.,

### Exact Polynomial-time Algorithm for the Clique Problem and P = NP for Clique Problem

xact Polynomial-time Algorithm for the Clique Problem and P = NP for Clique Problem Kanak Chandra Bora Department of Computer Science & ngineering Royal School of ngineering & Technology, Betkuchi, Guwahati-7810,

### CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

### On the Relationship between Classes P and NP

Journal of Computer Science 8 (7): 1036-1040, 2012 ISSN 1549-3636 2012 Science Publications On the Relationship between Classes P and NP Anatoly D. Plotnikov Department of Computer Systems and Networks,

### Distributed Computing over Communication Networks: Maximal Independent Set

Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.

### 8. Matchings and Factors

8. Matchings and Factors Consider the formation of an executive council by the parliament committee. Each committee needs to designate one of its members as an official representative to sit on the council,

### A simple existence criterion for normal spanning trees in infinite graphs

1 A simple existence criterion for normal spanning trees in infinite graphs Reinhard Diestel Halin proved in 1978 that there exists a normal spanning tree in every connected graph G that satisfies the

### Persistent Data Structures

6.854 Advanced Algorithms Lecture 2: September 9, 2005 Scribes: Sommer Gentry, Eddie Kohler Lecturer: David Karger Persistent Data Structures 2.1 Introduction and motivation So far, we ve seen only ephemeral

### THE 0/1-BORSUK CONJECTURE IS GENERICALLY TRUE FOR EACH FIXED DIAMETER

THE 0/1-BORSUK CONJECTURE IS GENERICALLY TRUE FOR EACH FIXED DIAMETER JONATHAN P. MCCAMMOND AND GÜNTER ZIEGLER Abstract. In 1933 Karol Borsuk asked whether every compact subset of R d can be decomposed

### Graph Theory Notes. Vadim Lozin. Institute of Mathematics University of Warwick

Graph Theory Notes Vadim Lozin Institute of Mathematics University of Warwick 1 Introduction A graph G = (V, E) consists of two sets V and E. The elements of V are called the vertices and the elements

### Degree Hypergroupoids Associated with Hypergraphs

Filomat 8:1 (014), 119 19 DOI 10.98/FIL1401119F Published by Faculty of Sciences and Mathematics, University of Niš, Serbia Available at: http://www.pmf.ni.ac.rs/filomat Degree Hypergroupoids Associated

### Relations Graphical View

Relations Slides by Christopher M. Bourke Instructor: Berthe Y. Choueiry Introduction Recall that a relation between elements of two sets is a subset of their Cartesian product (of ordered pairs). A binary

### CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992

CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992 Original Lecture #6: 28 January 1991 Topics: Triangulating Simple Polygons

### A note on properties for a complementary graph and its tree graph

A note on properties for a complementary graph and its tree graph Abulimiti Yiming Department of Mathematics Institute of Mathematics & Informations Xinjiang Normal University China Masami Yasuda Department