Graph Theory
Total Page:16
File Type:pdf, Size:1020Kb
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.