9 About Intersection Graphs Since this lecture we focus on selected detailed topics in Graph theory that are "close to your teacher's heart"... The first selected topic is that of intersection graphs, i.e. of graphs that are defined by the intersecting pairs of certain objects. This area of graphs is motivated both by its geometric clearness and by its practical applicability (e.g. interval graphs). 1 4 5 •-- »_• Brief outline of this lecture • What are intersection graphs; the interval graphs as an example. • Chordal graphs and their properties. • Several more commonly studied intersection and geometric classes. • String and segment representations of graphs as another example. Petr Hliněný, FI MU Brno_1_FI: MA010: Intersection Graphs • • • 2 6 3 9.1 Intersection graphs; Interval graphs Definition 9.1. The intersection graph of a set family M is the graph IM on the vertices V = M and edges E = {{A, B} C M : A n B = 0}. Fact: Specific intersection graph classes are always closed on induced subgraphs. Fact: Every simple graph is isomorphic to the intersection graph of a suitable set system - take, for instance, the set of all edges incident with a vertex x as the representative Mx of this vertex. Petr Hliněný, Fl MU Brno FI: MA010: Intersection Graphs Interval graphs One of the oldest studied examples of intersection graphs are the interval graphs (shortly INT) - the intersection graphs of intervals on a line. Recall that these graphs have already been implicitly used in connection with the single job assignment problem, which actually was the colouring problem for interval graphs. Lemma 9.2. Every cycle of length more than three in an interval graph has a chord. Petr Hliněný, Fl MU Brno FI: MA010: Intersection Graphs 2 6 3 • Theorem 9.3. The class of interval graphs has the following characterizations: c • A graph is INT if and only if it has no induced subgraph isomorphic to one of • A graph G is INT if and only if G has no induced C4, and the complement of G has a transitive orientation. Petr Hliněný, Fl MU Brno FI: MA010: Intersection Graphs 9.2 Chordal graphs Definition: A graph G is chordal if there exists no induced cycle (i.e. no chordless cycle) of length > 3 in G. For example: Theorem 9.4. Every chaordal graph G contains a simplicial vertex, which is a vertex s such that the neighbours of s in G form a clique. c Proof: We moreover say that a graph H is bisimplicial if H is complete, or H contains two nonadjacent simplicial vertices. _Petr Hliněný, FI MU Brno_5_FI: MA010: Intersection Graphs The proof is acomplished in the following tricky sequence of three relatively straightforward claims: 1. It holds that for every cycle C in any chordal graph G, and an edge e there exists an edge f in G such that E(C) \ {e} U {/} contains a triangle. c 2. Let e = uv be an edge of G and let NG(v) - the neighbours of v - induce a bisimplicial subgr. of G. If v is simplicial in NG(u) but not in whole G, then there is another w adjacent to v but not to u, such that w is simplicial in NG(v). 3. Hence if G is not bisimplicial, but the neighbourhoods of its vertices all induce bisimplicial subgraphs, then G contains a cycle C contradicting (1). 4. Therefore, G is bisimplicial. Xq = u □ V Petr Hliněný, FI MU Brno FI: MA010: Intersection Graphs Corollary 9.5. Every chordal graphs has a simplicial decomposition, i.e. a vertex ordering V(G) = (v1, V2,..., vn) such that each Vj, i = 2,..., n, is simplicial in the subgraph induced on the vertex subset {v1,..., Vj_i}. Fact: Simplicial decompositions can be used to build efficient recognition algorithms for chordal and interval graphs. c Another characterization Theorem 9.6. A graph G is chordal if and only if there exists a tree T such that G is the intersection graph of a collection of subtrees in T. c Proof (only a sketch of =>• ); by induction on the number of vertices of G: • This is trivial for one vertex. c • Let v be a simplicial vertex of G, and let G0 = G—v. Then G0 has an intersection representation by subtrees in a tree To. c The neighbours of v in G form a clique K C G, and all the trees representing vertices of K must intersect in a joint node x G V(To). We construct T by adding a new leaf y in T0 adjacent to x, and represent the vertex v by a tree {y}. □ V Petr Hliněný, FI MU Brno FI: MA010: Intersection Graphs 9.3 More (intersection) graph classes We briefly and informally introduce few more commonly studied types of intersection graphs, mostly of geometric nature. • A line graph L(G) of a graph G is the intersection graph of the edges E(G). • Circular-interval graphs (CA) are the intersection graphs of intervals on a circle. • Circle graphs (CIR) are the intersection graphs of straight chords of a circle. • Disc graphs (DISC) are the intersection graphs of closed discs in the plane. Furthermore, unit-disc graphs are such that all the discs have unit size. • Box graphs (BOX) are the intersection graphs of axis-parallel "boxes" (from rectangles to higher dimensional bodies). Notice that these classes can be considered as generalizations of interval graphs.. . Petr Hliněný, Fl MU Brno_9_Fl: MA010: Intersection Graphs Theorem 9.7. A graph G is a line graph of a simple graph if, and only if, G does not contain any of the following induced subgraphs: Theorem 9.8. The class recognition problem - to decide whether a given graph belongs to the specified class, is • polynomial time solvable for INT, line graphs, CA, and CIR; c • and NP-hard for DISC, unit-DISC, BOX (in any dimension > 2). Petr Hliněný, FI MU Brno_10_FI:MA010: Intersection Graphs Contact (touching) graphs Considering intersection graphs of geometric objects, it is sometimes natural to define the following restriction: • Contact graphs are graphs having an intersection representation such that the objects "do not overlap" (formally, their topol. interiors are pairwise disjoint). A particularly beautiful result of Koebe reads: Theorem 9.9. A graph G is planar if, and only if, G is a contact graph of discs in the plane (a coin graph). V Petr Hlineny, FI MU Brr : MA010: Intersection Graphs 9.4 Curve and line segment intersection graphs • String graphs are the intersection graphs of simple curves in the plane. For example, every planar graph is a string graph, see: On the other hand, not all graphs are string graphs (the smallest non-string graphs have 12 vertices.) □ Moreover, the structure of string representations can be very complicated. Proposition 9.10. There exist string graphs such that every their representation contains a pair of curves having exponentially many intersections. Petr Hliněný, FI MU Brno FI:MA010: Intersection Graphs • Segment intersection graphs are the intersection graphs of straight line segments in the plane. For example, see: This is a proper subclass of string graphs, and the structure is again quite complicated. For instance, there exist segment intersection graphs such that every their representation requires double-exponential precision of segment coordinates. c Theorem 9.11. The class recognition problems are NP-hard for both string and segment intersection graphs. Petr Hliněný, FI MU Brno_FI: MA010: Intersection Graphs On the other hand, the following two statements are highly nontrivial and their proofs have been searched for many years. Theorem 9.12. The recognition problem of string graphs is in NP. c Theorem 9.13. Every planar graph is a segment intersection graph. c Question. How many "segment slopes" one needs to represent every planar graph as a segment intersection graph? V Petr Hiineny, FI MU Brr : MA010: Intersection Graphs "Match" graphs Similarly to coin graphs, one can straightforwardly define a special subclass of segment graphs in which the line segments in an intersection representation are not allowed to cross in their interior points (having pairwise disjoint interiors). • The aforementioned class is called the class of segment contact graphs. c Theorem 9.14. A graph G is a segment contact graph of only vertical and horizontal segments if, and only if, G is a planar bipartite graph. Theorem 9.15. The recognition problem is NP-complete for segment contact graphs. V Petr Hlineny, FI MU Brr : MA010: Intersection Graphs