Graphentheorie WS11/12

Embed Size (px)

Citation preview

  • 8/3/2019 Graphentheorie WS11/12

    1/63

    Graph Theory Diskrete Strukturen II

    Prof. Dr. Stefan Felsner

    Wintersemester 2011

    Notes by

    Tobias Buchwald

    and

    Hendrik Mller

    12th December 2011

  • 8/3/2019 Graphentheorie WS11/12

    2/63

    Chapter 1

    Introduction

    Definition 1.1 (Graph). AbstandA Graph is an ordered pair G = (V, E) with vertex set V, |V| = n and edge setE, |E| = m, E

    V2

    (The 2-element subsets ofV).

    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

    45

    6

    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!

    110010

    101

    111011

    001

    000 100

    cube with hamilton

    path from 0 to 1

    In general, we get the d-dim hypercube from V = [2]n . This has relations to theboolean lattice and applications in computer science.

    Questions:

    is there a hamilton path (for every d)? yes

    2

  • 8/3/2019 Graphentheorie WS11/12

    3/63

    3

    is there a (hamilton) path starting in 0 ending in 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,4)$ $(1,3)$

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

    $(2,1)$

    $(2,2)$

    $(2,3)$

    $(2,5)$

    $(2,4)$

    $(1,1)$

    Figure 1.2: The Petersen Graph

    Another description of Petersen:

    V =

    [5]2

    , E = {{A, B} : A, B V, A B = }

    $(1,2)$

    $(4,5)$

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

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

    $(3,5)$

    $(2,3)$

    $(2,4)$

    $(1,4)$

    $V$

    Figure 1.3: Still the Petersen Graph

    Definition 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 ofG and G are called automorphisms.

    Example (Petersen). Take

    Sn, (

    {i, j

    }) =

    {(i), (j)

    },

    this is a bijection[5]

    2

    [5]2

    How many graphs are there?

    Interpretation 1: Fix V with |V| = n. You have 2(n2) choices ofE (V2)

  • 8/3/2019 Graphentheorie WS11/12

    4/63

    4 CHAPTER 1. INTRODUCTION

    $2$

    $3$$4$

    $5$

    $1$

    $2$

    $3$$4$

    $5$

    $1$

    $2$

    $3$$4$

    $5$

    $1$

    $5$

    $4$ $3$

    $1$

    $2$

    Figure 1.4: Isomorphic Graphs

    K1 K2 K3 K4K1 K5

    Figure 1.5: K1 - K5

    Interpretation 2: We can try to count nonisomorphic graphs. For this we need PolyaTheory 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

    Definition 1.3 (Homomorphism). Let G = (V, E), G = V, E). : V V is ahomomorphism if{u, v} E{(u), (v)} E.Questions. For which parameters can we find homomorphisms from: Kn1 Kn2 ,Kn Ks,t , Cs Pt , Kn,m Tree , Cs Kt ?A homomorphism Cs Pt exists s even, t 2 and no others.Definition 1.4 (Subgraph). A graph H = (W, F) is a subgraph of G = (V, E) iffW

    V and F

    E.

    bipartite graph

    m vertices

    n vertices

  • 8/3/2019 Graphentheorie WS11/12

    5/63

    5

    P6

    C6

    even odd

    2 1

    C2k P2

    Figure 1.6: from C2k to P2

    H = (W, F) is an induced subgraph of G = (V, E) iffW V and E (W2 ) = F.We denote this by H = G[W]

    Questions. When do we find 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 traffic

    social networks, web graph

    Matrices

    For G = (V, E) we can build the adjacency matrix Mwith mi,j =

    {1 if{vi, vj} E0 else

    our normal graphs are 0,1-matrices which are symmetric and have only 0at the diagonal.

    if you allow entries in N and free the diagonal, you get a multigraph withloops

    if you disregard symmetry, you get directed edges

    if you disregard symmetry and take entries in R, you get weighted directedgraphs

  • 8/3/2019 Graphentheorie WS11/12

    6/63

    6 CHAPTER 1. INTRODUCTION

    Definition 1.5. Let v be a vertex ofG = (V, E). We define:

    E(v) = set of edges containing v

    N(v) = {w V : {v, w} E} i.e. set of neighbors of vd(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| =vV

    |E(v)| =vV

    d(v)

    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.7Every 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.

  • 8/3/2019 Graphentheorie WS11/12

    7/63

    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 3Theorem 2.1

    If G is a graph without disjoint edges then:

    |E(G)| |V(G)|

    7

  • 8/3/2019 Graphentheorie WS11/12

    8/63

    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 isseperating the two edges with the eggs of its incident vertices, so they have to be

    disjoint .

    e

    (both are not largest) < 180, < 180

    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 theseperating 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 twodisjoint edges, for all other edges of w can only lie in one of the halfspaces and hencenot touch the edge in the other one)

  • 8/3/2019 Graphentheorie WS11/12

    9/63

    2.2. TOPOLOGICAL GRAPHS 9

    good choice

    lev e

    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 = 4dist 1

    4 times

    dist2 2 times

    Observation:. Ifp, q and p, q realize the max distance ofP S(p,q) S(p, q) = , segments intersectIfP is a point set and G(P) has as edges thosep,q realizing a max distance, then G(P)is a geometric graph without disjoint edges |EG(P)| |P| .Let Pa be a set ofn points in the plane, D some distance.

    Questions. How many pairs p, q P can realize the distance D? (wlog D = 1 - unitdistance graphs.)

    This is a 4dim cube (n = 16, m = 32), is a unit-distance graph!

    > a result of Erds (43) : m n1+ cloglogn , which is superlinear.> Szemerdi / Trotter (1984) : m

    n

    43

    n2

    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

  • 8/3/2019 Graphentheorie WS11/12

    10/63

    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| 3improved: |E| 32 (|V| 1)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 graphicalsequences ?

  • 8/3/2019 Graphentheorie WS11/12

    11/63

    2.3. DEGREE SEQUENCES 11

    2

    3

    3

    3

    3 4

    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 containsthe vertices of deg d2 1 . . . dd1+1 1 and W the vertices of deg dd1+2 . . . dn . To getto the graph Gjust add a new vertex v and connect it to all members ofU 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 degreesd2 . . . dd1+1

    1. IfN(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.

  • 8/3/2019 Graphentheorie WS11/12

    12/63

    12CHAPTER 2. GEOMETRIC AND TOPOLOGICAL GRAPHS, DEGREE SEQUENCES

    uv

    wv

    vu

    v

    w

    Figure 2.3: a

    switch

    Observation:. The switch graph on the set of graphs with degree sequence d is con-

    nected.

    Theorem 2.4 (Erds-Gallai)

    d = (d1 d2 dn) is graphical n

    i=1

    di is even and

    ki=1

    di k(k 1) +j>k

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

    Proof. "" : G is a graph with degree sequence d. Of course the first part ni=1 di =2|E| holds for all graphs.Second part : We look at the vertices v1, . . . , vk with deg(vi) = di and count edges.Inside the set V = {v1, . . . , vk} there can be at most

    (k2

    )edges, and since every edge

    counts twice we get the k(k 1). For vertices vj V , j > k , the number of edgesconnecting vj to V

    can not be higher than k or than the degree of vj , so we get the2nd part of the formula."" : this direction is more complicated (not proved here), the idea is to use the stepfrom Haval-Hakimi Theorem for an induction.

  • 8/3/2019 Graphentheorie WS11/12

    13/63

    Chapter 3

    Connectedness

    3.1 Paths and Cycles

    Definition 3.1. A sequence v1e1v2e2 . . . ek1vk with vi ei and vi+1 ei (andvi = vj) is called a walk in G.

    a

    b

    c

    e

    f

    g

    h

    2

    3

    4

    d

    5

    1

    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 defined 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

  • 8/3/2019 Graphentheorie WS11/12

    14/63

    14 CHAPTER 3. CONNECTEDNESS

    Proof. (G) = 0, 1 OKFor (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 first neighbor of vlastand vlast.

    Definition 3.3. u, v vertices of G. We define: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

    IfG contains a cycle, then girth(G) 2 diam(G) + 1Proof. Take a cycle C of length girth(G) = k. If k > 2diam(G) + 1 2 verticesofC define 2 arcs on C, at least one of them of length> diam(G). But then you canuse the shortest path between u and v (which has length diam(G)) to find a shortercycle .

    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 aremaximal connected induced subgraphs of G.

    A seperator is a subset S V such that G[V\S] is not connected or |V \ S| = 1.Definition 3.5. The (vertex) connectivity (G) is the minimum cardinality of a seper-ator ofG.

    Example.

    Pn (path) (Pn) = 1 (n 2)Cn (cycle) (Cn) = 2 (n 3)Kn,m (Kn,m) = min(m, n) (n + m 3, n 1, m 1)Kn (Kn) = n 1Qd (d-dim qube) (Qd) d

    Observation:. (G) (G)Proof. Ifv is a vertex with minimal degree, then N(v) is a seperator.

    Proposition 3.6

    Ifu, v V there are k (internally) disjoint u-v-paths (G) k.

  • 8/3/2019 Graphentheorie WS11/12

    15/63

    3.2. CONNECTIVITY 15

    Proof. A seperator disconnects u and v , so it has to intersect each u-v-path. There arek disjoint paths, so

    |S

    | k.

    Definition 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 first inequality, we take a minimal cut F , a component H ofG \ F and S V(H) the vertices incident to an edge ofF.IfS = V(H) S is a seperator with |S| |F| = (G).IfS = 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 throughall 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

  • 8/3/2019 Graphentheorie WS11/12

    16/63

    16 CHAPTER 3. CONNECTEDNESS

    Theorem 3.10 (Menger)

    (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 define G(u, v) = maximum number of disjoint u, v-paths, andG(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 verticesadjacent to u and v. These vertices define 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 induction2.2) G\e(u, v) < G(u, v) there is a seperator S of size k 1 in G \ e, Sis not seperating in G x, y are in different components. So consider 2 smallergraphs: apply induction to get k disjoint paths in each of the two graphs and glue

    Gu

    Gv

    y

    v

    uvx

    u

    them together.

    Proof of the theorem. "": (easy) If there are k disjoint paths between every two ver-tices, 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 Prop.=== 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: byinduction 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 mostone ofu and v is a seperator ofG of size < k .

  • 8/3/2019 Graphentheorie WS11/12

    17/63

    3.2. CONNECTIVITY 17

    So we can think of 8 versions of Mengers Theorem, if we combine the following

    properties:

    local (u, v) global(all pairs)

    vertex connectivity edge connectivityundirected graphs directed graphs

    Example. G = (V, E) directed graph, u, v V. The min number of edges that have tobe removed to destroy all u v paths = max number of pairwise edgedisjoint u vpaths.

    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 alsoimplies Knig-Egervary: For a directed bipartite graph H, we see that pairwise edge-disjoint 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 ...

  • 8/3/2019 Graphentheorie WS11/12

    18/63

    Chapter 4

    Trees and Forests

    Definition 4.1. A forest is a graph without cycles. A tree is a connected forest.

    Lemma 4.2

    Every finite 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 find a newvertex in every step, and when you get stuck (you do because its finite) 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| 1Proof. 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 inthis 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

    Definition 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

    IfG = (V, E) is connected, then there is a spanning tree for G.

    Proofs. We can do different algorithmic constructions to find a spanning tree.

    18

  • 8/3/2019 Graphentheorie WS11/12

    19/63

    4.1. SPANNING TREES 19

    1. F E =

    {e1, . . . , em

    }for i=1 to m do

    ifF + e is cycle free thenF ei

    end if

    end for

    return F

    Claim: (V, F) is a tree. : It is cycle free by construction, and it is connected: ifnot, (V, F) has different components. In E there are edges connecting differentcomponents of(V, F) (G is connected). But from the construction we know thatthe edges E / F are closing cycles, so there has to be an other edge connectingthe components .

    2. F EE = {e1, . . . , em}for i = 1 to m do

    ifF ei is connected thenF F ei

    end if

    end for

    return F

    Claim: (V, F) is a tree. : It is connected by construction, and it is cycle free: ifnot, consider a cycle C F and take the edge ei with the smallest index i fromthe cycle. When this edge was considered in the algorithm, C was part ofF. SoF ei would have been connected and ei removed.

    3. graph searching:S V starting vertexR S //seen verticesQ S //seen but not finishedF //edges of the treewhile Q = do

    v choose(Q)K N(v) \ R //unseen neighbors of vfor all w K do

    F F + (v, w)R R + K, Q Q + KQ Q v

    end for

    end while

    return F

    Example. BILD fuer Beispiel

    Claim: (V, F) is a tree. :

  • 8/3/2019 Graphentheorie WS11/12

    20/63

    20 CHAPTER 4. TREES AND FORESTS

    Connectedness: In the algorithm F is always spanning R, and since G is con-nected 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 notclose a cycle.

    Remark. The first 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

    ofv from Q. If you choose "first in - first out" (i.e. Q is a queue) you get breadth firstsearch (BFS). If you choose "first in - last out" (i.e. Q is a stack) you get the depth first

    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 connections are the result of the

    The board of the Bridg-it game

    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 whitepebbles connected to the top, and B the ones connected to the bottom. If T = B, wecan find 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 first white edge as virtual/nonexisting. This reverts the role of first and

    second, so white could play the winning strategy for the second player and wins. Ifthe 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).

  • 8/3/2019 Graphentheorie WS11/12

    21/63

    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 spanningtrees. This is possible: Black takes a single colored edge one tree stays intact, theother 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 twospecial 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 disconnects and t.

    Observation:. There is no draw!

    Proof. suppose the game ends in a draw

    all edges have been made stable or re-

    moved. Look at G = (V, Estable) either there is an s, t-path (Join was winning) ors, t are in different components (Cut was winning).

    Theorem 4.6(a) IfH = G[W] with s, t W such that H has 2 disjoint spanningtrees, 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 twodisjoint 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 ofKn = nn2

    Example.

  • 8/3/2019 Graphentheorie WS11/12

    22/63

    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 - refined count+recursion) C(n, k) = # trees where vertex n has de-gree k, T(n) = # of trees .Obvious:

    T(n) =

    n1

    k=1 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 connectedto 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 ofn such thatv is not in its subtree. The bijection is shown in the image:

    put tree with red root below

    the blue vertex

    put tree with red

    root below n

    and mark the blue vertex

    (the blue could also be a root)

    nn

    We now have to do some computation:

  • 8/3/2019 Graphentheorie WS11/12

    23/63

    4.2. COUNTING TREES 23

    C(n, k) = (n 1) k

    n k 1 C(n, k + 1)= (n 1)(nk1) k

    n k 1 k + 1

    n k 2 k + 2

    n k 3 . . .n 2

    1C(n, n 1)

    =1

    = (n 1)(nk1) (n 2)!(k 1)!(n k 1)!

    =

    n 2

    n k 1

    (n 1)(nk1)

    Now we can compute T(n) as:

    T(n) =

    n1

    k=1n 2

    n

    k

    1(n 1)

    (nk1)

    =

    (n2)l=0

    n 2

    l

    (n 1)l

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

    Proof. (Joyal)

    We count maps f : [n] [n], there are nn maps. Each map corresponds to a cycle-forest.

    x : 1 2 3 4 5 6 7 8 9 10 11 12 13 14

    f(x) : 3 11 5 5 12 11 5 7 5 6 11 3 6 3

    11

    2

    10

    6

    131

    3

    12

    144 7

    8

    95

    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)

    two row notation:

    3 5 11 125 12 11 3

    extract a path from the sorted two-row notation and attach the transient part:

  • 8/3/2019 Graphentheorie WS11/12

    24/63

    24 CHAPTER 4. TREES AND FORESTS

    5 12 11 3

    4 7 9

    8

    2 6

    10 13

    1 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 draw-

    ing 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...)

  • 8/3/2019 Graphentheorie WS11/12

    25/63

    4.2. COUNTING TREES 25

    Figure 4.5: -

    Das ist das Haus vom Ni-ko-laus

    Definition. 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 IfG 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 CkGluing the cycles into a single one. Invariant: Partition A1 ofE. On each Ai there is aclosed walk using all the edges ofAi. Pick a vertex that appears in two of the Ais andglue them at v.

  • 8/3/2019 Graphentheorie WS11/12

    26/63

    Chapter 5

    Vector Spaces Associated To A

    Graph

    5.1 Vector spaces over F2

    1. VG = FV2 = 2V the vertex space

    x VG x is the characteristic vector of some subset of Vdim(VG) = n , the standard basis is v1, . . . , vn

    2. EG = FE2 = 2

    E edge space

    dim(EG) = m , the standard basis is e1, . . . , emwe define x, y =

    di=1 xiyi . This looks like an inner product, but note that it

    is NOT positive definite (coefficients are in F2)

    Let Fbe a subspace ofF2d. F = {z F2d : x, z = 0x F}Lemma 5.1

    dim(F) + dim(F) = d

    Proof. Let M be the matrix that has all elements ofFas rows, M : F2d F2|F| .

    dim(ker(M) F

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

    = d

    Definition 5.2 (cycle space). The space Z 2E

    generated by simple cycles in G isthe cycle space. Its elements are called cycles.

    The dimension ofZ is the cyclotonic number ofG.

    Proposition 5.3

    Z is generated by simple induced cycles.

    26

  • 8/3/2019 Graphentheorie WS11/12

    27/63

    5.1. VECTOR SPACES OVER F2 27

    Proof. IfC is a cycle that is not induced, there must be a chord in C. Then we can findsmaller 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.Definition 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 cyclehas 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 degD(v) is odd XD, yv = 1 (odd) Z = Ssecond: we have seen that dim(F) + dim(F) = dim(F2E) 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 + kdim(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 vectorof this cycle {ze : e E\ T} is linear independent.

    e T:removing e from T increases the number of components, i.e. e defines a cut.

    {Se : e

    T

    }is linear independent.

    It follows, that dim(Z)+dim(Z) +dim(S)

    dim(F2E) = m equality in all 3 inequalities.

    Remark. 1. In general Z S = {0}

  • 8/3/2019 Graphentheorie WS11/12

    28/63

    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 ofGB MF2(n, m), B : F2E F2V , Z = ker(B), B : F2V F2E , S =img(B)

    5.2 Cycles and cuts in directed graphs

    We now take R vectorspaces and directed cycles / cuts.

    Ccycle with transversal direction , VC : E {1, 0, 1}, vC(e) =

    +1 e C forward0 e / C1 e C backward

    Z = VC : C cycle space of circulations / cycle space.

    (X, X) cut with direction, VX : E {1, 0, 1}, vX(e) =

    +1 e (X, X) forward0 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 =

    e

    vC(e)vX(e) =

    e(X,X)VC(e) = ( #edges from X toX)(#edges from X to 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 define 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).

  • 8/3/2019 Graphentheorie WS11/12

    29/63

    5.2. CYCLES AND CUTS IN DIRECTED GRAPHS 29

    Remark(space of circulations). f is a circulation iff there is flow conservation at every

    vertex: outedges e at v

    f(e) = inedges e at v

    f(e)

  • 8/3/2019 Graphentheorie WS11/12

    30/63

    Chapter 6

    Tree counting with

    determinants

    6.1 The Matrix-Tree Theorem

    We introduce some notation for special matrices first:

    A is the adjacency matrix ofG = (V, E), dimension is nn, Au,v ={

    1 (u, v) E0 else

    D = diag(d1, d2, . . . , dn), di = degree(i)

    L = D A the Laplacian ofG L is a principal minor ofL, i.e. it is L where we delete one row and column (we

    can just take the first) - dimension is (n 1) (n 1)

    Theorem 6.1 (Matrix-Tree-Theorem)

    T(G)# spanning trees ofG

    = det(L)

    30

  • 8/3/2019 Graphentheorie WS11/12

    31/63

    6.1. THE MATRIX-TREE THEOREM 31

    Example.

    L =

    4

    1

    1

    1

    1

    1 4 1 1 11 1 4 1 11 1 1 3 01 1 1 0 3

    # spanning trees = det

    4 1 1 11 4 1 11 1 3 01 1 0 3

    = 75

    G = K5 e , T(K5) = 53count pairs (T, e) with T tree in K5, e / T there are 53 6 (6 is the number ofnontree edges). Every edge is missed the same number of times in our graph

    there are53

    6

    10 = 75 .

    Proof. choose an orientation ofG and let E = {a1, . . . , an} ,N the incidence matrix ofG, N = (nij), i = 1 . . . n , j = 1 . . . m

    nij =

    1 ifi is head ofaj

    1 ifi is tail ofaj0 else

    Example. n =

    1 +1 0 1 1 0+1 1 +1 0 0 00 0 1 +1 0 +10 0 0 0 +1 1

    rank(N) #rows = n. We

    easily see that ni=1 rowi(N) = 0

    rank(N)

    n

    1

    4

    a5

    a3a1

    a4a2

    a6

    31

    2

    Proposition 6.2

    A set A columns ofN 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 edgeoccurs the same time with positive and negative sign).

    If

    aiA siai = 0 the scalar vector s is a nontrivial circulation cycle.

    N is N after deleting the first row. If F E, then N(F) is the restriction of N tocolumns corresponding to edges in F.

  • 8/3/2019 Graphentheorie WS11/12

    32/63

    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, thedeterminant det(N(F)) = 0.

    Proof. IfF is not a spanning tree and |F| = n1 , there must be a cycle in F N(F)is not linear independent det(N(F)) = 0IfF is a spanning tree

    det(N(F))Leibniz

    =

    sgn()

    ni(i)

    is a bijection between V \ {1} and edges in F. There is exactly one bijection thatleads to a nonzero contribution in the product:

    1

    2

    7

    3

    5

    6

    4

    (5)

    (6)

    (3)(4)(7)

    (2)

    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 finitetree 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 untilthe 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) =

    FE,|F|=n1det(N(F))2

    We now can take the Cauchy-Binet Formula

    det(B B) =

    A[m],|A|=ndet(B A)

    2

    to show

    T(G) = FE,|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]

  • 8/3/2019 Graphentheorie WS11/12

    33/63

    6.2. ARBORESCENCES 33

    6.2 Arborescences

    Definition 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 ofM 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 edgesfrom 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 partitioningthe outedges ofi such that outdegDj (i) 1 , j = 1, 2 amd keeping all other edges ofD for both.

    T1(D1) + T1(D2) = T1(D)

    det(M1) + det(M2) = 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 treehas no arb. with root 1, so T

    1(D) = 0.

    case 2: D has a cycle (not involving 1) no path to 1, no arborescence T1(D) = 0and as well

    i on the cycle

    rowi(M) = 0 det(M) = 0

  • 8/3/2019 Graphentheorie WS11/12

    34/63

    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 arborescenceand T1(D) = 1.

    Look for the column of a leaf j, there is only one 1 and the rest is 0, sinceoutdeg(j) = 1,indeg(j) = 0. Take this column for Laplace pivot and useinduction for the smaller matrix which corresponds to the smaller arborescence

    D \ {1}. We see det(M) = 1.

    1

    2

    3

    4

    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

    M =

    1 0 1 01 3 1 10 1 1 01 0 0 1

    , M =

    3 1 11 1 0

    0 0 1

    partition:

    M1 = 2 1 0

    1 1 0

    0 0 1M2 =

    1 0 11 1 0

    0 0 1

    1

    2

    3

    4

    Figure 6.4: -the graph for M2

    M1.1 =

    1 0 01 1 0

    0 0 1

  • 8/3/2019 Graphentheorie WS11/12

    35/63

    6.3. DIRECTED EULER-CYCLES 35

    1

    2

    3

    4

    Figure 6.5: -

    the graph for M1,1

    M1.2 =

    1 1 01 1 0

    0 0 1

    1

    2

    3

    4

    Figure 6.6: -

    the graph for M1,2

    6.3 Directed Euler-Cycles

    D eulerian directed graph, e = (v, u) edge ofD, 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) #arb. with root v

    vV

    (outdeg(v) 1)!

    Proof. Euler cycle in-arborescenceDefine the last-exit-tree: For all w = v we take the last edge leaving w in the eulercycle e1

    =(v,u). . . em.

    This is of course a set ofn 1 edges. This set is acyclic:

    If there would be a cycle, then take a vertex w on this cycle. The outgoing edgeofw is the last exit ofw. If we come back to w, we couldnt have met v since ithas no outedges in the last-exit tree. But this means we walked on the last-exit

  • 8/3/2019 Graphentheorie WS11/12

    36/63

    36 CHAPTER 6. TREE COUNTING WITH DETERMINANTS

    u

    v

    e

    1 10 2

    11

    12

    8

    73

    45

    9

    Figure 6.7: the last-exit tree

    edges in a cycle and came to the same vertex again, so the outgoing edge of wwas 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 ofui.) This yields a sequence e1, . . . , er of edges e1 = eand 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

    w3 vw1

    w2

    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 ofv is not used there is an outedge ofv 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 VProof. ED(e) = ED(e

    ) e, e E.

    TD(v) =ED(e)

    wV(outdeg(w) 1)!=

    ED(e)wV(outdeg(w) 1)!

    = TD(u)

    IfD is a connected 2-in 2-out graph ED = TD

  • 8/3/2019 Graphentheorie WS11/12

    37/63

    6.4. MEMORY WHEELS AND DEBRUIJN GRAPHS 37

    6.4 Memory Wheels and DeBruijn Graphs

    Definition 6.8. We have an alphabet , || = m and words from this alphabetof length n there are mn possible sequences. A memory wheel is a sequenceb1 . . . bmn , bi , such that each sequence/word of length n occurs in the stringb1 . . . bmnb1b2 . . . bn1.

    Example. = {0, 1}, n = 3

    0

    0

    0

    1

    0

    1

    1

    10 0 1

    0 1 0

    1 0 1

    0 1 1

    1 1 1

    1 1 0

    0 0 0

    1 0 0

    Question: How can we construct memory wheels?

    define the de Bruijn Graph for (, n) : It has all possible sequences as vertices andhas directed edges (a1a2 . . . an) (a2 . . . anan+1). We denote the de Bruijn graphfor words of length n on an alphabet of size m with Bn(m).

    413

    341

    441

    131141

    241 132

    133

    134

    Figure 6.8: Ex: n = 3, m = 4, = {1, 2, 3, 4}

    Example.

    Definition 6.9 (line graph). For G = (V, E) the line graph L(G) = (E, F), F ={(e, e) : e e = }.

    1 2

    3

    4 5

    6

    1 2

    3

    45

    6

    Figure 6.9: example of a line graph construction

  • 8/3/2019 Graphentheorie WS11/12

    38/63

    38 CHAPTER 6. TREE COUNTING WITH DETERMINANTS

    Definition 6.10 (directed line graph). For D = (V, A) the directed line graphL(D) =(A, B), B =

    {(a, a) : head(a) = tail(a)

    }Example. The easiest binary deBruijn-Graphs:

    00

    01

    11

    10

    000

    111

    101

    010001

    011

    100

    110

    B3(2)

    B2(2)

    Bn is the directed line graph ofBn1. A memory wheel for n wordscycle in de Bruijn graph Bn that visits every vertex exactly oncecycle in the de Bruijn graph Bn1 that visits every edge exactly once (Euler cycle)

    Questions. How many memory wheels are there?

    Answer: There are 22n(n+1).

    Lemma 6.11

    Let M be an n n matrix with M = 0 and M = 0, M the principal minor ofM.

    det(M

    xI) =

    x

    n

    det(M) + x2(. . . )

    Proof. M = 0 det(M) = 0, no constant coefficient in the characteristic polyno-

    mial. Add all rows to the first in (M xI) M =x x

    M1

    ,

    det(M1) = det(MxI) = x det1 1

    M1

    . Now add all columns to the first

    =

    n 1 1xx (M xI)x

    = xndet((MxI))+x2(. . . )+x2(. . . )

    Corollary 6.12 (Eigenvalue variant of the Matrix-Tree Theorem)For eigenvalues i of the Laplacian with 1 = 0

    T(G) =1

    n

    ni=2

    i

  • 8/3/2019 Graphentheorie WS11/12

    39/63

    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.

    T1(D) =1

    n

    ni=2

    i

    Lemma 6.14

    Ifu, v are vertices ofBn(m), then there is a unique path of length n from u to v.

    Proof.

    u = (a1 . . . an) (a2 . . . anb1) (b1 . . . bn) = v

    Proposition 6.15

    The eigenvalues of M(Bn(m)) (the directed Laplacian of Bn(m)) are 0 (with multi-plicity 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: true for k = 1(Ak)i,j =

    l(A

    k1)i,lal,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 nmn (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:

    mni=2

    i = mmn1 T1(Bn(m)) =

    i

    mn= mm

    n(n+1)

    so the number of Euler cycles starting in e is

    EBn(m)(e) = mmn(n+1) (m 1)!mn

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

  • 8/3/2019 Graphentheorie WS11/12

    40/63

    40 CHAPTER 6. TREE COUNTING WITH DETERMINANTS

    6.4.1 An Algebraic Approach to Memory Wheels

    For simplification we take m = p, p a prime, = Fp. Recursive generation of asequence si = a1si1 + a2si2 + + ansin with coefficients ai Fp.Initial conditions: sj = 0 for j < 0, some s0 = 0. The sequence generated by therecursion can be extended doubly infinite, it will be periodic. Let s1 . . . sr be a period,i.e. si = si+ri. To understand the period we work with polynomials

    P(x) = 1 a1x a2x2 anxn and S(x) =

    j=0

    sjxj

    Lemma 6.16

    s0 = 1 P(x) S(x) = 1

    Proof.b0 = s0a0 = 1 1 = 1

    bk =

    kj=0

    ajskj = sk a1sk1 anskn = 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

    P(x)= (1

    xt)S(x) = S(x)

    xtS(x) = s0+s1x+s2x

    2+

    s0xt

    s1x

    t+1

    . . .

    IfP(x) | (1 xt) , then Q(x) is a polynomial of degree t n sj sjt = 0 j >t n S has period t. Conversely: Ift is a period ofS, then 1xt

    P(x) is a polynomial

    (of degree t n). P(x) | (1 xt)

    Theorem 6.18

    In Fp[x] there is a polynomial p(x) of degree n with p(x) | (1 xpn1) but p(x) (1 xt)t < pn 1.Example (p=2). some good polynomials:

    x3 + x + 1

    x4 + x + 1x5 + x2 + 1

    ...

  • 8/3/2019 Graphentheorie WS11/12

    41/63

    6.4. MEMORY WHEELS AND DEBRUIJN GRAPHS 41

    x4 + x + 1, word length 4:

    0001111010110010001

    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.

  • 8/3/2019 Graphentheorie WS11/12

    42/63

    Chapter 7

    Extremal Graph Theory

    Extremal graph theory answers questions about the function fH : n ex(n, H).Definition 7.1. For a fixed graph H, we say G excludes H if there is no subgraph ofG isomorphic to H.ex(n, H) = max(|EG| : G excludes H, |VG| = n).The first thing we study is the case H = Kk, e.g. for H = K3 we consider trianglefree 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

    2 n

    2

    Theorem 7.2 (Mantel)

    ex(n, K3) = n2

    4

    and the unique maximizing graph is the balanced complete bipartite graph.

    Proof Idea. Do induction n 2 n: Take (u, v) EG. In a triangle-free graph theiru v

    n

    2 vertices

    neighborhoods have to be disjoint deg(v) 1 + deg(u) 1 n 2. By inductionhypothesis G \ {u, v} has at most ex(n 2, K3) = (n2)

    2

    4 edges, do inductionstep.

    42

  • 8/3/2019 Graphentheorie WS11/12

    43/63

    7.1. SOME IMPORTANT PARAMETERS OF GRAPHS 43

    7.1 Some important parameters of graphs

    Definition 7.3. a subgraph of G isomorphic to some complete graph Kk is aclique

    a subgraph ofG isomprphic to some Kk (graph without edges) is an independentset ofG. (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 . . . I s G with sj=1Ij = VG) is

    the chromatic number.

    C5

    (G) = 2(G) = 2

    (G) = 3K3,3

    (G) = 2(G) = 3

    (G) = 2

    Figure 7.1: Example: parameters ofC5 and K3,3

    Proposition 7.4 (2 bounds for )

    (G) (G)

    (G) n

    (G)

    Proof. Any two vertices of a clique have to be in different independent sets (color

    classes) of a coloring (G) (G).IfI1 . . . I s is a coloring Ij = V

    sj=1 |Ij | = n average size of the Ij = ns max size of an independent set n

    s n

    Theorem 7.5 (Turn)

    Let G = (V, E) be a graph on n vertices with (G) < k + 1 (k 2).

    |E| (1 1k

    )n2

    2

    Observation:. The Turn bound is best possible:

    Define the Turn Graph Tk(n) - Take independent sets I1 . . . ik with |Ij | = nj {n

    k, n

    k} with nj = n, and add all edges between vertices of different indepen-

    dent sets.

    (Tk(n)) = k

    |E| ( nk2)(k2

    )= n

    2

    k2k(k1)

    2 =k1k

    n2

    2

  • 8/3/2019 Graphentheorie WS11/12

    44/63

    44 CHAPTER 7. EXTREMAL GRAPH THEORY

    T3(10)

    Example. n = 10|E| = 4 3 + 4 3 + 3 3 = 33

    Turan says: |E| 23

    102

    2= 33

    1

    3

    First Proof. (shifting weights)

    Consider an optimization problem: Assign weights wi to the vertices vi such that wi 0,

    ni=1 wi = 1 and g(w) =

    i,jE wiwj is maximized.

    1. For a maximizing w we can assume that for all (i, j) E wiwj = 0.(suppose (i, j) / E, wj wi > 0. Let si =

    kN(i) wk,

    lN(j) wl. Ifsi sj consider weights w

    with with wi = wi + wj , wj = 0, w

    k = wkk = i, j.

    Then g(w) = g(w) + wjsi wjsj g(w)).This implies that all the weight is on a clique of size t for some t(by assumptiont k)

    2. For a maximizing w we can assume that for all i, j with wi > 0, wj > 0 we havewi = wj(Suppose that wi > wj > 0. Consider the weights w with wi =

    wi+wj2

    , wj =wi+wj

    2, wk = wkk = i, j. Then g(w) = g(w) wi(1 wi) wj(1 wj) +

    2wi+wj

    2 (1 wi+wj2 ) = g(w) + (wiwj)2

    2> g(w).

    Now we can determine g(w) with w maximizing weights:

    i in the clique wi = 1t g(w) =1t2

    edge contrib.

    t

    2

    #edges

    = 12 (t1

    t) maximized if

    t = k.Compare this to the weight distribution wi =

    1ni (feasible).

    g(w) =

    i,jE

    1

    n2= |E| 1

    n2 1

    2(

    k 1k

    ) |E| (1 1k

    )n2

    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 thisvertices B).

    |E[A]| =

    k

    2

    |E[B]| = (1 1k )(n k)2

    2[Induction]

  • 8/3/2019 Graphentheorie WS11/12

    45/63

    7.1. SOME IMPORTANT PARAMETERS OF GRAPHS 45

    |E[A,B]| (k 1)(n k)

    A characterization of maximizing examples

    Claim. A maximizing graph G has no 3 vertices with ((v, w) E, (u, v) / E, (w, u) /E.

    Proof of Claim. Case: 1 Ifd(u) < d(v), delete u and double v. This increases thenumber of edges and induces no (k + 1)-clique

    Case: 2 Ifd(u) < d(w) similar.

    Case: 3 Ifd(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 = Kn1n2...nk .Since G is maximizing |ni nj | 1.

    Third Proof. We will see that (G) vV 1dv+1 .Apply this to G : (G) = (G) vV 1dv+1 = vV 1ndv . Use Cauchy-Schwarza, b2 ||a||2||b||2 with a = (a1 . . . an), ai = 1ndi , b = (b1 . . . bn), bi =

    n di:

    n2 (

    1

    n

    di

    )(

    (n di))

    (G)(n2 2|E|) kn2 2k|E|

    (k1)n2

    |E| k1k

    n2

    2

    As result we have, that if |E| > n24 G contains a triangle. But we can also give aquantified version of this: If |E| > (14 + c)n2, then G contains 2c

    (n3

    )triangles. The

    proof is not given here, but you can find 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.

    We can generalize Turns ex(n, KK+1) =k1k

    n2

    2 to the theorem of Erds and Stone:

    ex(n, Tk+1(r)) = (k 1

    k+ o(1))

    n2

    r

  • 8/3/2019 Graphentheorie WS11/12

    46/63

    46 CHAPTER 7. EXTREMAL GRAPH THEORY

    (where f(x) o(1) limx = 0).A consequence of this is the following: For a graph Hwith chromatic number (H) =

    k + 1, k 2 we have ex(n, H) = (k1k + o(1))n22 .

    Proof. IfH Tk(n) G not containing H with k1k n2

    2 edges, ex(n, H) k1k

    n2

    2 .

    If H Tk+1(r) for some r, then ex(n, H) ex(n, Tk+1(r) ) = ( k1k +o(1)) n

    2

    2 .

    If(H) = 2 i.e. H is bipartite, ex(n, H) is more complicated. In fact ex(n, Kt,t) isnot precisely known.

    Theorem 7.6

    ex(n, C4) = (1

    2+ o(1))n

    32

    Proof. At first 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 Phas 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 allp prime (or prime power). From the projective planeswe construct the graph Gp with: V = P L, E = {(p,l) : p P, l L, p l}. Thisgraph cannot contain a C4: for a C4 we need p, q l and p, q k and l = k, but these3 together contradict the properties of the projective plane.

    q

    lk

    p

    Figure 7.2: A C4 would look like this, but this contradictsthe above listed properties of a projective plane!

    How many vertices and edges does our GP have? Answer: |P| = p2 + p + 1 = |L|

  • 8/3/2019 Graphentheorie WS11/12

    47/63

    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 + 1points on the line l

    n = 2(p2 +p + 1).

    |E| = (p2 +p + 1)(p + 1) (n2 ) 32 (n 32 ).For an upper bound, we count subgraphs S = G[{u,v,w}] with (u, v) E, (u, w) Ein two ways:

    Look at u:

    |S| =uV

    du2

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

    (

    du)

    2 (

    du2) (

    1)

    =n 1

    n(

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

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

    |E| n4

    (1 +

    4n 3) ( 12

    + o(1))n32

    We now want to give an inequality for (G).

    Theorem 7.7

    (G) vV

    1

    dv + 1

    Proof 1. (Algorithm MAX)

    repeat

    x vertex of max degree in GG G x

    until EG = return I G

    Let G = G x be the graph produced in an iteration of the algorithm and A(G) =vVG 1dv+1 .Claim:A(G) A(G)

    From this claim we get immediately the result:

    (G) |I| = A(I) A(G)

  • 8/3/2019 Graphentheorie WS11/12

    48/63

    48 CHAPTER 7. EXTREMAL GRAPH THEORY

    Proof of Claim:

    A(G) A(G) = vN(x)

    1dv

    vN[x]

    1dv + 1

    =

    vN(x)

    1

    dv(dv + 1) 1

    dx + 1

    vN(x)

    1

    dx(dx + 1) 1

    dx + 1

    =dx

    dx(dx + 1) 1

    dx + 1

    = 0

    Second Proof. (algorithm MIN)

    repeat

    x vertex of min degree in GI I+ xG G N[x]

    until G = return I

    Let G = G N(x) be the graph produced in an iteration of the algorithm. All thedeleted 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 1du+1 1du+1 . Thisyields

    A(G) A(G)

    vN[x]

    1

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

    dx + 1= A(G) 1

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

    = nr of iterations

    A(G).

    The third proof uses probabilities and expected values, so we have to remember a few

    definitions and facts from discrete probability:

    We have the space (, P), is a (finite) 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

  • 8/3/2019 Graphentheorie WS11/12

    49/63

    7.1. SOME IMPORTANT PARAMETERS OF GRAPHS 49

    The Expected Value is E(X) =

    X()P(). The expected value is lin-

    ear: E(X+ Y) = E(X) + E(Y)

    Note: ifX is a 0 1-variable

    E(X) =

    :X()=1

    1 P() = P({ : X() = 1}) =: P(X = 1)

    Example. As example, we calculate the expected number of triangles in a random

    graph G with edge probability 12 .

    There are 2(n

    2) possible graphs on V = {1, . . . , n}, and each of them appears with thesame probability.

    Exp. # triangles =1

    2(n2) G graph # triangles in GWe define a random variable X with X(G) = # triangles in G. now we have tocompute E(X). For each triangle T, T ([n]3 ) define YT(G) =

    {1 ifT G0 else

    X(G) =T

    YT(G)

    E(X) = E(

    TYT(G

    )) =

    TE(YT(G

    )) =

    TP(YT(G

    ) = 1) =

    T1

    8=

    1

    8

    n

    3

    [Zauberzeile]

    Third Proof. (Random greedy independent set)

    For this algorithm we take a random permutation Sn and order the vertices of Gaccording to this permutation. The algorithm picks a vertex v, if all of the neighbors ofv 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 first vertex in N[v]) =1

    dv + 1.

  • 8/3/2019 Graphentheorie WS11/12

    50/63

    50 CHAPTER 7. EXTREMAL GRAPH THEORY

    Define a random variable Yv() = {1 ifv is picked

    0 else

    E(size of the picked ind. set) =E(vV

    Yv)

    =vV

    E(Yv)

    =vV

    (P(Yv = 1))

    =vV

    1

    dv + 1

    So since the expected size is 1

    dv+1, there must be at least one independent set of size

    1dv+1 .

  • 8/3/2019 Graphentheorie WS11/12

    51/63

    Chapter 8

    Hamilton Cycles

    Definition 8.1. A hamilton cycle in a graph G = (V, E) is a cycle visiting each vertexexactly once.

    William Rowan Hamilton invented a game where you have to find 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 wecan give easy sufficient or necessary conditions.

    Can we find a constant k such that (max degree)> k suffices? NO! This isnot even sufficient for connectedness.

    Is it sufficient 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 gen-

    eral 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) n2

    51

  • 8/3/2019 Graphentheorie WS11/12

    52/63

    52 CHAPTER 8. HAMILTON CYCLES

    Proof. G is connected: x, y V(G) : N[x] N[y] = , so there must be a pathbetween them.

    Let P be a longest path in G, P = x0x1 . . . 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 n2 of {x1 . . . xk} are neighbors of x0. (if

    x0 xk

    not N(x) P we would get a longer path), and with the same argument that at leastn2 of{x0 . . . xk1} are neighbors of xk. This implies, that there must be at least onevertex 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.

    x0 xk

    A cycle covering P

    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. Butwith this cycle and y we can construct a longer path than P .

    Remark. This is best possible: Consider Kn2

    Kn2

    . This graph is not even connected,

    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 neigh-borhood ofx stay connected if we delete x. From the connecting paths we can constructa cycle of length (G) + 1.) Consider a component H of G \ C. H is connectedto at least (G) vertices of C, otherwise we would find 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, becausethen the edge (xi1, xi) would be missing! Now the set {xi1 : xi I}

    at least k, not conn. to H

    {z}, z

    arbitrary from H, is independent and has size k + 1.

  • 8/3/2019 Graphentheorie WS11/12

    53/63

    53

    xj

    xj1

    xi

    xi1

    C

    H

    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

    IfG 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 ofG S, buthas 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 sufficient - for example the Petersen graph is not hamiltonian, but

    the condition holds.

    Definition 8.5. A graph G is t-tough ifS V there are at most 1t|S| components in

    G S.Chvtal conjectured, that there is a t such that all t-tough graphs are hamiltonian. (Ingeneral 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 holdsG is hamiltonian G + (u, v) is hamiltonian

  • 8/3/2019 Graphentheorie WS11/12

    54/63

    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

    u

    x 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 theLemma (adding the edges) until no further application is possible. Note that all com-

    plete graphs are hamiltonian.

    The hamiltonian closure is unique, i.e. it is well-defined: since the degrees are increas-

    ing 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 i or

    dni n i then G is hamiltonian.Proof. We may assume that G is a hamilton closure. (In fact we proof that under thisconditions the hamilton closure of G is the Kn. This implies that G has a hamiltoncycle.) Suppose G = Kn u, v with (u, v) / E d(u) + d(v) < n. Take such apair with d(u) + d(v) is maximal and d(u) = i d(v) i < n2

  • 8/3/2019 Graphentheorie WS11/12

    55/63

    55

    Claim. di iProof 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 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 thenn i dni d(v) < n i

    Remark. The result is best possible. Look at

    S

    Ki Ki Kn2i

    The degree sequence is:

    i , i , i , . . . , i i

    , n i 1, n i 1, . . . , n i 1 n2i

    , n 1, n 1, . . . , n 1 i

    .

    This graph is not hamiltonian, Sis a seperator of size i and GShas i+1 components.In the degree sequence we find di = i i, dni = n i 1 < n i, and this is theonly 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 ofGn are the subsets of[2n + 1] with sizen or n + 1, there are edges between A, |A| = n and B, |B| = n + 1 ifA B

  • 8/3/2019 Graphentheorie WS11/12

    56/63

    Chapter 9

    Colorings - the chromatic

    number

    Remember the chromatic number (G). This is the minimal number of colors suchthat it is possible to color the vertices in a way that no adjacent vertices have the same

    color. Other definitions:

    (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 definitions.

    We have seen different bounds for (G):

    1. (Kn) = n

    2. H subgraph ofG (H) (G)3. (G) (G)4. (G) n

    (G)

    How good are these bounds?

    Example. Consider Kn2

    + Kn2

    . Here (G) = n2 + 1, (G) =n2 = (G) n < 2.

    So we see that the gap in inequality 4 can be huge.

    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 = C5We get Gk+1 from Gk with the following construction:Duplicate the vertices vi ofGk, 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 thenew vertices.

    56

  • 8/3/2019 Graphentheorie WS11/12

    57/63

  • 8/3/2019 Graphentheorie WS11/12

    58/63

    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 edgeprobability 12 , the clique number (G) is a random variable. We are interested in theProbability P( k).Let Zk = nr ofk-cliques in G.

    Zk =

    A([n]k )XA with XA(G) =

    {1 G[A] is a clique

    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

    2 1

    2 1

    2

    =

    1

    2

    (k2)

    E(Zk) = nk12(k2)

    nk12(k2) = 1

    2k log2(n)+ k(k1)2 = 1

    2 k2 (k12 log(n))

    In particular for k >> 2log(n), E(Zk) will be very small. For our original questionwe need

    E(Zk) =t1

    P(G has t k-cliques)

    t

    P(G has t k-cliques)

    = P(tG has t k-cliques)= P( k-clique in G)

    = P( k)This means P( k) is very small if k > 2log(n). In fact, for almost all randomgraphs it holds 2log(n). We can do exactly the same for , since G is also arandom graph. n2 log(n) . Indeed for almost all random graphs n2 log(n)(Bollobs)

  • 8/3/2019 Graphentheorie WS11/12

    59/63

    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 thevertices of G Greedy() is the coloring with c(vi) = min(j : color j is not usedfor a neighbor of vi with smaller index). From an algorithmic point this means thealgorithm takes the vertices and the colors in a specific 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 + 1colors, 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

    1

    2

    3

    5

    6

    7

    8

    910

    a

    a

    aa

    b

    c

    c

    c

    b

    4b

    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.

    Definition 9.1. G is k-degenerate if there is a permutation of the vertices such that allof the vertices have back-degree k.From the greedy algorithm we immediately get

    Proposition 9.2

    IfG is k-degenerate, then (G) k + 1.Another bound can be obtained by ordering the vertices with respect to the degrees:

    Proposition 9.3

    IfG 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 accord-

    ing 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 ofG. Then

    (G) 1 + maxH ind. subgraph ofG

    H

  • 8/3/2019 Graphentheorie WS11/12

    60/63

    60 CHAPTER 9. COLORINGS - THE CHROMATIC NUMBER

    Proof. maxH H = S every induced subgraph has a vertex of degree S. Make alist:

    Gn := G xn a vertex of deg S in GGn1 := Gn xn xn1 a vertex of deg S in Gn1Gn2 := Gn1 xn1 . . .

    ...

    In = x1x2 . . . xn each xi has back degree S, because xi is a vertex of minimumdegree 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 ofA in .Then k (back degree ofx)= |A| 1 = |V(H)| 1 degH(x).

    9.3 Colorings and Orientations

    From a permutation ofVG we can also get an orientation ofG. We just order the ver-tices according to and take the edges directed from left to right. With this orientationthe bounds on greedy algorithm are chi(G) 1+maxv indegGpi(v). The orientationsG that we get are acyclic, and actually every acyclic orientation

    G ofG is a G for

    some . The reason is, that an acyclic digraph has a topological sorting which gives usfeasible permutations.

    IfG is an acyclic orientation, we can also consider the transitive closure of G , thisis a poset (partially ordered set) P

    G. A minimum antichain decomposition of P

    Gis

    a coloring of G, and the antichains are independent sets of the comparability graph ofP

    G(which is a supergraph of G, has more edges). Remember the height of a poset: it

    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(PG

    ).

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

    G PG

    h = 2

    2

  • 8/3/2019 Graphentheorie WS11/12

    61/63

    9.3. COLORINGS AND ORIENTATIONS 61

    Theorem 9.5

    LetG 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 correspondingposet PD. Obviously h(PD) 1 + l(D) 1 + l(G).Claim: Taking an antichain partition ofPD 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 ofthe maximality ofD. y < x in PD, hence they are in different antichains. .

    After getting these upper bounds for , we could ask if the bound + 1 canbe 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)IfG 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 Tvincrease. Do the greedy coloring using x = v backdegree(x) deg(x) 1 1backdegree(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 connectivitywe use a little Lemma:

  • 8/3/2019 Graphentheorie WS11/12

    62/63

    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 ad-

    jacent and G \ {a1, a2} is connected, then (G) .Proof of Lemma. Consider a tree Tv ofG \ {a1, a2} rooted at v, suchthat all paths to v in Tv are increasing and a1, a2 are the first elements of. Use greedy with to color G:color(a1) = color(a2) = 1color(x) (deg(x) 1) + 1 (one tree-edge goes upwards, so backde-gree(x)

  • 8/3/2019 Graphentheorie WS11/12

    63/63

    9.3. COLORINGS AND ORIENTATIONS 63