You are on page 1of 63

Graph Theory Diskrete Strukturen II

Prof. Dr. Stefan Felsner Wintersemester 2011

Notes by Tobias Buchwald and Hendrik Mller 12th December 2011

Chapter 1

Introduction
Denition 1.1 (Graph). Abstand A Graph is an ordered pair G = (V, E) with vertex set V, |V | = n and edge set ( ) V E, |E| = m, E (The 2-element subsets of V ). 2 Example. Abstand 1. V = {1, 2, 3, 4, 5, 6}, E = {{1, 2}{1, 3}{1, 4}{1, 5}{2, 4}{2, 6}{3, 4}{4, 6}{5, 6}}
1 2 3 6 5 4

Figure 1.1: Example 1 This is a drawing of G = (V, E) , but there are also different drawings! 2. V = [2]3 , the edges are sets of vertices that differ in exactly one component gives us the cube!
011 001 101 111 cube with hamilton path from 0 to 1

010 000 100

110

In general, we get the d-dim hypercube from V = [2]n . This has relations to the boolean lattice and applications in computer science. Questions: is there a hamilton path (for every d)? yes 2

3 is there a (hamilton) path starting in ending in ? 0 1 3. Petersen Graph (n=10, m=15) V = {(1, i), (2, i) : i = 1, . . . , 5}, E = {{(1, 1), (2, 1)}, {(2, 1), (2, 3)}, . . . }
$(1,1)$

$(2,1)$ $(1,5)$ $(2,5)$ $(2,2)$ $(1,2)$

$(2,4)$ $(2,3)$

$(1,4)$

$(1,3)$

Figure 1.2: The Petersen Graph Another description of Petersen: ( ) [5] V = , E = {{A, B} : A, B V , A B = } 2
$(1,2)$

$V$

$(3,5)$ $(3,4)$ $(1,5)$ $(2,3)$ $(4,5)$

$(1,4)$ $(2,4)$

$(2,5)$

$(1,3)$

Figure 1.3: Still the Petersen Graph Denition 1.2 (Isomorphism). Abstand Two graphs G = (V, E) and G = (V , E ) are isomorphic (G G ) iff bijection = : V V such that u, v E {(u), (v)} E Isomorphisms of G and G are called automorphisms. Example (Petersen). Take Sn , ({i, j}) = {(i), (j)}, ( ) ( ) [5] [5] this is a bijection 2 2 How many graphs are there? Interpretation 1: Fix V with |V | = n. You have 2( 2 ) choices of E
n

(V )
2

4
$1$ $1$

CHAPTER 1. INTRODUCTION
$1$ $1$

$5$

$2$

$5$

$2$

$5$

$2$

$5$

$2$

$4$

$3$

$4$

$3$

$4$

$3$

$4$

$3$

Figure 1.4: Isomorphic Graphs

K1

K2

K3

K4 1

K5

Figure 1.5: K1 - K5 Interpretation 2: We can try to count nonisomorphic graphs. For this we need P olya T heory which is more complicated - the explicit numbers for n 14 are known. Some important graphs: Kn complete graph on n Vertices Kn,m complete bipartite graph with parts of size m and n Pn path on n vertices (length n 1) Cn , n 3 cycle of length n Trees graphs that do not contain cycles but contain a path between any two vertices Denition 1.3 (Homomorphism). Let G = (V, E), G = V , E ). : V V is a homomorphism if {u, v} E {(u), (v)} E . Questions. For which parameters can we nd homomorphisms from: Kn1 Kn2 , Kn Ks,t , Cs Pt , Kn,m T ree , Cs Kt ? A homomorphism Cs Pt exists s even, t 2 and no others. Denition 1.4 (Subgraph). A graph H = (W, F ) is a subgraph of G = (V, E) iff W V and F E.
n vertices

m vertices bipartite graph

5
P6

C6
C2 k P2 even odd

Figure 1.6: from C2k to P2 H = (W, F ) is an induced subgraph of G = (V, E) iff W V and E We denote this by H = G[ W ] (W )
2

= F.

Questions. When do we nd subgraph/induced subgraph relations between graph classes like: Ks,t Kn , Ks,t = Kn [W ] , T Kn,m , T = Kn,m[W ] , (for T a tree on s vertices) We can think of various applications of graphs: Networks printed circuit boards subway systems electricity, gas, water networks air trafc social networks, web graph Matrices For G = (V, E) we can build the adjacency matrix M with mi,j { 1 if {vi , vj } E = 0 else

our normal graphs are 0,1-matrices which are symmetric and have only 0 at the diagonal. if you allow entries in N and free the diagonal, you get a multigraph with loops if you disregard symmetry, you get directed edges if you disregard symmetry and take entries in R, you get weighted directed graphs

CHAPTER 1. INTRODUCTION

Denition 1.5. Let v be a vertex of G = (V, E). We dene: E(v) = set of edges containing v N (v) = {w V : {v, w} E} i.e. set of neighbors of v d(v) = |E(v)| the degree of vertex v Lemma 1.6 For all graphs we have the equation:
vV

d(v) = 2|E|

. Proof. We proof this double counting. Let I = {(v, e) : v V, e E, v e} the set of incidences. Then |I| = |E(v)| = d(v)
vV vV

and |I| =

eE

|{v V : v E}| =

eE

2 = 2|E|

Another way of looking at this problem is to count the 1s of the incidence matrix rowwise and columnwise. Corollary 1.7 Every graph has an even number of vertices of odd degree. Proof.
d(v)even

d(v) +

d(v)odd

d(v) = 2|E|

d(v)odd

d(v) = 2|E|
even

d(v)even

d(v)

even

so

d(v)odd

d(v) also has to be even.

Chapter 2

geometric and topological graphs, degree sequences


2.1 Geometric Graphs
geometric graphs are drawn in the plane vertices are points in general position, i.e. no 3 points on a line edges are connecting line segments Example.

the relative position of edges in a geometric graph is quite rich, they can: just intersect intersect in a vertex be disjoint convex hull of size 4 convex hull of size 3 Theorem 2.1 If G is a graph without disjoint edges then: |E(G)| |V (G)| 7

8CHAPTER 2. GEOMETRIC AND TOPOLOGICAL GRAPHS, DEGREE SEQUENCES

conv hull of size 3

conv hull of size 4

Figure 2.1: extremal examples for the theorem Note:. This result is best possible! Proof. We put a hen on each vertex, and let her lay an egg on the clockwise edge of the largest angle of her vertex.
egg

Claim. every vertex has an edge. if the edge is incident to a vertex of degree 1, it is true Suppose the claim was not true, so edge e got no egg. But then the line of e is seperating the two edges with the eggs of its incident vertices, so they have to be disjoint .
e

< 180 , < 180 (both are not largest)

2nd Proof: We observe that if d(v) 2v then 2|E| = vV d(v) vV 2 = 2|V | (we are done) If there is an edge with d(v) 3 e incident to v such that both halfplanes of the seperating line le on which e lies, contain an edge. Claim. If w is the other vertex of e then d(w) = 1. (Otherwise there would be two disjoint edges, for all other edges of w can only lie in one of the halfspaces and hence not touch the edge in the other one)

2.2. TOPOLOGICAL GRAPHS

le

good choice

delete w and e and continue, at the end we get to the situation above. An Application: Let P be a set of points in the plane. Questions. How many pairs q, p P can realize the maximum distance?
n=4 dist 4 times 1 dist 2 2 times

Observation:. If p, q and p , q realize the max distance of P S(p, q) S(p , q ) = , segments intersect If P is a point set and G(P ) has as edges those p, q realizing a max distance, then G(P ) is a geometric graph without disjoint edges |EG (P )| |P | . Let Pa be a set of n points in the plane, D some distance. Questions. How many pairs p, q P can realize the distance D? (wlog D = 1 - unit distance graphs.)

This is a 4dim cube (n = 16, m = 32), is a unit-distance graph! > a result of Erds (43) : m n1+ log log n , which is superlinear. > Szemerdi / Trotter (1984) : m n 3 n2
4 c

2.2 Topological Graphs


A topological Graph is a graph where the vertices are points in the plane, and the edges are curves without self-intersection, such that two edges share at most one point. A

10CHAPTER 2. GEOMETRIC AND TOPOLOGICAL GRAPHS, DEGREE SEQUENCES Thrackle is a topological graph without disjoint edges.

Conjecture (Conway in the 60s) A thrackle has at most as many edges as vertices. This Problem is still open: 97 : |E| 2|V | 3 improved: |E| 3 (|V | 1) 2 2011: |E| 1.47 . . . |V | Proposition 2.2 Every cycle of length k > 4 is a thrackle. Proof. Initial cases: k = 5, k = 6:

Initial cases k = 5, k = 6

step k k + 2 :

2.3 Degree Sequences


In the graph G with degrees d1 . . . dn we look at the sorted sequence d = (d1 d2 ... dn ) . Example. Questions. Which sequences d are degree sequences of graphs, so called graphical sequences ?

2.3. DEGREE SEQUENCES


3 4 3

11

3 3 4

Figure 2.2: t he degree sequence of G is (4, 4, 3, 3, 3, 3, 2) Theorem 2.3 (Havel-Hakimi) d =(d1 , . . . , dn ) is graphical d =(d2 1, d3 1, . . . , dd1 +1 1, dd1 +2 , . . . , ddn ) is graphical. Example. (4, 4, 3, 3, 3, 3, 2) (3, 2, 2, 2, 3, 2) = (3, 3, 2, 2, 2, 2) (2, 1, 1, 2, 2) = (2, 2, 2, 1, 1) (1, 1, 1, 1) which is obviously a graphical sequence. Example.

d = (4, 4, 3, 3, 3, 1)

d = (3, 2, 2, 1)

d = (1, 1, 1, 1)
.

Proof. "": Let G be a graph realizing d with V (G ) = U W where U contains the vertices of deg d2 1 . . . dd1 +1 1 and W the vertices of deg dd1 +2 . . . dn . To get to the graph G just add a new vertex v and connect it to all members of U d(v) = d1 , this graph has the degree sequence d. "": For a graph G realizing d , let v be of degree d1 and U be vertices of degrees d2 . . . dd1 +1 1. If N (v) = U , then G[V \{v}] is realizing d 2. If N (v) = U , then u U such that {u, v} E and w U such that / / {w, v} E . For d(u) d(w)v such that {u, v } E, {w, v } E / switch the edges and nonedges , i.e. delete {w, v}, {u, v } and take instead {w, v }, {v, u}

Consider these "switches" as a relation on the set of all graphs on n vertices. This yields a graph on the set of graphs, the switch graph.

12CHAPTER 2. GEOMETRIC AND TOPOLOGICAL GRAPHS, DEGREE SEQUENCES


u v u

v w

v w

Figure 2.3: a switch Observation:. The switch graph on the set of graphs with degree sequence d is connected. Theorem 2.4 (Erds-Gallai)
n i=1 k i=1

d = (d1 d2 dn ) is graphical

di is even and di k(k 1) +


j>k

min(k, dj )k = 1, . . . , n

n Proof. "" : G is a graph with degree sequence d. Of course the rst part i=1 di = 2|E| holds for all graphs. Second part : We look at the vertices v1 , . . . , vk with ( ) i ) = di and count edges. deg(v Inside the set V = {v1 , . . . , vk } there can be at most k edges, and since every edge 2 counts twice we get the k(k 1). For vertices vj V , j > k , the number of edges connecting vj to V can not be higher than k or than the degree of vj , so we get the 2nd part of the formula. "" : this direction is more complicated (not proved here), the idea is to use the step from Haval-Hakimi Theorem for an induction.

Chapter 3

Connectedness
3.1 Paths and Cycles
Denition 3.1. A sequence v1 e1 v2 e2 . . . ek1 vk with vi ei and vi+1 ei (and vi = vj ) is called a walk in G.
2 e 1 f d 5 g c 4 h b a 3 walk: 1a2h4f1g4d5d4g1 trail: 1,2,4

If the graph is simple (no multiple edges) then we can omit the edges in the description of a walk. A walk that uses each edge at most once is called a trail. A walk that uses each vertex at most once is called a path. A trail with v1 = vk is a cycle. A path with v1 = vk is a circle. The length of a path or circle is dened as the number of edges. Observation:. Every path is a trail.

A walk from v1 to vk contains a trail from v1 to vk . A trail from v1 to vk contains a path from v1 to vk . Let (G) = min(deg(v) : v V ). Lemma 3.2 Every graph G contains a path of length (G) and (if (G) 2) a circle of length (G). 13

14

CHAPTER 3. CONNECTEDNESS

Proof. (G) = 0, 1 OK For (G) 2: Start at any vertex, always continue to a neighbor that is not yet in the path. If this is impossible, the number of vertices on the path deg(vleast ) + 1 (G) + 1. For the circle restrict the path constructed to the part between the rst neighbor of vlast and vlast . Denition 3.3. u, v vertices of G. We dene: dist(u,v)= min( length of a u v path inG). The distance is a metric on V V . diam(G) = maxu,vV dist(u, v) (diameter) rad(G) = minu (maxv dist(u, v)) (radius). It holds rad(G) diam(G) 2rad(G). girth(G) = min. length of a cycle in G. If there is no cycle, the girth can be set to . Lemma 3.4 If G contains a cycle, then girth(G) 2 diam(G) + 1 Proof. Take a cycle C of length girth(G) = k. If k > 2diam(G) + 1 2 vertices of C dene 2 arcs on C, at least one of them of length> diam(G). But then you can use the shortest path between u and v (which has length diam(G)) to nd a shorter cycle . Observation:. The bound is best possible: Consider G = C2k+1 , then diam(G) = k, girth(G) = 2k + 1.

3.2 Connectivity
G is connected, ifu, v V path from u to v. Connected Components of G are maximal connected induced subgraphs of G. A seperator is a subset S V such that G[V \S] is not connected or |V \ S| = 1. Denition 3.5. The (vertex) connectivity (G) is the minimum cardinality of a seperator of G. Example. Pn (path) Cn (cycle) Kn,m Kn Qd (d-dim qube) (Pn ) = 1 (n 2) (Cn ) = 2 (n 3) (Kn,m ) = min(m, n) (n + m 3, n 1, m 1) (Kn ) = n 1 (Qd ) d

Observation:. (G) (G) Proof. If v is a vertex with minimal degree, then N (v) is a seperator. Proposition 3.6 If u, v V there are k (internally) disjoint u-v-paths (G) k.

3.2. CONNECTIVITY

15

Proof. A seperator disconnects u and v , so it has to intersect each u-v-path. There are k disjoint paths, so |S| k. Denition 3.7. A cut is a subset A E such that Ga = (V, E \ A) is disconnected. The edge connectivity (G) is the minimal cardinality of a cut. Particularly interesting cuts are vertex-induced. S V then [S] = {e E : e S = , e S = }. Proposition 3.8 (G) (G) (G) Proof. If we take a vertex v of min degree, [{v}] is a cut of size size (G), so (G) (G). For the rst inequality, we take a minimal cut F , a component H of G \ F and S V (H) the vertices incident to an edge of F . If S = V (H) S is a seperator with |S| |F | = (G). If S = V (H) choose an x S , N (x) is a seperator show that |N (x)| |F |: |N (x)| = |{(x, v) E}| = |{(x, v) E : v S}|
every v of an edge of this class is incident to some edge in F

+ |{(x, v) E : v S}| /
those edges are in F

Proposition 3.9 If for all u, v V there are k edge disjoint paths from u to v (G) k. Example. Here (G) = 1 , (G) = 2 , (G) = 3 . Fact: If G is 3-regular, then (G) = (G). But for higher regularity this is not true.
(G) = 1 (G) = 2 (G) = 3

Example (4-regular). Now (G) = 2 but (G) = 4: We have the two cycles through all vertices (marked blue and red here) and every cut contains at least two edges from both of these so every edge has at least 4 edges.

(G) = 2, (G) = 4

Figure 3.1: In the black circle you see the size 2 seperator

16 Theorem 3.10 (Menger)

CHAPTER 3. CONNECTEDNESS

(G) = k u, v V there are k disjoint u, v-paths (G) k u, v V there are k disjoint u, v-paths For u, v V we dene G (u, v) = maximum number of disjoint u, v-paths, and G (u, v) = minimum size of a u, v-seperating seperator. Observation:. G (u, v) G (u, v) Proposition 3.11 (u, v) E G (u, v) = G (u, v) / Proof. Let G (u, v) = k. case 1: Every edge of G is incident to u or v. Since G (u, v) = k k vertices adjacent to u and v. These vertices dene k disjoint u, v-paths, so G (u, v) G (u, v). case 2: edge (x, y) = e with {x, y} {u, v} = . 2.1) G\e (u, v) = k = G (u, v) apply induction 2.2) G\e (u, v) < G (u, v) there is a seperator S of size k 1 in G \ e, S is not seperating in G x, y are in different components. So consider 2 smaller graphs: apply induction to get k disjoint paths in each of the two graphs and glue

Gu x v

Gv v u

them together.

Proof of the theorem. "": (easy) If there are k disjoint paths between every two vertices, then of course a seperator has to contain at least one vertex of each path. "": Since G = k G (u, v) ku, v V . If (u, v) E = = G (u, v) k , / = so there are k disjoint paths. If (u, v) E consider G \ (u, v) = G . If (G ) k 1 then we are done: by induction we get k 1 disjoint u, v-paths and the edge (u, v) is the kth. Claim: Indeed (G ) k 1. If not, then there is a seperator S with |S| < k 1 , |V | k + 1 . Combining the two, we get |V \ S| 3. Now S together with at most one of u and v is a seperator of G of size < k.
P rop.

3.2. CONNECTIVITY

17

So we can think of 8 versions of Mengers Theorem, if we combine the following local (u, v) global(all pairs) properties: vertex connectivity edge connectivity undirected graphs directed graphs Example. G = (V, E) directed graph, u, v V . The min number of edges that have to be removed to destroy all u v paths = max number of pairwise edgedisjoint u v paths. Theorem 3.12 (Knig-Egervary) Given a bipartite graph, size of a maximum matching = size of a minimum vertex cover. (Remind: A Matching is a set of pairwise disjoint edges, a Vertex Cover is a set of vertices meeting all edges of the graph) A proof was given in the combinatorics lecture last semester and can be found in the lecture notes. But the local directed edge-connectivity version of Mengers Thm also implies Knig-Egervary: For a directed bipartite graph H, we see that pairwise edgedisjoint u, v-paths correspond to a matching in H, and a u, v-cut to a vertex cover. Claim. F E is a min u, v-cut F E such that F only contains (u, x) and (y, v) edges, is a u, v-cut and |F | |F |. This is only one example for the transformations between classical duality theorems like Menger, Knig-Egervary, Max Flow/Min Cut ...

Chapter 4

Trees and Forests


Denition 4.1. A forest is a graph without cycles. A tree is a connected forest. Lemma 4.2 Every nite tree with n 2 vertices has a leaf (a vertex of degree 1). Proof. Just start at a vertex v and walk. Since the graph is cycle free you nd a new vertex in every step, and when you get stuck (you do because its nite) you found a leaf. Proposition 4.3 Any two of the following conditions imply the third: 1. T is cycle free 2. T is connected 3. |E| = |V | 1 Proof. 1. + 2. : T is a tree, has a leaf (induction) 2. + 3. a component with k vertices and k edges, but then there is a cycle in this component. 1. + 3. if we assume 2. we get a contradiction (remove edges to get cycle free, you get a tree with to few edges)

4.1 spanning trees


Denition 4.4. Let G = (V, E) be a connected graph. For F E such that T = (V, F ) is connected and cycle free, we call T a spanning tree of G. Lemma 4.5 If G = (V, E) is connected, then there is a spanning tree for G. Proofs. We can do different algorithmic constructions to nd a spanning tree. 18

4.1. SPANNING TREES


1. F E = {e1 , . . . , em } for i=1 to m do if F + e is cycle free then F ei end if end for return F

19

Claim: (V, F ) is a tree. : It is cycle free by construction, and it is connected: if not, (V, F ) has different components. In E there are edges connecting different components of (V, F ) (G is connected). But from the construction we know that the edges E F are closing cycles, so there has to be an other edge connecting / the components . 2. F E E = {e1 , . . . , em } for i = 1 to m do if F ei is connected then F F ei end if end for return F Claim: (V, F ) is a tree. : It is connected by construction, and it is cycle free: if not, consider a cycle C F and take the edge ei with the smallest index i from the cycle. When this edge was considered in the algorithm, C was part of F . So F ei would have been connected and ei removed. 3. graph searching: S V starting vertex R S //seen vertices Q S //seen but not nished F //edges of the tree while Q = do v choose(Q) K N (v) \ R //unseen neighbors of v for all w K do F F + (v, w) R R + K, Q Q + K QQv end for end while return F Example. BILD fuer Beispiel Claim: (V, F ) is a tree. :

20

CHAPTER 4. TREES AND FORESTS


Connectedness: In the algorithm F is always spanning R, and since G is connected every vertex will eventually be in R at some point. Cycle free: a new edge in this algo is always connecting to a leaf ad thus can not close a cycle.

Remark. The rst two constructions are related to MST algorithms. The MST problem: w : E R+ given, we look for F E such that (V, F ) is a tree and w(F ) := eF w(e) is minimized. There are also connections to matroids. Remark. Important variants of graph searching are obtained by specifying the choice of v from Q. If you choose "rst in - rst out" (i.e. Q is a queue) you get breadth rst search (BFS). If you choose "rst in - last out" (i.e. Q is a stack) you get the depth rst search (DFS).

4.1.1 Application in winning strategies


Example (Bridg-it). This is a game for two players. The board consists of black and white pebbles

The board of the Bridg-it game The connections are the result of the show match played in the lecture: White - Prof Felsner, Black - Bjrn White began the game and obviously won it.

The white player has to connect top and bottom, the black player left and right. A move is to connect two neighbor pebbles of the players color, while the edges are not allowed to cross. Observation:. There is no draw! If white doesnt connect, let T be the set of white pebbles connected to the top, and B the ones connected to the bottom. If T = B, we can nd a path for black between T and B. Observation:. If white begins, there is no winning strategy for black Proof. suppose there is one, then black can steal it : Interpret the rst white edge as virtual/nonexisting. This reverts the role of rst and second, so white could play the winning strategy for the second player and wins. If the virtual edge is called by the strategy, white makes it real and picks a new virtual edge. A winning strategy for white based on spanning trees Here red is a spanning tree and blue is almost a spanning tree(only one edge missing).

4.2. COUNTING TREES

21

Figure 4.1: a helper structure for the winning strategy (initial status) When black picks an edge remove it from the helper graph. When white picks a red/blue edge add the second color (make it green) With the move, white now always has to make sure, that red and blue are two spanning trees. This is possible: Black takes a single colored edge one tree stays intact, the other can be repared with one edge of the other(which is still a spanning tree). Example (Shannons swithing game). The board is a graph G = (V, E) with two special vertices s, t. Players: Join vs Cut The players alternate in picking edges: Join makes edges stable (unremovable), Cut removes edges. The aim of Join is to produce a stable s, t-path, Cut tries to disconnect s and t. Observation:. There is no draw! Proof. suppose the game ends in a draw all edges have been made stable or removed. Look at G = (V, Estable ) either there is an s, t-path (Join was winning) or s, t are in different components (Cut was winning). Theorem 4.6(a) If H = G[W ] with s, t W such that H has 2 disjoint spanning trees, then Join has a winning strategy. (b) If not (a), but there is H = G[W ] with s, t W such that H + (s, t) has two disjoint spanning trees then the player who starts has a winning strategy (c) If not (a) and not (b) , then Cut can win (its winning strategy is more involved and not shown here)

4.2 Counting Trees


Theorem 4.7 (Cayley) #spanning trees of Kn = nn2 Example.

22

CHAPTER 4. TREES AND FORESTS

4 trees

4! 2

= 12 trees

Figure 4.2: t here are 16 = 42 spanning trees in the K4

Proof. (Clarke - rened count+recursion) C(n, k) = # trees where vertex n has degree k, T (n) = # of trees .Obvious:
n1 k=1

T (n) =

C(n, k)

C(n, n 1) = 1 Lemma 4.8 (n 1 k)C(n, k) = (n 1)kC(n, k + 1) Proof. (via bijective construction) LHS: Take a tree where n has degree k and there choose a vertex that is not connected to n The red one in the picture). RHS: Take a tree where n has degree k + 1 and then choose a special vertex v = n (n 1 choices, its the blue one in the picture) and one of the k neighbors of n such that v is not in its subtree. The bijection is shown in the image:
put tree with red root below the blue vertex n n

put tree with red root below n and mark the blue vertex (the blue could also be a root)

We now have to do some computation:

4.2. COUNTING TREES

23

C(n, k) = (n 1)

k C(n, k + 1) nk1 k k+1 k+2 n2 = (n 1)(nk1) ... C(n, n 1) nk1 nk2 nk3 1
=1

(n 2)! = (n 1)(nk1) (k 1)!(n k 1)! ( ) n2 = (n 1)(nk1) nk1 Now we can compute T (n) as: T (n) =
n1 ( k=1

) n2 (n 1)(nk1) nk1 ) n2 (n 1)l l

(n2) (

l=0

= ((n 1) + 1)n2 = nn2

Proof. (Joyal) We count maps f : [n] [n], there are nn maps. Each map corresponds to a cycleforest. x: 1 f (x) : 3 2 3 4 11 5 5 5 12
12 3 1 4 8 5 9 14 7 10 2 6 13

6 7 8 9 10 11 5 7 5 6

11 12 11 3

13 6

14 3

11

Vertices on cycles are called recurrent, other vertices are called transient. Edges on cycles are called recurrent, other edges are called transient. Recurrent edges form cycles, transient edges form a forest. The cycle-forest induces a permutation on recurrent vertices: cycle notation: (5,12,3) (11) ( ) 3 5 11 12 two row notation: 5 12 11 3 extract a path from the sorted two-row notation and attach the transient part:

24
5 4 7 8 9 12

CHAPTER 4. TREES AND FORESTS


11 2 10 6 13 1 3 14

Figure 4.3: extracted path with the attached transient part, special vertices are 5 and 3 We now have a tree on [n] with two special vertices (left of path and right of path). How many objects of that kind exist? Answer: T (n) n n = T (n) n2 This is a bijection between trees with a yellow and a red vertex (possibly the same) maps [n] [n] Therefore: T (n) n2 = nn T (n) = nn2

4.2.1 Euler-Cycles and -Paths

Figure 4.4: the Knigsberg graph (blue is the river, brown bows are the bridges) Questions. Is it possible to cross all bridges (each exactly once) in a walk? Euler: No. One (at least in Germany even more popular) problem is the "Haus vom Nikolaus", a german childrens game where you have to draw a house without interruption or drawing a line twice. (Children dont know the eulerian condition that only the start/end vertex of a walk may have odd degree, and thus often try to start with one of the upper points...)

4.2. COUNTING TREES

25

Figure 4.5: Das ist das Haus vom Ni-ko-laus Denition. A walk in a graph is called Eulerian iff it uses every edge exactly once. An eularian cycle is an eulerian walk, where start and end coincide. So what are the conditions for eulerian cycles walks? graph has to be connected degree of every vertex has to be even (for a walk we may have two vertices of odd degree) Theorem 4.9 Euler G has an Eulerian Cycle G is connected and all vertices have even degree. Proof. clear If G is even (only has vertices of even degree) there is a cycle C in G and G-C is even G has a cycle decomposition E = C1 C2 Ck Gluing the cycles into a single one. Invariant: Partition A1 of E . On each Ai there is a closed walk using all the edges of Ai . Pick a vertex that appears in two of the Ai s and glue them at v.

Chapter 5

Vector Spaces Associated To A Graph


5.1 Vector spaces over F2
1. VG = FV = 2V the vertex space 2 x VG x is the characteristic vector of some subset of V dim(VG ) = n , the standard basis is v1 , . . . , vn 2. EG = FE = 2E edge space 2 dim(EG ) = m , the standard basis is e1 , . . . , em d we dene x, y = i=1 xi yi . This looks like an inner product, but note that it is NOT positive denite (coefcients are in F2 ) Let F be a subspace of F2 d . F = {z F2 d : x, z = 0x F} Lemma 5.1 dim(F) + dim(F ) = d Proof. Let M be the matrix that has all elements of F as rows, M : F2 d F2 |F | . dim(ker(M )) +
F

dim(img(M ))
=rank(M )=dim(rowspace)=dim(F )

=d

Denition 5.2 (cycle space). The space Z 2E generated by simple cycles in G is the cycle space. Its elements are called cycles. The dimension of Z is the cyclotonic number of G. Proposition 5.3 Z is generated by simple induced cycles. 26

5.1. VECTOR SPACES OVER F2

27

Proof. If C is a cycle that is not induced, there must be a chord in C. Then we can nd smaller induced cycles there, from which our cycle is generated. Proposition 5.4 F E is a cycle (V, F ) is eulerian, i.e. all degrees in (V, F ) are even. Denition 5.5 (cut space). (X, X) = {e E : e X = , e X = } with = X V , X = V \ X are the cuts induced by subsets of V . We call S = y(X, X) : = X V the cut space. Proposition 5.6 S is generated by cuts of the form (v, V \ {v}) =: yv . Proof. (X, X) = vX yv : if we have an edge between vertices of X, then in the sum we get a 2, which is 0 in F2 . So we get only the vertices that really are in the cut, they are the only ones that occur an odd number of times. Proposition 5.7 Z = S and S = Z Proof. Let C be a cycle and A = (X, X) a cut. |C A| is even, since every cycle has to cross the cut an even number of times. XC , y(X, X) = 0 (We are in F2 ) Z S , S Z . Look at D E such that XD Z there is a v such that deg D (v) is odd / XD , yv = 1 (odd) Z = S second: we have seen that dim(F) + dim(F ) = dim(F2 E ) dim(S) = dim(Z S = Z Theorem 5.8 Let G be a graph with k komponents G1 , G2 , . . . , Gk . Then it holds dim(Z) = m n + k dim(S) = n k Proof. Let T be a spanning forest with k components. e E \ T : together with the tree edges e is closing a unique cycle Ze . Let ze be the vector of this cycle {ze : e E \ T } is linear independent. e T : removing e from T increases the number of components, i.e. e denes a cut. {Se : e T } is linear independent. It follows, that dim(Z)+dim(Z ) dim(F2 E ) = m equality in all 3 inequalities.
+dim(S)

Remark.

1. In general Z S = { 0}

28

CHAPTER 5. VECTOR SPACES ASSOCIATED TO A GRAPH

Figure 5.1: an element of cutspace and cyclespace 2. A different view on Z and S: Let B be the incidence matrix of G B MF2 (n, m), B : F2 E F2 V , Z = ker(B), B : F2 V F2 E , S = img(B )

5.2 Cycles and cuts in directed graphs


We now take R vectorspaces and directed cycles / cuts. +1 e C forward C cycle with transversal direction , VC : E {1, 0, 1}, vC (e) = 0 eC / 1 e C backward Z = VC : C cycle space of circulations / cycle space. +1 e (X, X) forward (X, X) cut with direction, VX : E {1, 0, 1}, vX (e) = 0 e (X, X) / 1 e (X, X) backward S = VX : (X, X) cut is the cut space / cocycle space. Proposition 5.9 z Z, w S : v, w = 0 , i.e. cycles and cuts are orthogonal. Proof. It is enough to take a cycle C and a cut (X, X) and show that VC , VX = 0 . If all edges of the cut are positive, then VC , VX = vC (e)vX (e) = VC (e) = ( #edges from X toX)(#edges from X to X.)
e e(X,X)

If not alle edges are in positive direction: revert the wrong edges. Reverting an edge doesnt change the inner product, since the sign changes in both cycle and cut vectors!

We can dene fundamental bases of Z and S with respect to a spanning tree. dim(Z) m n + k, dim(S) n k dim(Z) = m n + k, dim(S) = n k, RE = Z S (orthogonal sum).

5.2. CYCLES AND CUTS IN DIRECTED GRAPHS

29

Remark (space of circulations). f is a circulation iff there is ow conservation at every vertex: f (e) = f (e)
outedges e at v inedges e at v

Chapter 6

Tree counting with determinants


6.1 The Matrix-Tree Theorem
We introduce some notation for special matrices rst: A is the adjacency matrix of G = (V, E), dimension is nn, Au,v D = diag(d1 , d2 , . . . , dn ), di = degree(i) L = D A the Laplacian of G L is a principal minor of L, i.e. it is L where we delete one row and column (we can just take the rst) - dimension is (n 1) (n 1) Theorem 6.1 (Matrix-Tree-Theorem) T (G)
# spanning trees of G

{ 1 = 0

(u, v) E else

= det(L )

30

6.1. THE MATRIX-TREE THEOREM


Example. 1 1 1 0 3 1 1 = 75 0 3

31

4 1 L = 1 1 1

4 1 1 1 4 1 # spanning trees = det 1 1 3 1 1 0

1 4 1 1 1

1 1 1 1 4 1 1 3 1 0

G = K5 e , T (K5 ) = 53 count pairs (T, e) with T tree in K5 , e T there are 53 6 (6 is the number of / nontree edges). Every edge is missed the same number of times in our graph 3 6 there are 510 = 75 . Proof. choose an orientation of G and let E = {a1 , . . . , an } , N the incidence matrix of G, N = (nij ), i = 1 . . . n, j = 1 . . . m 1 if i is head of aj nij = 1 if i is tail of aj 0 else 1 +1 0 1 1 0 +1 1 +1 0 0 0 rank(N ) #rows = n. We Example. n = 0 0 1 +1 0 +1 0 0 0 0 +1 1 n easily see that i=1 rowi (N ) = 0 rank(N ) n 1
a1 1 a5 4 a2 2 a3 a4 a6 3

Proposition 6.2 A set A columns of N is linear independent (V, A) is cycle free / a forest. Proof. If A contains a cycle we have linear dependence (sum is 0 since every edge occurs the same time with positive and negative sign). If ai A si ai = 0 the scalar vector s is a nontrivial circulation cycle. N is N after deleting the rst row. If F E, then N (F ) is the restriction of N to columns corresponding to edges in F .

32

CHAPTER 6. TREE COUNTING WITH DETERMINANTS

Theorem 6.3 Let F E , |F | = n 1. F is the set of edges of a spanning tree det(N (F )) = 1. In all other cases, the (F )) = 0. determinant det(N Proof. If F is not a spanning tree and |F | = n1 , there must be a cycle in F N (F ) is not linear independent det(N (F )) = 0 If F is a spanning tree Leibniz sgn() ni (i) det(N (F )) =

is a bijection between V \ {1} and edges in F . There is exactly one bijection that leads to a nonzero contribution in the product:
2 1 (2) (7) (4) 7 4 (3) 3 6 (6) (5) 5

Figure 6.1: example with the unique that gives the nonzero For a nonzero contribution, has to hit one incident edge for each vertex. Every nite tree has leaves, and for the leaves you have only one choice for that. Do this for all leaves and then delete them you can apply the same argument to the new leaves until the tree is empty. This shows that there is a unique choice such that the product is not 0 det(N (F )) = 1. From this theorem we get T (G) =
F E,|F |=n1

det(N (F ))2

We now can take the Cauchy-Binet Formula det(B B ) =


A[m],|A|=n

det(B

2 A)

to show T (G) =

F E,|F |=n1

det(N (F ))2 = det(N N ) = det(L )

Remark. The Cauchy-Binet formula has a nice combinatorial proof via Gessel-Viennot. [See Proofs from THE BOOK]

6.2. ARBORESCENCES

33

6.2 Arborescences
Denition 6.4. Let D = (V, E) be a directed graph, we allow multi-edges. An arborescence with root i in D is a directed tree with outdeg(j) = 1j = i.

Figure 6.2: example for an arborescence The Laplacian M of a directed graph is an n n matrix, mi,j = # edges from i to j, i = j. mi,i = # edges from i to somewhere = outdeg(i) M is the principal minor of M obtained by deleting row and column 1. Theorem 6.5 T1 (D)
#arborescences with root 1

= det(M )

Remark. For the undirected graph we can take for every edge (u, v) directed edges from u to v and from v to u. M = L T (G) = T1 (D). Proof. (induction) If there is an i with outdeg(i) 2, let D1 and D2 be obtained from D by partitioning the outedges of i such that outdegDj (i) 1 , j = 1, 2 amd keeping all other edges of D for both. T1 (D1 ) + T1 (D2 )
det(M1 ) + det(M2 )

= T1 (D) = det(M )

(look at rows: rowi (M1 ) + rowi (M2 ) = rowi (M )) We now have to show the top-down equality in this equations. It is enough to consider D such that outdeg(i) 1i = 1. case 1: i with outdeg(i) = 0 M has a 0 row, det(M ) = 0 and of course the tree has no arb. with root 1, so T1 (D) = 0. case 2: D has a cycle (not involving 1) no path to 1, no arborescence T1 (D) = 0 and as well rowi (M ) = 0 det(M ) = 0
i on the cycle

34

CHAPTER 6. TREE COUNTING WITH DETERMINANTS

case 3: for all i we have outdeg(i) = 1, and there is no cycle D is an arborescence and T1 (D) = 1. Look for the column of a leaf j, there is only one 1 and the rest is 0, since outdeg(j) = 1, indeg(j) = 0. Take this column for Laplace pivot and use induction for the smaller matrix which corresponds to the smaller arborescence D \ {1}. We see det(M ) = 1.

2 1 4 3

Figure 6.3: the graph of our example Example. If we order the vertices as (3, 1, 2, 4) (to count arborescences with root 3) we get 1 0 1 0 3 1 1 1 3 1 1 , M = 1 1 0 M = 0 1 1 0 0 0 1 1 0 0 1 partition: 2 M1 = 1 0 1 M2 = 1 0
2 1 4 3

1 0 1 0 0 1 0 1 1 0 0 1

Figure 6.4: the graph for M2 1 0 0 = 1 1 0 0 0 1

M1.1

6.3. DIRECTED EULER-CYCLES


2 1 4 3

35

Figure 6.5: the graph for M1,1 1 1 0 = 1 1 0 0 0 1


2 1 4 3

M1.2

Figure 6.6: the graph for M1,2

6.3 Directed Euler-Cycles


D eulerian directed graph, e = (v, u) edge of D, ED (e) = # Euler cycles starting in e. Theorem 6.6 (BEST Theorem) (named after de Bruijn, van Aardenne-Ehrenfest, Smith and Tutte) ED (e) = TD (v) (outdeg(v) 1)!
#arb. with root v vV

Proof. Euler cycle in-arborescence Dene the last-exit-tree: For all w = v we take the last edge leaving w in the euler cycle e1 . . . em .
=(v,u)

This is of course a set of n 1 edges. This set is acyclic: If there would be a cycle, then take a vertex w on this cycle. The outgoing edge of w is the last exit of w. If we come back to w, we couldnt have met v since it has no outedges in the last-exit tree. But this means we walked on the last-exit

36

CHAPTER 6. TREE COUNTING WITH DETERMINANTS


u 1 e 10 9 5 4 v 8 12 2 3 11 7

Figure 6.7: the last-exit tree edges in a cycle and came to the same vertex again, so the outgoing edge of w was not the last exit when we took it before . T is a tree with root v. Let w be the order in the Euler cycle E = e1 . . . em of the other edges incident to w. Then we have a map E (T, {w : w V }). Claim. This is a bijection: To construct an euler cycle from (T, {w } start in e. Keep track of edges used already! When ei = (vi , ui ) was the last edge used, take the next edge of ui (if available, otherwise take the tree edge of ui .) This yields a sequence e1 , . . . , er of edges e1 = e and head(er ) = v. Claim. Every edge appears in the sequence the sequence is an euler cycle. Suppose that some edge e is not in the sequence. Then one of the outedges of w1 is
e w1 w2 w3 ..... v

not in se sequence the tree edge leaving w1 is not in the sequence (same reason) the tree edge leaving w2 is not in the sequence one of the inedges of v is not used there is an outedge of v that is not used (this means that the sequence is not maximal, we can continue the construction)

Corollary 6.7 For a connected, directed eulerian graph D: TD (u) = TD (v) u, v V Proof. ED (e) = ED (e ) e, e E. TD (v) = ED (e) ED (e ) = = TD (u) wV (outdeg(w) 1)! wV (outdeg(w) 1)!

If D is a connected 2-in 2-out graph ED = TD

6.4. MEMORY WHEELS AND DEBRUIJN GRAPHS

37

6.4 Memory Wheels and DeBruijn Graphs


Denition 6.8. We have an alphabet , || = m and words from this alphabet of length n there are mn possible sequences. A memory wheel is a sequence b1 . . . bmn , bi , such that each sequence/word of length n occurs in the string b1 . . . bmn b1 b2 . . . bn1 . Example. = {0, 1}, n = 3
0 1 1 1 0 1 0 0 000 001 010 101 011 111 110 100

Question: How can we construct memory wheels? dene the de Bruijn Graph for (, n) : It has all possible sequences as vertices and has directed edges (a1 a2 . . . an ) (a2 . . . an an+1 ). We denote the de Bruijn graph for words of length n on an alphabet of size m with Bn (m).
141 241 341 441 413 131 132 133 134

Figure 6.8: Ex: n = 3, m = 4, = {1, 2, 3, 4} Example. Denition 6.9 (line graph). For G = (V, E) the line graph L(G) = (E, F ), F = {(e, e ) : e e = }.
1 2

1 3 4

2 6 5 6 5 4 3

Figure 6.9: example of a line graph construction

38

CHAPTER 6. TREE COUNTING WITH DETERMINANTS

Denition 6.10 (directed line graph). For D = (V, A) the directed line graph L(D) = (A, B), B = {(a, a ) : head(a) = tail(a )} Example. The easiest binary deBruijn-Graphs:

B3 (2) B2 (2) 01 11 00 001 10 011

000

010 101

100 110

111

Bn is the directed line graph of Bn1 . A memory wheel for n words cycle in de Bruijn graph Bn that visits every vertex exactly once cycle in the de Bruijn graph Bn1 that visits every edge exactly once (Euler cycle) Questions. How many memory wheels are there? n Answer: There are 22 (n+1) . Lemma 6.11 Let M be an n n matrix with M  = 0 and  M = 0, M the principal minor of M. det(M xI) = x n det(M ) + x2 (. . . ) Proof. M  = 0 det(M ) = 0, no constant coefcient in the characteristic polyno x x , mial. Add all rows to the rst in (M xI) M = M1 1 1 . Now add all columns to the rst det(M1 ) = det(M xI) = x det M1 n 1 1 x = xndet((M xI) )+x2 (. . . )+x2 (. . . ) = x (M xI) x Corollary 6.12 (Eigenvalue variant of the Matrix-Tree Theorem) For eigenvalues i of the Laplacian with 1 = 0 T (G) = 1 i n i=2
n

6.4. MEMORY WHEELS AND DEBRUIJN GRAPHS

39

Corollary 6.13 D directed graph with indeg(v) = outdeg(v)v V, i eigenvalues of the directed Laplacian. n 1 T1 (D) = i n i=2 Lemma 6.14 If u, v are vertices of Bn (m), then there is a unique path of length n from u to v. Proof. u = (a1 . . . an ) (a2 . . . an b1 ) (b1 . . . bn ) = v

Proposition 6.15 The eigenvalues of M (Bn (m)) (the directed Laplacian of Bn (m)) are 0 (with multiplicity 1) and m (with multiplicity mn 1). Proof. Let A be the directed adjacency matrix of Bn (m), ai,j =#edges form i to j. Claim. An = J where J is the matrix with only 1s. Proof of the Claim. (Ak )i,j = #paths of length k from i to j. Induction: for k = 1 true (Ak )i,j = l (Ak1 )i,l al,j The Lemma now implies A(Bn (m))n = J J is a mn mn matrix with: rank(J) = 1 it has the eigenvalue 0 with multiplicity mn 1 J  = mn  it has the eigenvalue mn with multiplicity 1. A has the eigenvalue 0 (mult. mn 1) and n mn (mult. 1). So M (Bn (m)) = (mI A) has eigenvalues m (mult. mn 1) and 0 (mult. 1) Now we can count the number of memory wheels:
m
n

i = mm

T1 (Bn (m)) =

i=2

n i = mm (n+1) mn

so the number of Euler cycles starting in e is EBn (m) (e) = mm


n

(n+1)

(m 1)!

mn

So we see that there are many memory wheels, and even for reasonable m and n the de Bruijn graph is huge and cant be used for the computation of an Euler cycle.

40

CHAPTER 6. TREE COUNTING WITH DETERMINANTS

6.4.1 An Algebraic Approach to Memory Wheels


For simplication we take m = p, p a prime, = Fp . Recursive generation of a sequence si = a1 si1 + a2 si2 + + an sin with coefcients ai Fp . Initial conditions: sj = 0 for j < 0, some s0 = 0. The sequence generated by the recursion can be extended doubly innite, it will be periodic. Let s1 . . . sr be a period, i.e. si = si+r i. To understand the period we work with polynomials P (x) = 1 a1 x a2 x2 an xn and S(x) = Lemma 6.16 s0 = 1 P (x) S(x) = 1 Proof. b0 = s0 a0 = 1 1 = 1 bk =
k j=0 j=0

sj xj

aj skj = sk a1 sk1 an skn = 0

since the sj are generated by the recursion. Lemma 6.17 The period r is the minimum value t such that P (x) divides (1 xt ) Proof. Q(x) = 1 xt = (1xt )S(x) = S(x)xt S(x) = s0 +s1 x+s2 x2 + s0 xt s1 xt+1 . . . P (x)

If P (x) | (1 xt ) , then Q(x) is a polynomial of degree t n sj sjt = 0 j > t t n S has period t. Conversely: If t is a period of S, then 1x is a polynomial P (x) (of degree t n). P (x) | (1 xt ) Theorem 6.18 n In Fp [x] there is a polynomial p(x) of degree n with p(x) | (1 xp 1 ) but p(x) (1 xt )t < pn 1. Example (p=2). some good polynomials: x3 + x + 1 x4 + x + 1 x5 + x2 + 1 . . .

6.4. MEMORY WHEELS AND DEBRUIJN GRAPHS


x4 + x + 1, word length 4: 0001111010110010001

41

We have to add a zero to the beginning, then all the sequences are generated, so we have a memory wheel from p(x) = x4 + x + 1.

Chapter 7

Extremal Graph Theory


Extremal graph theory answers questions about the function fH : n ex(n, H). Denition 7.1. For a xed graph H, we say G excludes H if there is no subgraph of G isomorphic to H. ex(n, H) = max(|EG | : G excludes H, |VG | = n). The rst thing we study is the case H = Kk , e.g. for H = K3 we consider triangle free graphs. A construction: take G bipartite: max(|EG | : G bipartite, |VG | = n) = max(|EKs,t | : s + t = n) = max(s t : s + t = n) n n = 2 2 Theorem 7.2 (Mantel) n2 4 and the unique maximizing graph is the balanced complete bipartite graph. ex(n, K3 ) = Proof Idea. Do induction n 2 n: Take (u, v) EG . In a triangle-free graph their
u v

n 2 vertices

neighborhoods have to be disjoint deg(v) 1 + deg(u) 1 n 2. By induction 2 hypothesis G \ {u, v} has at most ex(n 2, K3 ) = (n2) edges, do induction 4 step. 42

7.1. SOME IMPORTANT PARAMETERS OF GRAPHS

43

7.1 Some important parameters of graphs


Denition 7.3. clique a subgraph of G isomorphic to some complete graph Kk is a

a subgraph of G isomprphic to some Kk (graph without edges) is an independent set of G. (also called stable set) (G) = max size of a clique in G. (G) = max size of an independent set in G. (G) = min(s N such that indep. sets I1 . . . Is G with s Ij = VG ) is j=1 the chromatic number.

(G) = 2 C5 (G) = 2 (G) = 3 K3,3

(G) = 2 (G) = 3 (G) = 2

Figure 7.1: Example: parameters of C5 and K3,3

Proposition 7.4 (2 bounds for ) (G) (G) n (G) (G) Proof. Any two vertices of a clique have to be in different independent sets (color classes) of a coloring (G) (G). s If I1 . . . Is is a coloring Ij = V j=1 |Ij | = n average size of the Ij = n s n max size of an independent set n s Theorem 7.5 (Turn) Let G = (V, E) be a graph on n vertices with (G) < k + 1 (k 2). |E| (1 1 n2 ) k 2

Observation:. The Turn bound is best possible: Dene the Turn Graph Tk (n) - Take independent sets I1 . . . ik with |Ij | = nj nj = n, and add all edges between vertices of different indepen{ n , n } with k k dent sets. (Tk (n)) = k ( ) 2 2 |E| ( n 2 ) k = n2 k(k1) = k1 n k 2 k 2 k 2

44

CHAPTER 7. EXTREMAL GRAPH THEORY

T3 (10)

Example. n = 10 |E| = 4 3 + 4 3 + 3 3 = 33 Turan says: |E| 2 102 1 = 33 3 2 3

First Proof. (shifting weights) Consider an optimization problem: Assign weights wi to the vertices vi such that wi n 0, i=1 wi = 1 and g(w) = i,jE wi wj is maximized. 1. For a maximizing w we can assume that for all (i, j) E w j = 0. iw (suppose (i, j) E, wj wi > 0. Let si = kN (i) wk , lN (j) wl . If si / sj consider weights w with with wi = wi + wj , wj = 0, wk = wk k = i, j. Then g(w ) = g(w) + wj si wj sj g(w)). This implies that all the weight is on a clique of size t for some t(by assumption t k) 2. For a maximizing w we can assume that for all i, j with wi > 0, wj > 0 we have wi = wj w +w (Suppose that wi > wj > 0. Consider the weights w with wi = i 2 j , wj = wi +wj , wk = wk k = i, j. Then g(w ) = g(w) wi (1 wi ) wj (1 wj ) + 2 2 i 2 j (1 i 2 j ) = g(w) + i 2 j > g(w). Now we can determine g(w) with w maximizing ( ) weights: t 1 1 1 i in the clique wi = t g(w) = = 2 ( t1 ) maximized if t 2 t2
edge contrib. #edges w +w w +w (w w )2

t = k. Compare this to the weight distribution wi = g(w) =

1 n i

(feasible).

i,jE

1 1 1 k1 1 n2 = |E| 2 ( ) |E| (1 ) n2 n 2 k k 2

Second Proof. (look at maximizing example) In a maximizing Example we have a clique of size k (we call this subgraph A) and the rest (we call the subgraph of this vertices B). ( ) k |E[A] | = 2 |E[B] | = (1 1 (n k)2 ) [Induction] k 2

7.1. SOME IMPORTANT PARAMETERS OF GRAPHS


|E[A,B] | (k 1)(n k) A characterization of maximizing examples

45

Claim. A maximizing graph G has no 3 vertices with ((v, w) E, (u, v) E, (w, u) / / E. Proof of Claim. Case: 1 If d(u) < d(v), delete u and double v. This increases the number of edges and induces no (k + 1)-clique Case: 2 If d(u) < d(w) similar. Case: 3 If d(u) d(v) and d(u) d(w), delete v and w and triple u. previous contrib. to # edges = d(u) + d(v) + d(w) 1 < 3d(u)

From this claim we obtain that u v (u, v) E is an equivalence relation / (the claim implies transitivity!) G is a disjoint union of cliques G Kn1 n2 ...nk . = Since G is maximizing |ni nj | 1. Third Proof. We will see that (G) vV dv1 . +1 1 Apply this to G : (G) = (G) vV d 1 = vV ndv . Use Cauchy-Schwarz v +1 2 1 a, b2 ||a|| ||b||2 with a = (a1 . . . an ), ai = nd , b = (b1 . . . bn ), bi = n di :
i

n2 (

1 )( (n di )) n di (G)(n2 2|E|) kn2 2k|E|


(k1)n2

|E|

k1 n2 k 2
2

As result we have, that if |E| > n G contains a triangle. But we)can also give a 4 ( quantied version of this: If |E| > ( 1 + c)n2 , then G contains 2c n triangles. The 4 3 proof is not given here, but you can nd it at exercise sheet 7, Exercise 2. We want to determine ex(n, H) for other graphs H. Remember: ex(n, H) = max(|E| : |VG | = n, G has no subgraph isomorphic to H). If (H) 3 then ex(n, H) ex(n, K+1 ) = If (H) = 2 then it is much more complicated. 2 We can generalize Turns ex(n, KK+1 ) = k1 n to the theorem of Erds and Stone: k 2 ex(n, Tk+1 (r)) = ( k1 n2 + o(1)) k r

46

CHAPTER 7. EXTREMAL GRAPH THEORY

(where f (x) o(1) limx = 0). A consequence of this is the following: For a graph H with chromatic number (H) = 2 k + 1, k 2 we have ex(n, H) = ( k1 + o(1)) n . k 2 Proof. If H k1 n2 k 2 . Tk (n) G not containing H with
k1 n2 k 2

edges, ex(n, H)

If H Tk+1 (r) for some r, then ex(n, H) ex(n, Tk+1 (r)) = ( k1 + k 2 o(1)) n . 2 If (H) = 2 i.e. H is bipartite, ex(n, H) is more complicated. In fact ex(n, Kt,t ) is not precisely known. Theorem 7.6
3 1 ex(n, C4 ) = ( + o(1))n 2 2

Proof. At rst we look at a family of graphs without a C4 : A C4 is a K2,2 . Consider a projective plane P = (P, L) with P = set of Points and
A C4 is just a K2,2 !

L = set of Lines. A projective plane P has the following properties: for all points p, q P ! line l L with p l and q l for all lines k, l L! point p P with p k and p l there are 4 points, such that no 3 of them are on a line There is a projective plane for all p prime (or prime power). From the projective planes we construct the graph Gp with: V = P L, E = {(p, l) : p P, l L, p l}. This graph cannot contain a C4 : for a C4 we need p, q l and p, q k and l = k, but these 3 together contradict the properties of the projective plane.
p q

Figure 7.2: A C4 would look like this, but this contradicts the above listed properties of a projective plane! How many vertices and edges does our GP have? Answer: |P | = p2 + p + 1 = |L|

7.1. SOME IMPORTANT PARAMETERS OF GRAPHS

47

and for every q P there are p + 1 lines through q, for every l L there are p + 1 points on the line l n = 2(p2 + p + 1). 3 3 |E| = (p2 + p + 1)(p + 1) ( n ) 2 (n 2 ). 2 For an upper bound, we count subgraphs S = G[{u,v,w}] with (u, v) E, (u, w) E in two ways: Look at u: |S| = (du )
uV

Look at v, w: For each pair)there is at most one admissible u (otherwise we have a C4 ). ( 2 This means |S| n du n(n 1) + du . Apply Cauchy-Schwarz 2 with a = (d1 . . . dn ), b = (1 . . . 1): 2 ( du ) ( du 2 ) ( 1)
2 1 du ) ( n 2 (2|E|) =n

n(n 1) + 2|E| n(n(n 1) + 2|E|)

Solve this quadratic equation in E, you get |E| 3 n 1 (1 + 4n 3) ( + o(1))n 2 4 2

We now want to give an inequality for (G). Theorem 7.7 (G) Proof 1. (Algorithm MAX) repeat x vertex of max degree in G GGx until EG = return I G Let G = G x be the graph produced in an iteration of the algorithm and A(G) = 1 vVG dv +1 . Claim: A(G ) A(G) From this claim we get immediately the result: (G) |I| = A(I) A(G)
vV

1 dv + 1

48 Proof of Claim: A(G ) A(G) = = =

CHAPTER 7. EXTREMAL GRAPH THEORY

vN (x)

1 1 dv dv + 1
vN [x]

vN (x)

1 1 dv (dv + 1) dx + 1 1 1 dx (dx + 1) dx + 1

vN (x)

dx 1 dx (dx + 1) dx + 1 =0

Second Proof. (algorithm MIN) repeat x vertex of min degree in G I I +x G G N [x] until G = return I Let G = G N (x) be the graph produced in an iteration of the algorithm. All the deleted vertices have degree dv dx and the degree of the remaining vertices in G , the vertices u N [x], is the same or less than in G, so we get du 1+1 du1 . This / +1 yields A(G ) A(G)
vN [x]

1 1 A(G) (dx + 1) = A(G) 1 dv + 1 dx + 1

But A(G) A(G ) 1 implies that there must be at least A(G) iterations before the algorithm stops with A() = 0. So (G) |I| A(G).
= nr of iterations

The third proof uses probabilities and expected values, so we have to remember a few denitions and facts from discrete probability: We have the space (, P ), is a (nite) set and P : [0, 1] a map such that P () = 1 For all A : P (A) = A P () A random variable (here) is a map X : R

7.1. SOME IMPORTANT PARAMETERS OF GRAPHS

49

The Expected Value is E(X) = X()P (). The expected value is linear: E(X + Y ) = E(X) + E(Y ) Note: if X is a 0 1-variable E(X) = 1 P () = P ({ : X() = 1}) =: P (X = 1)
:X()=1

Example. As example, we calculate the expected number of triangles in a random graph G with edge probability 1 . 2 n There are 2( 2 ) possible graphs on V = {1, . . . , n}, and each of them appears with the same probability. Exp. # triangles = 1 # triangles in G n 2( 2 )
G graph

We dene a random variable X with X(G ) = # triangles in G{ now we have to . ([n]) 1 if T G compute E(X). For each triangle T, T 3 dene YT (G ) = 0 else X(G ) =
T

YT (G )
T

E(X) = E( [Zauberzeile

YT (G )) =

E(YT (G )) =

P (YT (G ) = 1) =

1
T

( ) 1 n 8 3

Third Proof. (Random greedy independent set) For this algorithm we take a random permutation Sn and order the vertices of G according to this permutation. The algorithm picks a vertex v, if all of the neighbors of v are to the right side of v. Obviously the set of picked vertices is independent.

Figure 7.3: The algorithm here would pick only the black, the pink ones are not connected to them (independent!), but are ignored The probability to pick a vertex v is : P (v is picked) = P (v is the rst vertex in N [v]) = 1 . dv + 1

50

CHAPTER 7. EXTREMAL GRAPH THEORY


if v is picked else Yv )

{ 1 Dene a random variable Yv () = 0

E(size of the picked ind. set) =E( = = = So since the expected size is 1 dv +1 .
1 dv +1 ,

vV

vV

E(Yv ) (P (Yv = 1)) 1 dv + 1

vV

vV

there must be at least one independent set of size

Chapter 8

Hamilton Cycles
Denition 8.1. A hamilton cycle in a graph G = (V, E) is a cycle visiting each vertex exactly once. William Rowan Hamilton invented a game where you have to nd hamiltonian cycles on a dodecahedron, the Icosian Game.

Figure 8.1: the icosian game with a hamilton cycle The task was to complete a three step path to a cycle, that visits every vertex exactly once. This leads to the question, if a given graph G HAS a hamilton cycle and whether we can give easy sufcient or necessary conditions. Can we nd a constant k such that (max degree)> k sufces? NO! This is not even sufcient for connectedness. Is it sufcient if (G) > k? No, look at a Kn,k with k < n. In fact this decision problem is NP-Complete, so it is probably hard to decide for general graphs. Nevertheless there are some conditions. Theorem 8.2 (Dirac 1952) Given a graph G with |V | = n 3, then G is hamiltonian if (G) 51
n 2

52

CHAPTER 8. HAMILTON CYCLES

Proof. G is connected: x, y V (G) : N [x] N [y] = , so there must be a path between them. Let P be a longest path in G, P = x0 x1 . . . xk . Claim. There is a hamilton cycle covering {x0 . . . xk }: If (x0 , xk ) E we are done. Otherwise: On the path we color the neighbors of xk blue and for all xi N (x0 ) we color xi1 red. We know that at least n of {x1 . . . xk } are neighbors of x0 . (if 2

x0

xk

not N (x) P we would get a longer path), and with the same argument that at least n 2 of {x0 . . . xk1 } are neighbors of xk . This implies, that there must be at least one vertex xj with both colors. Delete xj from the path and add the edges (x0 , xj+1 ) and (xj , xk ). This is a cycle covering P .
A cycle covering P

x0

xk

Now we only need that our path covers all vertices: Suppose there is a vertex y P / a path connecting y to P (G connected) and thus connecting y to the cycle CP . But with this cycle and y we can construct a longer path than P . Remark. This is best possible: Consider K n K n . This graph is not even connected, 2 2 but has minimum degree (G) = n . 2 An other result, found by Chvtal and Erds 1972, is the following: Proposition 8.3 A graph G with |V | 3 has a hamilton cycle if (G) (G). Proof. Take a longest cycle C and suppose VC = VG . It holds |C| (G) + 1 (g) + 1 (Since (G) has to be at least 2 if the conditions hold, every two vertices in the neighborhood of x stay connected if we delete x. From the connecting paths we can construct a cycle of length (G) + 1.) Consider a component H of G \ C. H is connected to at least (G) vertices of C, otherwise we would nd a smaller seperator. Let I be the set of vertices connected to H and C = (x0 . . . xl ). For all xi , xj I we have (xi1 , xj1 E, (otherwise we would get a longer cycle , the red one in the picture). / In particular there are no consecutive vertices xi , xi+1 with xi I, xi+1 I, because then the edge (xi1 , xi ) would be missing! Now the set {xi1 : xi I} {z}, z arbitrary from H, is independent and has size k + 1.
at least k, not conn. to H

53
xi xi1

H xj C xj1

Figure 8.2: this picture shows how you would get a longer path if (xi1 , xj1 ) E There is also a necessary condition: Proposition 8.4 If G is hamiltonian, then S V holds G S = G[V \S] has |S| components. Proof. A hamilton cycle has at least 2 edges incident to each component of G S, but has exactly 2 edges incident to each v S if there are more than |S| components there cant be a hamilton cycle.

Figure 8.3: it is not possible to build a hamilton cycle here This condition is not sufcient - for example the Petersen graph is not hamiltonian, but the condition holds. Denition 8.5. A graph G is t-tough if S V there are at most 1 |S| components in t G S. Chvtal conjectured, that there is a t such that all t-tough graphs are hamiltonian. (In general this is still open) Another way of looking at hamilton cycles is the hamiltonian closure . Lemma 8.6 Let (u, v) E and d(u) + d(v) n. It holds / G is hamiltonian G + (u, v) is hamiltonian

54

CHAPTER 8. HAMILTON CYCLES

Proof. "": Obviously we can take the same cycle as before. "": Order the vertices in the hamilton cycle C in the order we see them on the cycle. Because of the degree condition there are two vertices x, y that are consecutive on the
x u y v

Figure 8.4: how to avoid the deleted edge cycle (i.e. (x, y) C) and have (u, y) E, (x, v) E. Then C (x, y) (u, v) + (u, y) + (x, v) is a hamilton cycle avoiding the edge (u, v). Example. Start with th following graph:

In the end we get the K6 which is hamiltonian! The hamiltonian Closure of G is the graph obtained by repeated application of the Lemma (adding the edges) until no further application is possible. Note that all complete graphs are hamiltonian. The hamiltonian closure is unique, i.e. it is well-dened: since the degrees are increasing in every step, it is not important in which order we add the possible edges - we are not ready until we added all of them. Theorem 8.7 Let G be a graph with degrees d1 d2 . . . dn . If for all i < dni n i then G is hamiltonian.
n 2

it holds di > i or

Proof. We may assume that G is a hamilton closure. (In fact we proof that under this conditions the hamilton closure of G is the Kn . This implies that G has a hamilton cycle.) Suppose G = Kn u, v with (u, v) E d(u) + d(v) < n. Take such a / pair with d(u) + d(v) is maximal and d(u) = i d(v) i < n 2

55 Claim. di i Proof of Claim: For all w with d(w) > d(u) = i we have (w, v) E (maximality of (u, v)). This means the number of vertices w with d(w) > i is at most d(v) + 1 < n i + 1. the number of vertices w with d(w) i is i di i Claim. dni < n i Proof of Claim: For all w V with d(w > d(v) we have (u, w) E (maximality) # vertices with d(w) > d(v) is at most i the index j of v = vj is larger then n i dni d(v) < n i Remark. The result is best possible. Look at

Ki

Ki

Kn2i

The degree sequence is: i, i, i, . . . , i, n i 1, n i 1, . . . , n i 1, n 1, n 1, . . . , n 1.


i n2i i

This graph is not hamiltonian, S is a seperator of size i and GS has i+1 components. In the degree sequence we nd di = i i, dni = n i 1 < n i, and this is the only position where the condition fails An open conjecture for hamilton paths: A graph is called vertex transitive , if u, v V Aut(G) with (u) = v. is an automorphism if : V V is a bijection and u, v E ((u), (v)) E. Lovsz conjectured 1970, that every vertex transitive graph has a hamilton path. Example. the Petersen graph has am hamilton path, but no hamilton cycle.

we have no construction for a hamilton path in the middle levels graph Gn of a boolean lattice B2n+1 . (The vertices of Gn are the subsets of [2n + 1] with size n or n + 1, there are edges between A, |A| = n and B, |B| = n + 1 if A B

Chapter 9

Colorings - the chromatic number


Remember the chromatic number (G). This is the minimal number of colors such that it is possible to color the vertices in a way that no adjacent vertices have the same color. Other denitions: (G) = min(k : V can be partitioned into k independent sets) = min(k : c : V {1, . . . , k) such that c(u) = c(v)((u, v) E) = min(k : homomorphism : G Kk ), ((u, v) EG : ((u), (v)) EKk ) It is left to the reader as an exercise to proof the formal equivalence of these denitions. We have seen different bounds for (G): 1. (Kn ) = n 2. H subgraph of G (H) (G) 3. (G) (G) 4. (G)
n (G)

How good are these bounds? Example. Consider K n + K n . Here (G) = n + 1, (G) = 2 2 2 So we see that the gap in inequality 4 can be huge.
n 2

= (G)

< 2.

There are also graphs with a huge gap in inequality 3. For this we need Mycielskis construction of triangle free graphs with large chromatic number. This is a sequence G0 , G1 , G2 , . . . such that (Gi ) = 2, (Gi ) = i + 3 which we construct inductively: G0 = C5 We get Gk+1 from Gk with the following construction: Duplicate the vertices vi of Gk , call the new vertices vi . For every edge (u, v) V (Gk ) add the edges (u, v ) and (u , v). Also add a new vertex x and edges from x to all the new vertices. 56

57

Gk

Figure 9.1: the idea of Mycielskis construction (here for only one v)
v1 . . . v n
v 1 . . . vn

Figure 9.2: The rst construction step C5 = G0 G1 . The resulting graph is the Grtzsch Graph. We see that there is no triangle in Gk+1 . (N (v) is independent in Gk because there are no triangles connecting them to v doesnt yield new triangles) We need one color more for Gk+1 : We start with C5 , it has (C5 ) = (G0 ) = 3. (Gk ) = k + 3 there are vertices vi with c(vi ) = i and |c(N (vi ))| = k + 2 for every color i = 1 . . . k + 3, otherwise we could recolor one color class and get a lower chromatic number. But for these vertices vi the duplicate vi must alos have color i. The neighbors of vertex x have k+3 different colors, so x has to get an other one (Gk+1 ) = k + 4. The rst graph we get in this construction (G1 ) is called the Grtzsch graph, here an other drawing:

Figure 9.3: the grtzsch graph

58

CHAPTER 9. COLORINGS - THE CHROMATIC NUMBER

9.1 The chromatic number of random graphs


For a random graph G on the vertex set [n] where all edges independently have edge probability 1 , the clique number (G) is a random variable. We are interested in the 2 Probability P ( k). Let Zk = nr of k-cliques in G. Zk =
A([n]) k

{ 1 G[A] is a clique XA with XA (G) = 0 else

E(Zk ) = E(

XA ) =

E(XA ) =

P (XA = 1)

So we have to calculate P (XA = 1). P ({1 . . . k}induce a clique in G) = P (i = j {1 . . . k} edge (i, j) E(G)) = P ((1, 2) E (1, 3) E (k 1, k) E) = P ((1, 2) E) P ((1, 3) E) P ((k 1, k) E) 1 1 1 = 2 2 2 ( )(k) 1 2 = 2

( )( )(k) ( ) k (k12 log(n)) ( )(k) ( )k log2 (n)+ k(k1) 2 2 n 1 2 1 2 1 k 1 E(Zk ) = = n = k 2 2 2 2 In particular for k >> 2 log(n), E(Zk ) will be very small. For our original question we need E(Zk ) = P (G has t k-cliques)
t t1

P (G has t k-cliques)

= P (t G has t k-cliques) = P ( k-clique in G) = P ( k) This means P ( k) is very small if k > 2 log(n). In fact, for almost all random graphs it holds 2 log(n). We can do exactly the same for , since G is also a n n random graph. 2 log(n) . Indeed for almost all random graphs 2 log(n) (Bollobs)

9.2. UPPER BOUNDS FOR THE CHROMATIC NUMBER

59

9.2 Upper bounds for the chromatic number


For this we will look at explicit colorings: For a permutation = v1 . . . vn of the vertices of G Greedy() is the coloring with c(vi ) = min(j : color j is not used for a neighbor of vi with smaller index). From an algorithmic point this means the algorithm takes the vertices and the colors in a specic order and in every step colors the current vertex with the smallest color that is not used for a neighbor. Note that different orderings of the vertices may lead to different results with different number of used colors. But for all permutations Greedy(, G) will not use more than + 1 colors, where is the max degree in G. Example. Here we have the Petersen graph with the result of a greedy coloring, taking the colors a < b < c < d (Pet) = 3 (Pet) + 1 = 4
2b a 6 b a c 5 10 c 7 c8 a 9 b4 3 a

Figure 9.4: greedy coloring of the Petersen Graph We see, that permutations with small back degree, i.e. where all vertices have few neighbors preceding them in the permutation, lead to colorings with few colors. Denition 9.1. G is k-degenerate if there is a permutation of the vertices such that all of the vertices have back-degree k. From the greedy algorithm we immediately get Proposition 9.2 If G is k-degenerate, then (G) k + 1. Another bound can be obtained by ordering the vertices with respect to the degrees: Proposition 9.3 If G has degree sequence d1 d2 dn (G) 1 + maxk (min(dk , k 1)). Proof. Let = x1 . . . xn with deg(xk ) = dk and consider the greedy coloring according to the color used for xk is at most min(dk , k 1) Proposition 9.4 Let H denote the minimum degree in an induced subgraph H of G. Then (G) 1 +
H ind. subgraph of G

max

60

CHAPTER 9. COLORINGS - THE CHROMATIC NUMBER

Proof. maxH H = S every induced subgraph has a vertex of degree S. Make a list: Gn := G Gn1 := Gn xn Gn2 := Gn1 xn1 . . . xn a vertex of deg S in G a vertex of deg S in Gn1 ...

xn1

In = x1 x2 . . . xn each xi has back degree S, because xi is a vertex of minimum degree in Gi = G[V \{xn ...xi+1 }] = G[x1 ...xi ] . the greedy algorithm uses at most S + 1 colors. Remark. G is k-degenerate max H = k. Proof. From the proof of the previous proposition we get "". "": If has back degree k and H is a subgraph induced by a vertex set A VG , let x be the last vertex of A in . Then k (back degree of x)= |A| 1 = |V (H)| 1 degH (x).

9.3 Colorings and Orientations


From a permutation of VG we can also get an orientation of G. We just order the vertices according to and take the edges directed from left to right. With this orientation the bounds on greedy algorithm are chi(G) 1+maxv indegGp i (v). The orientations G that we get are acyclic, and actually every acyclic orientation G of G is a G for some . The reason is, that an acyclic digraph has a topological sorting which gives us feasible permutations. If G is an acyclic orientation, we can also consider the transitive closure of G , this is a poset (partially ordered set) P . A minimum antichain decomposition of P is G G a coloring of G, and the antichains are independent sets of the comparability graph of P (which is a supergraph of G, has more edges). Remember the height of a poset: it G is the number of antichains in a minimum antichain partition, or equally is the size of a maximum chain in P . We get
(G) height(P ). G

Example. We look at a C6 with some edge directions:

h=2 2

P G

9.3. COLORINGS AND ORIENTATIONS

61

Theorem 9.5 Let G be an orientation of G (not necessarily acyclic) and l( G ) =max number of edges of a directed simple path in G. It holds (G) 1 + l( G ) Proof. Let D be an acyclic subgraph with a maximal number of edges. Maximality means, that e E( G ) \ E(D) D + e has a directed cycle. Take the corresponding poset PD . Obviously h(PD ) 1 + l(D) 1 + l( G ). Claim: Taking an antichain partition of PD yields a legal coloring of G. Proof of Claim: Consider an edge (x, y) E( G ). If (x, y) E(D), then x < y in PD and x and y are in different antichains of an antichain partition. If (x, y) E(D) a path y = x1 x2 xk = x in PD because of / the maximality of D. y < x in PD , hence they are in different antichains. .

After getting these upper bounds for , we could ask if the bound + 1 can be tight. The anaswer is: Yes! The following theorem of Brooks will also give us a characterizition of graphs reaching this bound. Theorem 9.6 (Brooks) If G is connected and (G) = (G) + 1, then G is a complete graph or an odd cycle. Proof. case 1: vertex v with deg(v) < . Consider a spanning tree T rooted at v and such that all x v-paths in Tv increase. Do the greedy coloring using x = v backdegree(x) deg(x) 1 1 backdegree(v) = deg(v) 1. # colors used ( 1) + 1 = . case 2: there is no v : deg(v) < , so G is -regular. If = 0, then G = K1 (G has to be connected!) If = 1, then G = K2 If = 2, then G is a cycle. We need 2 colors for even cycles and 3 for odd cycles, so only for odd cycles the bound is tight. If 3 we look at the connectivity of G, and for higher connectivity we use a little Lemma:

62

CHAPTER 9. COLORINGS - THE CHROMATIC NUMBER


Lemma 9.7 If there is a vertex v connected to two vertices a1 , a2 , which are not adjacent and G \ {a1 , a2 } is connected, then (G) . Proof of Lemma. Consider a tree Tv of G \ {a1 , a2 } rooted at v, such that all paths to v in Tv are increasing and a1 , a2 are the rst elements of . Use greedy with to color G: color(a1 ) = color(a2 ) = 1 color(x) (deg(x) 1) + 1 (one tree-edge goes upwards, so backdegree(x) <degree(x)) color(v) deg(v) 1 (the two neighbors a1 , a2 have the same color) G is 1-connected: There must be a seperator v in G. Both sides G1 and

v G1 G2

G2 each can be colored with at most colors (case 1, because v has smaller degree). Take a permutation of the colors in one part, such that v has the same color in the colorings of both parts. Then G is colored with colors. G is 2-connected: We nd the situation of the picture, a seperator {x, y} of size 2 and a1 , a2 :
y a1

a2

(a1 , a2 ) is a nonedge and G \ {a1 , a2 } is still connected this graph cannot reach the bound. G is 3-connected: We show, that if G = Kn , we nd v, a1 , a2 as needed: If G = Kn there is a nonedge (a1 , a2 ) with minimal distance. But this distance then has to be = 2, otherwise we could take a vertex on the shortest path that also has no edge to a1 or a2 . we just take the path a1 v a2 , G \ {a1 , a2 } is still connected.

9.3. COLORINGS AND ORIENTATIONS

63

You might also like