Graph Theory

Perfect Graphs PLANARITY

2 PERFECT GRAPHS

 Perfect Graphs • A is a graph in which the chromatic number of every equals the size of the largest of that subgraph (clique number).

• An arbitrary graph 퐺 is perfect if and only if we have:

∀ 푆 ⊆ 푉 퐺 휒 퐺 푆 = 휔 퐺 푆

• Theorem 1 () A graph 퐺 is perfect if and only if its complement 퐺 is perfect

• Theorem 2 (Strong Perfect Graph Theorem) Perfect graphs are the same as Berge graphs, which are graphs 퐺 where neither 퐺 nor 퐺 contain an induced of odd length 5 or more.

3 PERFECT GRAPHS

 Perfect Graphs

Perfect

Comparability Chordal

Bipartite Permutation Interval

Chordal Bipartite

Convex Quasi- Bipartite Thresshold

Biconvex Thresshold Bipartite

Bipartite 4 Permutation PERFECT GRAPHS

 Intersection Graphs • Let 퐹 be a family of nonempty sets. The of 퐹 is obtained be representing each set in 퐹 by a :

푥 → 푦 ⇔ 푆푋∩푆푌 ≠ ∅ • The intersection graph of a family of intervals on a linearly ordered set (like the real line) is called an . • An induced subgraph of an interval graph is an interval graph.

5 PERFECT GRAPHS

 Intersection Graphs • Let 퐹 be a family of nonempty sets. The intersection graph of 퐹 is obtained be representing each set in 퐹 by a vertex:

푥 → 푦 ⇔ 푆푋∩푆푌 ≠ ∅ • Circular-arc graphs properly contain the internal graphs.

6 PERFECT GRAPHS

 Intersection Graphs • Let 퐹 be a family of nonempty sets. The intersection graph of 퐹 is obtained be representing each set in 퐹 by a vertex:

푥 → 푦 ⇔ 푆푋∩푆푌 ≠ ∅ • A permutation diagram consists of n points on each of two parallel lines and n straight line segments matching the points.

7 PERFECT GRAPHS

 Intersection Graphs • Let 퐹 be a family of nonempty sets. The intersection graph of 퐹 is obtained be representing each set in 퐹 by a vertex:

푥 → 푦 ⇔ 푆푋∩푆푌 ≠ ∅ • Intersecting chords of a circle

8 PERFECT GRAPHS

 Triangulated • Every simple cycle of length 푙 > 3 possesses a chord.

• Triangulated graphs (or chordal graphs)

9 PERFECT GRAPHS

 Transitive Orientation Property • Each edge can be assigned a one-way direction in such a way that the resulting oriented graph (푉, 퐹):

푎푏 ∈ 퐹 푎푛푑 푏푐 ∈ 퐹 ⇒ 푎푐 ∈ 퐹 (∀ 푎, 푏, 푐 ∈ 푉)

• Comparability graphs satisfy the transitive orientation property.

10 PERFECT GRAPHS

 Transitive Orientation Property • Each edge can be assigned a one-way direction in such a way that the resulting oriented graph (푉, 퐹):

푎푏 ∈ 퐹 푎푛푑 푏푐 ∈ 퐹 ⇒ 푎푐 ∈ 퐹 (∀ 푎, 푏, 푐 ∈ 푉)

• Comparability graphs satisfy the transitive orientation property.

11 PERFECT GRAPHS

 Basic Numbers in Graphs • Clique number 흎(푮): the number of vertices in a maximum clique of 퐺 • Stability number 휶(푮): the number of vertices in a stable set of max cardinality

12 PERFECT GRAPHS

 Basic Numbers in Graphs • Clique number 흎(푮): the number of vertices in a maximum clique of 퐺 • Stability number 휶(푮): the number of vertices in a stable set of max cardinality

• A of size 푘 is a partition 푉 = 퐶1 + 퐶2 + ⋯ + 퐶푘 such that 퐶푖 is a clique.

• A proper coloring of size 푐 (proper 푐-coloring) is a partition 푉 = 푋1 + 푋2 + ⋯ + 푋푐 such that 푋푖 is a stable set. • Clique cover number 휿(푮) is the size of the smallest possible clique cover of 퐺 • Chromatic number 흌(푮) the smallest possible 푐 for which there exists a proper c-coloring of 퐺.

13 PERFECT GRAPHS

 Basic Numbers in Graphs • Clique number 흎(푮): the number of vertices in a maximum clique of 퐺 • Stability number 휶(푮): the number of vertices in a stable set of max cardinality • Clique cover number 휿(푮) is the size of the smallest possible clique cover of 퐺 • Chromatic number 흌(푮) the smallest possible 푐 for which there exists a proper c-coloring of 퐺. ------

For any graph 퐺 it holds that: 흎(푮) ≤ 흌(푮) and 휶(푮) ≤ 휿(푮), while, 휶(푮) = 흎(푮 ) and 휿(푮) = 흌(푮 )

14 PERFECT GRAPHS

 Basic Numbers in Perfect Graphs • Clique number 흎(푮): the number of vertices in a maximum clique of 퐺 • Stability number 휶(푮): the number of vertices in a stable set of max cardinality • Clique cover number 휿(푮) is the size of the smallest possible clique cover of 퐺 • Chromatic number 흌(푮) the smallest possible 푐 for which there exists a proper c-coloring of 퐺. ------

• 흌 −Perfect property: For each induced subgraph 퐺퐴 of 퐺

휒(퐺퐴) = 휔(퐺퐴)

• 휶 −Perfect property : For each induced subgraph 퐺퐴 of 퐺 15 훼(퐺퐴) = 휅(퐺퐴) PERFECT GRAPHS

 Basic Numbers in Perfect Graphs • Clique number 흎(푮): the number of vertices in a maximum clique of 퐺 • Stability number 휶(푮): the number of vertices in a stable set of max cardinality • Clique cover number 휿(푮) is the size of the smallest possible clique cover of 퐺 • Chromatic number 흌(푮) the smallest possible 푐 for which there exists a proper c-coloring of 퐺. ------Let 퐺 = (푉, 퐸) be an undirected graph:

푃 1 흎 푮푨 = 흌 푮푨 ∀ 퐴 ∈ 푉

푃 2 휶 푮푨 = 휿 푮푨 ∀ 퐴 ∈ 푉 퐺 is called Perfect 16 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord)

17 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Dirac showed that: every has a simplicial node, a node all of whose neighbors form a clique.

18 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Dirac showed that: every chordal graph has a simplicial node, a node all of whose neighbors form a clique.

19 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Dirac showed that: every chordal graph has a simplicial node, a node all of whose neighbors form a clique.

• It follows easily from the triangulated property that deleting nodes of a chordal graph yields another chordal graph.

20 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Recognition Algorithm :

1. Find a simplicial node of 퐺

2. Delete it from 퐺, resulting 퐺’

3. Recourse on the resulting graph 퐺’, until no node remain

21 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Recognition Algorithm :

1. Find a simplicial node of 퐺

2. Delete it from 퐺, resulting 퐺’

3. Recourse on the resulting graph 퐺’, until no node remain • Node-Ordering: perfect elimination ordering (PEO), or perfect elimination scheme.

22 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Node-Ordering: perfect elimination ordering (PEO), or perfect elimination scheme.

• Let 휎 = [푣1, 푣2, … , 푣푛] be an ordering of the vertices of a graph 퐺 푉, 퐸 , then 휎 = peo if each 풗풊 is a simplicial node to graph 퐺 푣푖, 푣푖+1, … , 푣푛 .

23 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Node-Ordering: perfect elimination ordering (PEO), or perfect elimination scheme.

• Let 휎 = [푣1, 푣2, … , 푣푛] be an ordering of the vertices of a graph 퐺 푉, 퐸 , then 휎 = peo if each 풗풊 is a simplicial node to graph 퐺 푣푖, 푣푖+1, … , 푣푛 .

24 PERFECT GRAPHS

 Triangulated Graphs • Triangulated graphs, or Chordal graphs, or Perfect Elimination graphs: 퐺 triangulated ⇔ 퐺 has the triangulated graph property (i.e., Every simple cycle of length 푙 > 3 possesses a chord) • Node-Ordering: perfect elimination ordering (PEO), or perfect elimination scheme.

• Let 휎 = [푣1, 푣2, … , 푣푛] be an ordering of the vertices of a graph 퐺 푉, 퐸 , then 휎 = peo if each 풗풊 is a simplicial node to graph 퐺 푣푖, 푣푖+1, … , 푣푛 . 1 3 5 7 휎 = [1, 7, 2, 6, 3, 5, 4] 퐺1 has 96 different peo 25

2 4 6 PERFECT GRAPHS

 Triangulated Graphs • LexBFS Algorithm • Algorithm LexBFS: 1. for all 푣 ∈ 푉 do 푙푎푏푒푙(푣) ∶ = () ; 2. for 푖 ∶ = |푉| down to 1 do 1) select 푣 ∈ 푉 with lexmax 푙푎푏푒푙 (푣); 2) 휎 (푖) ← 푣; 3) for all 푢 ∈ 푉 ∩ 푁(푣) do 4) 푙푎푏푒푙 (푢) ← 푙푎푏푒푙 (푢) || 푖 5) 푉 ← 푉 \{푣}; end

26 PERFECT GRAPHS

 Triangulated Graphs • MCS Algorithm • Algorithm MCS: 1. for 푖 ∶ = |푉| down to 1 do 1) select 푣 ∈ 푉 with max number of numbered neighbors; 2) number 푣 by 푖 3) 휎 (푖) ← 푣; 4) 푉 ← 푉 \ {푣}; end

27 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• If no proper subset of 푆 in an 푎 − 푏 separator, 푆 is called Minimal Vertex Separator.

The set {푦, 푧} is a minimal vertex separator for 푝 and 푞.

28 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• If no proper subset of 푆 in an 푎 − 푏 separator, 푆 is called Minimal Vertex Separator.

The set {푥, 푦, 푧} is a minimal vertex separator for 푝 and 푟 (푝 − 푟 separator).

29 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (1) ⇒ (3)

30 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (1) ⇒ (3)

o Let 푆 be an 푎 − 푏 separator.

o We will denote 퐺퐴, 퐺퐵 the connected components of 퐺푉−푆 containing 푎, 푏. 31 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (1) ⇒ (3)

o Since 푆 is minimal, every vertex 푥 ∈ 푆 is a neighbor of a vertex in 퐺퐴 and a vertex in 퐺퐵.

o For any 푥, 푦 ∈ 푆, ∃ minimal paths 32 • 푥, 푎1, … , 푎푖, … , 푎푟, 푦 푎푖 ∈ 퐺퐴 and • 푥, 푏푘, … , 푏푖, … . , 푏1, 푦 푏푖 ∈ 퐺퐵 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (1) ⇒ (3)

o Since [푥, 푎1, … 푎푟, 푦, 푏1, … . , 푏푘, 푥] is a simple cycle of length 푙 ≥ 4, ⇒ ⇒ it contains a chord.

33 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (1) ⇒ (3)

o For every 푖, 푗 푎푖푏푗 ∉ 퐸, (S is 푎 − 푏 separator) and also 푎푖푎푗 ∉ 퐸, 푏푖푏푗 ∉ 퐸 (by the minimality of the paths)

34 o Thus, 푥 푦 ∉ 퐸. PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

o Proof: (3) ⇒ (1)

o Suppose every minimal separator 푆 is a clique Let [푣1, 푣2, … . , 푣푘, 푣1] be a chordless cycle.

o 푣1 and 푣3 are nonadjacent. o Any minimal 푣 − 푣 separator 푆 contains 푣 and at least one of 1 3 1,3 2 35 푣4, 푣5, … … , 푣푘. But vertices 푣2, 푣푖 (푖 = 4, 5, … , 푘) are nonadjacent ⇒ 푆1,3 does not induce a clique. PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

• The chordal graphs are exactly the intersection graphs of subtrees of trees. That is, for a 푇 and subtrees 푇1, 푇2, … , 푇푛 of 푇 there is a graph 퐺: o its nodes correspond to subtrees 푇1, 푇2, … , 푇푛, and o two nodes are adjacent if the corresponding subtrees share a node of 푇.

36 PERFECT GRAPHS

 Properties • Definition: A subset 푆 of vertices is called a Vertex Separator for nonadjacent vertices 푎, 푏 or, equivalently, 풂 − 풃 separator, if in graph 퐺푉−푆 vertices 푎 and 푏 are in different connected components.

• Theorem 3 (Dirac 1961, Fulkerson and Gross 1965): (1) 퐺 is triangulated. (2) 퐺 has a peo; moreover, any simplicial vertex can start a perfect order. (3) Every minimal vertex separator induces a complete subgraph of 퐺.

• Theorem 4: Let 퐺 be a graph. The following statements are equivalent. (1) 퐺 is an interval graph. (2) 퐺 contains no 퐶4 and 퐺 is a . (3) The maximal cliques of 퐺 can be linearly ordered such that, for every vertex 푥 of 퐺 the maximal cliques containing vertex 푥 occur consecutively.

37