Graph Theory
Perfect Graphs PLANARITY
2 PERFECT GRAPHS
Perfect Graphs • A perfect graph is a graph in which the chromatic number of every induced subgraph equals the size of the largest clique of that subgraph (clique number).
• An arbitrary graph 퐺 is perfect if and only if we have:
∀ 푆 ⊆ 푉 퐺 휒 퐺 푆 = 휔 퐺 푆
• Theorem 1 (Perfect Graph Theorem) 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 cycle of odd length 5 or more.
3 PERFECT GRAPHS
Perfect Graphs
Perfect
Comparability Chordal
Bipartite Permutation Split Interval
Chordal Cograph Bipartite
Convex Quasi- Bipartite Thresshold
Biconvex Thresshold Bipartite
Bipartite 4 Permutation 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:
푥 → 푦 ⇔ 푆푋∩푆푌 ≠ ∅ • The intersection graph of a family of intervals on a linearly ordered set (like the real line) is called an Interval graph. • 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 Graph Property • 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 clique cover 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 chordal graph 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 tree 푇 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 comparability graph. (3) The maximal cliques of 퐺 can be linearly ordered such that, for every vertex 푥 of 퐺 the maximal cliques containing vertex 푥 occur consecutively.
37