Abstract
A graph is said to be an intersection graph if there is a set of objects such that each vertex corresponds to an object and two vertices are adjacent if and only if the corresponding objects have a nonempty intersection. There are several natural graph classes that have geometric intersection representations. The geometric representations sometimes help to prove tractability/intractability of problems on graph classes. In this paper, we show some results proved by using geometric representations.
1. Introduction
A graph is said to be an intersection graph if and only if there is a set of objects such that each vertex v in V corresponds to an object and if and only if and have a nonempty intersection. Interval graphs are a typical intersection graph class, and widely investigated. One reason is that interval graphs have wide applications including scheduling and bioinformatics [1]. Another reason is that an interval graph has a simple structure, and hence we can solve many problems efficiently, whereas the problems are hard in general [1,2]. Some natural generalizations and/or restrictions on interval graphs have been investigated (see, e.g., [2,3,4]). One of the reasons why these intersection graphs are investigated is that their geometric representations sometimes give intuitive simple proof of the tractable/intractable results. On the tractable results, we can solve a problem by using their geometric representations. The geometric representation of a graph gives us an intuitive expression of how to solve a problem using the representation. On the other hand, on the intractable representation, we can express the difficulty of a problem using the geometric representation of a graph. This gives us an intuition of why the problem is difficult to solve. That is, the property of the graph representation also represents the intractableness of the problem. This extracts the essence of the difficulty of the problem and helps us to understand not only the property of the class of graphs, but also the difficulty of the problem.
In this paper, the author reorganizes and shows some related results about graph classes with geometric representations presented at two conferences [5,6] with recent progress. We will mainly consider threshold graphs, chain graphs, and grid intersection graphs. A threshold graph is a graph such that each vertex has a weight, and two vertices are adjacent if and only if their total weight is greater than a given threshold value. The vertex set of a threshold graph is partitioned into two groups such that “light” vertices induce an independent set while “heavy” vertices induce a clique. The threshold graphs form a proper subclass of interval graphs, and can be represented in a compact representation of space. A chain graph is a bipartite analogy of the notion of threshold graphs. From a threshold graph, we can obtain a chain graph by removing edges between heavy vertices. In a sense, a chain graph can be seen as a two dimensional extension of a threshold graph. From this viewpoint, a grid intersection graph is a two dimensional extension of an interval graph. More precisely, a bipartite graph is a grid intersection graph if and only if each vertex (and ) corresponds to a vertical line (a horizontal line, resp.) such that two vertices are adjacent when they are crossing.
We first focus on a tractable problem on a graph that has a geometric representation. The bandwidth problem is one of the classic problems defined below. A layout of a graph is a bijection π between the vertices in V and the set . The bandwidth of a layout π equals . The bandwidth of G is the minimum bandwidth of all layouts of G. The bandwidth has been studied since the 1950s; it has applications in sparse matrix computations (see [7,8] for survey). From the graph theoretical point of view, the bandwidth of G is strongly related to the proper interval completion problem [9]. The proper interval completion problem is motivated by research in molecular biology, and hence it attracts much attention (see, e.g., [10]). However, computing the bandwidth of a graph G is one of the basic and classic -complete problems [11] (see also [12, GT40]). Especially, it is -complete even if G is restricted to a caterpillar with hair length 3 [13]. The bandwidth problem is -complete not only for trees, but also for split graphs [14] and convex bipartite graphs [15]. From the viewpoint of exact algorithms, the problem seems to be a difficult one; Feige developed an time exact algorithm for the bandwidth problem of general graphs in 2000 [16], and recently, Cygan and Pilipczuk improved it to time (see [17,18,19] for further details). Therefore approximation algorithms for several graph classes have been developed (see, e.g., [15,20,21,22,23]). Only a few graph classes have been known for which the bandwidth problem can be solved in polynomial time. These include chain graphs [24], cographs and related classes (see [25] for the details), interval graphs [26,27,28], and bipartite permutation graphs [6,29] (see [25] for a comprehensive survey).
One of the interesting graph classes for which the bandwidth problem can be solved efficiently is the class of interval graphs. In 1987, Kratsch proposed a polynomial time algorithm of the bandwidth problem for interval graphs [30]. Unfortunately, the algorithm has a flaw, which has been fixed by Mahesh et al. [27]. Kleitman and Vohra also show a polynomial time algorithm [26], and Sprague improves the time complexity to by sophisticated implementation of the algorithm [28]. All the algorithms above solve the decision problem that asks if an interval graph G has bandwidth at most k for given G and k. Thus, using binary search for k, we can compute the bandwidth of an interval graph G in time, where is the time complexity to solve the decision problem [28]. In the literature, it is mentioned that there are two unsolved problems for interval graphs. The first one is direct computation of the bandwidth of an interval graph. All the known algorithms are strongly dependent on the given upper bound k to construct a desired layout. To find a best layout directly, we need deeper insight into the problem and/or the graph class. The second one is to improve the time complexity to linear time. Since interval graphs have a relatively simple representation, many -hard problems can be solved in linear time including early results of recognition [31] and graph isomorphism [32].
Another interesting class consists of chain graphs. Chain graphs form a compact subclass of bipartite permutation graphs that plays an important role in developing efficient algorithms for the class of bipartite permutation graphs [33,34]. The algorithm by Kloks, Kratsch, and Müller computes the bandwidth of a chain graph in time [24]. Their algorithm uses the algorithm for an interval graph as a subroutine, and the factor comes from the time complexity to solve the bandwidth problem for the interval graph in [28].
In this paper, we propose simple algorithms for the bandwidth problem for the classes of threshold graphs and chain graphs.
The first algorithm computes the bandwidth of a threshold graph G in time and space. We note that threshold graphs form a proper subclass of interval graphs, and can be represented in a compact representation of space. The algorithm directly constructs an optimal layout, that is, we give a partial answer to the open problem for interval graphs, and improve the previously known upper bound to optimal.
Extending the first algorithm for threshold graphs, we next show an algorithm that computes the bandwidth of a chain graph in time and space. This algorithm also directly constructs an optimal layout, and improves the previously known bound in [24] to optimal.
More precisely, we first give a simple interval representation for a given threshold graph, and simplify the previously known algorithm for interval graphs. (We also show a new property of a previously known algorithm to show correctness.) Next, the simplified interval representation of a threshold graph is extended to the one of a chain graph in a nontrivial way.
Next we turn to the intractable problems on a graph that has a geometric representation. We focus on the class of grid intersection graphs that is a natural bipartite analogy and 2D generalization of the class of interval graphs; a bipartite graph is a grid intersection graph if and only if G is an intersection graph of X and Y, where X corresponds to a set of horizontal line segments, and Y corresponds to a set of vertical line segments. It is easy to see that the class of chain graphs is a proper subset of the class. Otachi, Okamoto, and Yamazaki investigate relationships between the class of grid intersection graphs and other bipartite graph classes [35]. In this paper, we show that grid intersection graphs have a rich structure. More precisely, we show two hardness results. First, the Hamiltonian cycle problem is still -complete even if graphs are restricted to unit length grid intersection graphs. The Hamiltonian cycle problem is one of the classic and basic -complete problems [12]. Second, the graph isomorphism problem is still -complete even if graphs are restricted to grid intersection graphs. (We say the graph isomorphism problem is -complete if the problem is as hard as to solve the problem on general graphs.) The results imply that (unit length) grid intersection graphs have so rich structure that many other hard problems may still be hard even on (unit length) grid intersection graphs.
We note that they are solvable in linear time on an interval graph [32,36]. Hence we can observe that the generalized interval graphs have so rich structure that some problems become hard on the graphs. Intuitively speaking, the linear (or one dimensional) structure of an interval graph makes these problems tractable, and this two dimensional extension makes them intractable. Such results for intractability also can be found in the literature; the Hamiltonian cycle problem is -complete on chordal bipartite graphs [37], and the graph isomorphism problem is -complete on chordal bipartite graphs and strongly chordal graphs [38].
It is worth mentioning that, recently, the computational complexity of the graph isomorphism problem for circular arc graphs became open again. (A circular arc graph is the intersection graph of circular arcs, which is another natural generalization of an interval graph.) The first “polynomial” time algorithm was given by Wu [39], but Eschen pointed out a flaw [40]. Hsu claimed an time algorithm for the graph isomorphism problem on circular-arc graphs [41]. However, recently, a counterexample to the correctness of the algorithm was found [42].
2. Preliminaries
The neighborhood of a vertex v in a graph is the set , and the degree of a vertex v is denoted by . If no confusion can arise we will omit the index G. For a subset U of V, the subgraph of G induced by U is denoted by . Given a graph , its complement is defined by . A vertex set I is an independent set if and only if contains no edges, and then the graph is said to be a clique. Two vertices u and v are called twins if and only if .
For a graph , a sequence of distinct vertices is a path, denoted by , if for each . The length of a path is the number of edges on the path. For two vertices u and v, the distance of the vertices, denoted by , is the minimum length of the paths joining u and v. A cycle consists of a path of length at least 2 with an edge , and is denoted by . The length of a cycle is the number of edges on the cycle (equal to the number of vertices). A path P in G is said to be Hamiltonian if P visits every vertex in G exactly once. The Hamiltonian path problem is to determine if a given graph has a Hamiltonian path. The Hamiltonian cycle problem is defined similarly for a cycle. The problems are well known -complete problem (see, e.g., [12]).
An edge that joins two vertices of a cycle but is not itself an edge of the cycle is a chord of that cycle. A graph is chordal if every cycle of length at least 4 has a chord. In this paper, we will discuss about intersection graphs of geometrical objects. Interval graphs are characterized by intersection graphs of intervals, and it is well known that chordal graphs are intersection graphs of subtrees of a tree (see, e.g., [2]). A graph is bipartite if and only if V can be partitioned into two sets X and Y such that every edge joins a vertex in X and the other vertex in Y. We sometimes denote a bipartite graph by to specify the two vertex sets. A bipartite graph is chordal bipartite if every cycle of length at least 6 has a chord.
A graph with is an interval graph if there is a finite set of intervals on the real line such that if and only if for each i and j with . We call the set of intervals an interval representation of the graph. For each interval I, we denote by and the right and left endpoints of the interval, respectively (therefore we have and ). An interval representation is called proper if and only if and for every pair of intervals I and J or vice versa. An interval graph is proper if and only if it has a proper interval representation. It is known that the class of proper interval graphs coincides with the class of unit interval graphs [43]. That is, any proper interval graph has a proper interval representation that consists of intervals of unit length (explicit and simple construction is given in [44]). Moreover, each connected proper interval graph has essentially unique proper (or unit) interval representation up to reversal in the following sense (see, e.g., [45]):
Proposition 1
We note that when G contains twins u and v, they correspond to the congruent intervals with and . In a sense, the ordering is still unique even if G contains twins up to isomorphism if the graph is unlabeled.For any connected proper interval graph without twins, there is a unique ordering (up to reversal) of n vertices such that G has a unique proper interval representation such that (and hence ). In other words, for a connected proper interval graph without twins, there exists a vertex ordering such that every interval representation of G satisfies either or .
For any interval representation and a point p, denotes the set of intervals that contain the point p.
A graph is called a threshold graph when there exist nonnegative weights for all and a threshold value t such that if and only if .
Let be a bipartite graph with , … , and , … , . The ordering of X has the adjacency property if and only if, for each vertex , consists of vertices that are consecutive in the ordering of X. A bipartite graph is said to be a chain graph if and only if there are orderings of X and Y that fulfill the adjacency property, and the ordering of X satisfies that . (The last property implies that the ordering of Y also satisfy ; see, e.g., [46].)
A graph with is said to be a permutation graph if and only if there is a permutation σ over V such that if and only if . Intuitively, each vertex v in a permutation graph corresponds to a line segment joining two points on two parallel line segments and . Then two vertices v and u are adjacent if and only if the corresponding line segments and intersect. The ordering of vertices gives the ordering of the points on , and the permutation of the ordering gives the ordering of the points on . We call the intersection model a line representation of the permutation graph. When a permutation graph is bipartite, it is said to be a bipartite permutation graph. Although a permutation graph has (exponentially) many line representations, a connected bipartite graph essentially has a unique line representation up to isomorphism (see [47] for further details):
Lemma 2
Let be a connected bipartite permutation graph without twins. Then the line representation of G is unique up to isomorphism.
The following proper inclusions are known (see, e.g., [46,48]):
Lemma 3
(1) Threshold graphs ⊂ interval graphs; (2) chain graphs ⊂ bipartite permutation graphs.
A natural bipartite analogy of interval graphs are called interval bigraphs which are intersection graphs of two-colored intervals so that we do not join two vertices if they have the same color. Based on the definition, Müller showed that the recognition problem for interval bigraphs can be solved in polynomial time [49]. Later, Hell and Huang show an interesting characterization of interval bigraphs, which is based on the idea to characterize the complements of the graphs [50]. Recently, efficient recognition algorithm based on forbidden graph patterns is developed by Rafiey [51].
A bipartite graph is a grid intersection graph if every vertex and can be assigned line segments and in the plane, parallel to the horizontal and vertical axis so that for all and , if and only if and cross each other. We call a grid representation of G, where and . A grid representation is unit if all line segments in the representation have the same (unit) length. A bipartite graph is a unit grid intersection graph if it has a unit grid representation.
Otachi, Okamoto, and Yamazaki show some relationship between (unit) grid intersection graphs and other graph classes [35]; for example, interval bigraph is included in the intersection of unit grid intersection graphs and chordal bipartite graphs. It is worth mentioning that it is open whether chordal bipartite graphs are included in grid intersection graphs or not.
Two graphs and are isomorphic if and only if there is a one-to-one mapping such that if and only if for every pair of vertices . We denote by if G and are isomorphic. The graph isomorphism (GI) problem is to determine if for given graphs G and . A graph class is said to be -complete if there is a polynomial time reduction from the graph isomorphism problem for general graphs to the graph isomorphism problem for . Intuitively, the graph isomorphism problem for the class is as hard as the problem for general graphs if is -complete. The graph isomorphism problem is -complete for several graph classes; for example, chordal bipartite graphs, and strongly chordal graphs [38]. On the other hand, the graph isomorphism problem can be solved efficiently for many graph classes; for example, interval graphs [32], probe interval graphs [52], permutation graphs [53], directed path graphs [54], and distance hereditary graphs [55].
3. Polynomial Time Algorithms for the Bandwidth Problem
A layout of a graph on n vertices is a bijection π between the vertices in V and the set . The bandwidth of a layout π equals . The bandwidth of G, denoted by , is the minimum bandwidth of all layouts of G. A layout achieving is called an optimal layout. On a layout π, we denote by for two vertex sets if and only if holds for every pair of and .
For given graph , a proper interval completion of G is a superset of E such that is a proper interval graph. Hereafter, we will omit the “proper interval” since we always consider proper interval completions. We say a completion is minimum if and only if for maximum cliques in and in for any other completion .
For a minimum completion , it is known that , where is a maximum clique in [9]. Let be an interval graph with an interval representation . For each maximal clique C, there is a point p such that induces the clique C by Helly property. Thus, for any given graph G, we can compute by Algorithm 1.
| Algorithm 1: Bandwidth of a general graph |
| Input : Graph G = (V,E) |
| Output: generate a proper interval graph that gives a minimum completion of G make the unique proper interval representation of find a point p such that for any other point on |
| returen (). |
In Algorithm 1, the key point is how to find the minimum completion of G in the first step. The following observation may not be explicitly given in literature, but it can be obtained from the results in [9] straightforwardly (for example, the proof of Theorem 3.2 in [9], this fact is implicitly used):
Observation 4
For a minimum completion of , let be the unique proper interval representation of stated in Proposition 1. Then the ordering gives an optimal layout of G, and vice versa.
Here we show a technical lemma for the proper interval subgraph of an interval graph that will play an important role of our results.
Lemma 5
Let be an interval graph with , and an interval representation of G. Let be a subset of such that forms a proper interval representation. That is, we have , and we can order as and for each . Let ρ be the injection from to with for each . Then, G has an optimal layout π such that each interval appears according to the ordering in . More precisely, for each i with , we have .
Proof. The proof is strongly related to the algorithm, which we call Algorithm KV, developed by Kleitman and Vohra in [26]. To be self-contained, we give a description of Algorithm KV in Appendix A. We recall that for given an interval representation of an interval graph and a positive integer k, Algorithm KV constructs a layout π of V that achieves the bandwidth at most k if . The main idea is as follows. We assume that we give the interval representation and as an input to Algorithm KV. Through the construction of the optimal layout π, indeed, Algorithm KV does not change the ordering in . We note that Algorithm KV itself does not mind the set . That is, for an interval graph , Algorithm KV does not change the ordering of any subset if induces a proper interval graph.
Basically, Algorithm KV greedily labels each interval from 1 to n, from left to right. Unlabeled intervals are divided into two groups; the intervals incident to labeled intervals and others. The former group is again divided into sets . A set contains unlabeled intervals that should have labels up to , where q is the largest label so far. In the first saturated with respect to , the interval having the smallest left endpoint is chosen as the next interval (ties are broken by the right endpoints).
To prove the lemma, we have to show the leftmost unlabeled interval in has to be chosen before when Algorithm KV chooses an interval in . When Algorithm KV picks up the first saturated in Step 7, we have . Hence, by a simple property of proper intervals, contains all unlabeled with such that is the rightmost labeled interval in and is the rightmost unlabeled interval in that is adjacent to a labeled interval. Among them, Algorithm KV picks up the interval that has the smallest left endpoint (in Step 2 or 8). Thus, with appropriate tie-breaking, the next labeled interval can be before . Therefore, Algorithm KV labels all intervals in from left to right, and we have the lemma. ■
3.1. Linear Time Algorithm for a Threshold Graph
We first show a linear time algorithm for computing of a connected threshold graph G. For a threshold graph , there exist nonnegative weights for and t such that if and only if . We assume that a threshold graph is given in the standard adjacency list manner. That is, each vertex has its own neighbor list and it knows its degree and weight. We assume that G is connected and V is already ordered as with for (this sort can be done in time by a standard bucket sort [56, Section 5.2.5] according to the degrees of vertices; ties may occur by twins, and are broken in any way). We can find ℓ such that and in time. Then G has the following interval representation :
- For , corresponds to the point i, that is, .
- For , corresponds to the interval , where j is the minimum index with .
For example, Figure 1(a) is a threshold graph; each number in a circle is its weight, and threshold value is 5. We have and its interval representation is given in Figure 1(b).
Figure 1.
(a) Threshold graph and (b) its interval representation.
Figure 1.
(a) Threshold graph and (b) its interval representation.

Theorem 6
Proof. We first observe that and for each with , and and for each i with . That is, G consists of two proper interval graphs induced by and (note that is shared). Their proper interval representations also appear in . Hence, by Lemma 5, there exists an optimal layout π of such that and . Thus we can obtain an optimal layout by merging two sequences of vertices.We assume that a connected threshold graph is given in the interval representation stated above. Then we can compute in time and space.
To obtain an optimal layout, by Observation 4, we construct a minimum completion of G from two sequences. The longest interval is given by ; since G is connected, . Hence, we extend all intervals (except ) to length and construct a minimum completion. We denote the extended interval by . That is, the length of for all i with . The extension is illustrated in Figure 2. The extension of intervals for is straightforward; just extend them to the right, which does not increase the size of a maximum clique. Thus we focus on the points with , which are extended to with length .
Figure 2.
Construction of a minimum completion.
Figure 2.
Construction of a minimum completion.

If does not contain the point 1, has to contain the point ℓ since it has to have length . On the other hand, once contains the point ℓ, we can set without loss of generality. Otherwise, the size of a maximum clique at the left side of the point i may increase. Similarly, once does not contain the point ℓ, we can set without loss of generality. That is, we can assume that or for each . If two intervals and satisfy , , and , we can make , and without increasing the size of a maximum clique. Specifically, we can take and .
From the above observation, a minimum completion is given by the following proper interval representation of n intervals of length for some m with : (0) for each , , where j is the minimum index with ; (1) for each , , and (2) for each , (Figure 2). Thus, to construct a minimum completion, we search the index m that minimizes a maximum clique in the proper interval graph represented by above proper interval representation determined by m.
In the minimum completion, there are ℓ distinct cliques , one induced at each point i with . Now we consider a maximum clique of the corresponding proper interval graph for a fixed .
At points in , it is easy to see that and hence the point ℓ induces maximum clique of size .
We next consider each point i in . At the point i, induces a clique that consists of and , where j is the minimum index with . Hence we have a clique of size at point i. Thus we have to find i in that gives a maximum one.
Therefore, for a fixed m, we compute these two candidates for a maximum clique from and , compare them, and obtain a maximum one. For every m, we have to find a minimum one of the maximum cliques, whose size gives . Thus we can compute by Algorithm 2.
| Algorithm 2: Bandwidth of a threshold graph |
| Input : Threshold graph G = (V, E) with w(v1 ≤ w(v2) ≤ … ≤ w(vn) and t Output: let ℓ be the minimum index with set ![]() |
The correctness of Algorithm 2 follows from Observation 4, Lemma 5 and the above discussions.
Algorithm 2 runs in time and space by a straightforward implementation. However, careful implementation achieves time and space as follows. When the algorithm updates m in step 3, the proper interval representation does not change except for one vertex . We assume that the value of the variable m is changed from to . Then, the interval is “flipped” from right to left centered at . More precisely, changing from to means changing from to , or equivalently, from to . This flip has two influences: First, the variable , which was the size of a maximum clique in , will be updated by either (1) current (added by since it is flipped from to ) or (2) , which is the size of clique induced at the new point , where j is the minimum index with . Second, the maximum clique in the range is updated from to . Thus, to find a maximum clique in the range , the algorithm does not need to check all indices in by the for-loop in steps 5 to 8. Precisely, we move step 4 to between steps 2 and 3, and replace the for-loop in steps from 5 to 8 by the following steps;
- let j be the minimum index with ;
- set ;
We assume that a connected threshold graph is given in the interval representation stated above. Let and be the sets of light and heavy vertices with and , respectively. Then, for a connected threshold graph , we have an optimal layout that satisfies , where and are a partition of such that for each and . Moreover, the optimal layout gives a maximum clique of the graph where is the completion. We can also partition into and such that on . Then we can observe that any arrangement of vertices in gives us an optimal layout. The following corollary will give us an important property in a chain graph.
Corollary 7
For a connected threshold graph , we have an optimal layout with indices m and such that and any arrangement of vertices in gives an optimal layout. Moreover, there is no edge between and on the completion.
3.2. Linear Time Algorithm for a Chain Graph
We next show a linear time algorithm for computing of a connected chain graph . We assume that and are already ordered by inclusion of neighbors; and . Since G is connected, we have and . We assume that a chain graph with and is given in space; each vertex stores one endpoint such that , and each vertex stores one endpoint such that . (We abuse the degree as a maximum index of the neighbors.) A chain graph has an intersection model of horizontal and vertical line segments (an example in Figure 3(a) has an intersection model in Figure 3(c)); X corresponds to a set of horizontal line segments such that all left endpoints have the same x-coordinate, and Y corresponds to a set of vertical line segments such that all top endpoints have the same y-coordinate. By the property of the inclusions of neighbors, on the intersection model, vertices in X can be placed from top to bottom and vertices in Y can be placed from right to left such that the lengths of their line segments are monotone. This also can be transformed to the line representation of a bipartite permutation graph in a natural way (Figure 3(b)). Then the endpoints on are sorted as from left to right.
Figure 3.
Chain graph (a) and its corresponding representations (b)–(e).
Figure 3.
Chain graph (a) and its corresponding representations (b)–(e).

For a chain graph , a graph is defined as follows [24]: We first define to be a graph obtained from G by making a clique of X; that is, . For , let be the set . Then the graph is obtained from G by making a clique of . More precisely, . Then, the following lemma plays an important role in the algorithm in [24], which computes the for a chain graph G by finding the minimum value of for each i.
Lemma 8
We first observe that is a threshold graph that has an interval representation in the form shown in Figure 3(c); that is, we project the representation in Figure 3(c) onto a horizontal line. The length of each does not change, and each degenerates to a point on the line. Intuitively, we can regard each as a point and each as an interval. More precisely, we assign the weights of the vertices as follows. For each , . For each , , where j is the minimum index of . Letting , we can obtain the desired threshold graph with interval representation obtained from the projection of one in Figure 3(c). Thus, by Theorem 6, can be computed in time and space. Hereafter, we construct all minimum completions of directly for .([24]) (1) is an interval graph for each i; (2) .
We introduce a which is a line segment joining two points and on and , respectively, on the line representation of a chain graph as follows (Figure 3(b)); is a fixed point on between and , and is a point on between and q, where q is the right neighbor point of on . More precisely, q is either (1) if , or (2) the maximum vertex in if . Using the wiper, can be obtained from G by making a clique which consists of the vertices corresponding to line segments intersecting on the line representation.
Intuitively, the interval representation of can be obtained as follows; first, we construct a line representation of G and put the (Figure 3(b)), second, we modify it to the intersection model of horizontal and vertical line segments with placed between and or , where is the minimum vertex in (Figure 3(c)), and finally, we stretch the to vertical line segment, or just a point 0 on an interval representation, and arrange the line segments corresponding to the vertices in X and Y (Figure 3(d)). We note that the interval representation of in Figure 3(d) is a combination of two interval representations (Figure 1(b)) of two threshold graphs that are separated by the . More precise and formal construction of the interval representation of is as follows. By Helly’s property, the intervals in the clique share a common point, say 0 (which corresponds to ). Then, centering the point 0, we can construct a symmetric interval representation as follows (Figure 3(d)); (1) each with corresponds to an interval , (2) each with corresponds to the point , (3) each with corresponds to an interval , and (4) each with corresponds to the point . We let , , , and . Then, two induced subgraphs and of are threshold graphs, which allows us to apply the algorithm in Section 3.1. (In Figure 3(d), is induced by and is induced by .) Now we are ready to prove the main theorem in this section.
Theorem 9
We assume that a chain graph is given in space as stated above. Then we can compute in time and space.
Proof. By Lemma 8, we can compute by computing the minimum for . By the fact that is a threshold graph and Theorem 6, we can compute in linear time and space. We only consider the case that . We separate the proof into three phases.
Algorithm:
Consider a fixed index i. The basic idea is similar to the algorithm for a threshold graph. We directly construct a minimum completion of . When G is a threshold graph, we put a midpoint m such that each point less than or equal to m is extended to an interval with , and each point greater than m is extended to an interval with , where v is the vertex corresponding to the point . Similarly, we put two midpoints ℓ in and r in . Now we make a proper interval representation instead of a unit interval representation to simplify the proof. (We note that any proper interval representation can be extended to a unit interval representation in a natural way [44]. Hence we can use a proper interval representation instead of a unit interval representation.) For two midpoints ℓ and r, we make a proper interval representation as follows; (1) for each with , , (2) for each with , , (3) for each with , , and (4) for each with , . In Figure 3(e), we give an example with and . For each possible pair of ℓ and r with and , we compute the size of a maximum clique in the proper interval representation. At this time, we have three candidates for a maximum clique at the left, the center, and the right parts of the proper interval representation. More precisely, for each fixed i, ℓ, and r, we define three maximum cliques , , and in three proper interval graphs induced by , where is the minimum vertex in , , and , where is the maximum vertex in , respectively. For example, in Figure 3(e), three sets are , , and , and hence at point -3 (or ), at point 0, and at point 2. Thus for , we have a maximum clique of size 9. For each pair , we compute , and then we take the minimum value of for all pairs, which is equal to for the fixed i. In the case in Figure 3(d) (), gives the minimum value . We next compute the minimum one for all i, which gives . Summarizing, we have Algorithm 3.
Correctness:
By Lemma 8, each graph is an interval graph and . For the interval representation of , we consider two proper interval subgraphs. The first induced subgraph , which consists of positive length intervals in , is a proper interval graph, and the second induced subgraph , which consists of intervals of length 0 (or points), is also a proper interval graph. Hence, by Lemma 5, there is an optimal layout that keeps their natural orderings over and . Therefore, by Observation 4, we can compute by extending intervals in them together to be proper. Using the same argument as in the proof of Theorem 6, we can use the set of intervals as a proper interval representation as is, and we must extend each interval in to be proper with respect to . Using the same argument twice, we can see that using the idea of two midpoints ℓ and r achieves an optimal layout.
| Algorithm 3: Bandwidth of a chain graph |
| Input : Chain graph G = (X, Y, E) with N(xn) ⊆ † ⊆ N(y1) ⊆ … ⊆ N(yn′) Output: by Algorithm 2 ![]() |
We first fix . In this case, we can compute , , and in time; the algorithm first starts , , and . That is, all points in are extended to the left, and all points in are extended to the right. If , the algorithm flips the interval (or updates ℓ or r) into , decreases or , and increases . Repeating this process, in time, when the algorithm meets or , the value gives the minimum size of the maximum cliques in three parts, or equivalently, gives a minimum completion of . When we have a minimum completion of , we say this pair is the best pair for .
Now, we compute , , and from , , and with the best pair for in time. Intuitively, is obtained from by the following steps; (1) remove from the point 1, and put it as an interval ; (2) shift all positive points at with to ; and (3) remove all intervals with and put them at as points. The movements have influences on , , and , and from them, we construct , , and , and obtain the best pair for in a similar way to that used in the proof of Theorem 6. Then, since , the total difference (or the total number of flipped intervals) can be bounded above by . Hence the computation of , , and from , , and requires time.
Repeating this process, the computation of , , , and the best pair of from , , and with the best pair for requires time for each . Hence, by maintaining the differences, the total computation time of Algorithm 3 is the sum of the computations of (1) , (2) , , , and the best pair of , and (3) , , and with the best pair of from , , , and the best pair of for , which is equal to . ■
Here we extend Corollary 7 to a chain graph.
Corollary 10
For a connected chain graph , we assume that and are already ordered by inclusion of neighbors. Then we have an optimal layout that satisfies such that (1) , , and for some , and (2) , , and for some . Any arrangement of vertices in gives us an optimal layout. Moreover, the bandwidth is determined by an edge between (1) and , (2) and , or (3) and .
Proof. For an optimal layout, we have a corresponding wiper. Then the set is determined by which is the maximum vertex in X not crossing the wiper. Then is determined by the maximum vertex in . Similarly, the set is determined by the minimum vertex not crossing the wiper, and is determined by the minimum vertex in . Considering the maximum cliques which can give the bandwidth, the corollary follows. ■
4. Intractable Problems on a (Unit) Grid Intersection Graph
In this section, we turn to the grid intersection graphs and intractable problems for the class.
4.1. The Hamiltonian Cycle Problem
We give two hardness results for grid intersection graphs in this section.
Theorem 11
The Hamiltonian cycle problem is -complete for unit grid intersection graphs.
Proof. It is clear that the problem is in . Hence we show -hardness. We show a similar reduction in [57]. We start from the Hamiltonian cycle problem in planar directed graph with degree bound two, which is still -hard [58]. Let be a planar directed graph with degree bound two. (We deal with directed graphs only in this proof; we will use as a directed edge, called arc, which is distinguished from .) As shown in [57,58], we can assume that consists of two types of vertices: (type △) with indegree two and outdegree one, and (type ▽) with indegree one and outdegree two. Hence, the set of vertices can be partitioned into two sets and that consist of the vertices in type △ and ▽, respectively.
Moreover, we have two more claims; (1) the unique arc from a type △ vertex has to be the unique arc to a type ▽ vertex; and (2) each of two arcs from a type ▽ vertex has to be one of two arcs to a type △ vertex. If the unique arc from a type △ vertex v is into one of a type △ vertex u, the vertex u has to be visited from v to make a Hamiltonian cycle. Hence the vertex u can be replaced by an arc from v to the vertex w which is pointed from u. On the other hand, if one of two arcs from a type ▽ vertex v reaches another type ▽ vertex u, the vertex u should be visited from v. Hence the other arc a from v can be removed from . Then the vertex w incident to a has degree 2. Hence we have two cases; w can be replaced by an arc, or we can conclude does not have a Hamiltonian cycle. Repeating these processes, we have the claims (1) and (2), which imply that we have , the underlying graph of is bipartite (with two sets and ), and any cycle contains two types of vertices alternately.
By the claims, we can partition arcs into two groups; (1) arcs from a type △ vertex to a type ▽ vertex called thick arcs, and (2) arcs from a type ▽ vertex to a type △ vertex called thin arcs. By above discussion, we can observe that any Hamiltonian cycle has to contain all thick arcs (Moreover, contracting thick arcs, we can show -completeness of the Hamiltonian cycle problem even if we restrict ourselves to the directed planar graphs that only consist of vertices of two outdegrees and two indegrees.)
Now, we construct a unit grid intersection graph from which satisfies the above conditions. One type ▽ vertex is represented by five vertical lines and two horizontal lines, and one type △ vertex is represented by three vertical lines and one horizontal line in Figure 4 (each corresponding line segments are in gray area). Each thick arc is represented by alternations of one parallel vertical line and one parallel horizontal line in Figure 4, and each thin arc is represented by alternations of two parallel vertical lines and two parallel horizontal lines in Figure 5. The vertices are joined by the arcs in a natural way. An example is illustrated in Figure 6.
Figure 4.
Reduction of thick arcs.
Figure 4.
Reduction of thick arcs.

Figure 5.
Reduction of thin arcs.
Figure 5.
Reduction of thin arcs.

Figure 6.
Reduction of a graph .
Figure 6.
Reduction of a graph .

For the resultant graph , it is obvious that the reduction can be done in a polynomial time, and is a unit grid intersection graph. Hence we show has a Hamiltonian cycle if and only if has a Hamiltonian cycle. First, we assume that has a Hamiltonian cycle , and show that also has a Hamiltonian cycle . visits the vertices (or line segments) in along as follows. For each thick arc in , the corresponding segments in are visited straightforwardly. We show how to visit the segments corresponding to thin arcs (Figure 7). For each thin arc not on , they are visited by as shown in the left side of Figure 7 (between u and v); a pair of parallel lines are used to sweep the arc twice, and the endpoints are joined by one line segment in the gadget of a type △ vertex (v). On the other hand, for each thin arc on , they are visited by as shown in the right side of Figure 7 (between w and v); a pair of parallel lines are used to sweep the arc once, and the path goes from e to a. Hence from a given Hamiltonian cycle on , we can construct a Hamiltonian cycle on .
Figure 7.
How to sweep thin arcs.
Figure 7.
How to sweep thin arcs.

Now we assume that has a Hamiltonian cycle , and show that also has a Hamiltonian cycle . By observing that there are no ways for to visit lines corresponding to thick arcs described above, and the unique center horizontal line of a type △ vertex can be used exactly once, we can see that forms a Hamiltonian cycle of as in the same manner represented above. Hence can be constructed from in the same way. ■ ■
Corollary 12
The Hamiltonian path problem is -complete for unit grid intersection graphs.
Proof. We reduce the graph in the proof of Theorem 11 to as follows; pick up any line segment in a thick arc, and add one more line segment as in Figure 8. Then, it is easy to see that has a Hamiltonian cycle if and only if has a Hamiltonian path (with an endpoint corresponding to the additional line segment). Hence we have the corollary. ■ ■
Figure 8.
Hamiltonian path problem.
Figure 8.
Hamiltonian path problem.

4.2. The Graph Isomorphism Problem
Theorem 13
The graph isomorphism problem is -complete for grid intersection graphs.
Proof. We show a similar reduction in [38,54]. We start by considering the graph isomorphism problem for general graphs. Let and with and be an instance of the graph isomorphism problem. (We will refer the graph in Figure 9(1) as an example). Without loss of generality, we assume that is connected. From , we define a bipartite graph with two vertex sets and by . (Intuitively, each edge is divided into two edges joined by a new vertex; see Figure 9(2)). Then, have degree 2 by its two endpoints in . It is easy to see that if and only if for any graphs and with resultant graphs and .
Figure 9.
Reduction for -completeness.
Figure 9.
Reduction for -completeness.

Now, we construct a grid intersection graph from the bipartite graph such that if and only if in the same manner. The vertex set consists of the following sets (see Figure 9(3)):
- , ; we let , , where for some .
- ; each vertex in is called pendant and , . That is, we have and .
- ; each vertex in is called connector, and , , , and .
The edge set contains the following edges (Figure 9(3)):
- For each i with , each pendant is joined to . That is, for each i with .
- For each j with , two pendants and are joined to . That is, for each j with .
- For each with , we have two vertices and with . For the three vertices , , , we add , , , , , into . Intuitively, each edge in is replaced by a path of length 3 that consists of one vertex in and the other one in .
Let and be any two graphs. Then, it is easy to see that implies . Hence, we have to show that is a grid intersection graph, and can be reconstructed from uniquely up to isomorphism.
We can represent the vertices in (white vertices in Figure 9(3)) as horizontal segments and the vertices in (black vertices in Figure 9(3)) as vertical segments as follows (Figure 10): First, all vertices in correspond to unit length horizontal segments that are placed in parallel. All vertices in correspond to unit length vertical segments placed in parallel, and the segments corresponding to vertices in and make a mesh structure (as in Figure 10). Each pendant vertex in and corresponds to a short segment, and is attached to its neighbor in an arbitrary way, for example, as in Figure 10. Each pair of connectors in and (or and ) joins corresponding vertices in and as in Figure 10. Then it is easy to see that the resultant grid representation gives .
Next, we show that can be reconstructed from uniquely up to isomorphism. First, any vertex of degree 1 is a pendant in . Hence we can distinguish from the other vertices. Then, for each vertex , if and only if , and if and only if . Hence two sets and are distinguished, and then can be divided into and . Moreover, we have . Thus, tracing the paths induced by , we can reconstruct each edge with and . Therefore, we can reconstruct from uniquely up to isomorphism.
Hence the graph isomorphism problem for grid intersection graphs is as hard as the graph isomorphism problem for general graphs. Thus the graph isomorphism problem is -complete for grid intersection graphs. ■ ■
Figure 10.
Grid representation of .
Figure 10.
Grid representation of .

5. Conclusions
In this paper, we focus on geometrical intersection graphs. From the viewpoint of the parameterized complexity (see Downey and Fellow [59]), it is interesting to investigate efficient algorithms for these graph classes with some constraints. What if the number of vertical lines (or the possible positions on the coordinate of vertical lines) is bounded by a constant? In this case, we can use the dynamic programming technique for the graphs. Do the restrictions make some intractable problems solvable in polynomial time? From the graph theoretical point of view, a geometric model for chordal bipartite graphs is open. It is pointed out by Spinrad in [60], but it is not solved yet. The graph isomorphism problem for unit grid intersection graphs is also interesting. By Theorem 13, the graph isomorphism problem is -complete for grid intersection graphs. In the proof, we only need two kinds of lengths—long line segments and short line segments, but the difference of these two lengths is essential in the proof, and we cannot make all line segments unit length in the reduction.
Appendix
A. Algorithm by Kleitman and Vohra
In [26], Kleitman and Vohra developed an algorithm for determining whether an interval graph has a bandwidth less than or equal to a given integer k. Their algorithm plays an important role in the proof of Lemma 5. To be self-contained, we give the details of their algorithm below:
| Algorithm 4: Algorithm KV |
| Input : An interval graph G = (V, E) and a positive intrger k. Output: A Layout realizing if it exists. Set and for all where . Set and ; Select with smallest (break ties by selecting the interval with smallest ) and set ; Set and . If , stop, all vertices have been labeled; If overlaps i and set Let . If for all , go to step 7; There is a j such that . Stop, for the bandwidth of the graph is ; Find the smallest value , such that ; Select with smallest (break ties as in Step 2). Set and go to Step 3. |
References
- Golumbic, M. Algorithmic Graph Theory and Perfect Graphs, 2nd ed.; Elsevier: Amsterdam, The Netherlands, 2004. [Google Scholar]
- Spinrad, J. Efficient Graph Representations; American Mathematical Society: Providence, RI, USA, 2003. [Google Scholar]
- Fishburn, P.C. Interval Orders and Interval Graphs; Wiley & Sons, Inc.: Hoboken, NJ, USA, 1985. [Google Scholar]
- McKee, T.; McMorris, F. Topics in Intersection Graph Theory; SIAM: Philadelphia, PA, USA, 1999. [Google Scholar]
- Uehara, R. Simple Geometrical Intersection Graphs. In Proceedings of the Workshop on Algorithms and Computation (WALCOM 2008); Springer-Verlag: Berlin/Heidelberg, Germany, 2008; pp. 25–33. [Google Scholar]
- Uehara, R. Bandwidth of Bipartite Permutation Graphs. In Proceedings of the Annual International Symposium on Algorithms and Computation (ISAAC 2008); Springer-Verlag: Berlin/Heidelberg, Germany, 2008; pp. 824–835. [Google Scholar]
- Lai, Y.L.; Williams, K. A survey of solved problems and applications on bandwidth, edgesum, and profile of graphs. J. Graph Theory 1999, 31, 75–94. [Google Scholar] [CrossRef]
- Chinn, P.Z.; Chvátalová, J.; Dewdney, A.K.; Gibbs, N.E. The bandwidth problem for graphs and matrices—A survey. J. Graph Theory 1982, 6, 223–254. [Google Scholar] [CrossRef]
- Kaplan, H.; Shamir, R. Pathwidth, bandwidth, and completion problems to proper interval graphs with small cliques. SIAM J. Comput. 1996, 25, 540–561. [Google Scholar] [CrossRef]
- Kaplan, H.; Shamir, R.; Tarjan, R. Tractability of parameterized completion problems on chordal, strongly chordal, and proper interval graphs. SIAM J. Comput. 1999, 28, 1906–1922. [Google Scholar] [CrossRef]
- Papadimitriou, C.H. The NP-completeness of the bandwidth minimization problem. Computing 1976, 16, 263–270. [Google Scholar] [CrossRef]
- Garey, M.; Johnson, D. Computers and Intractability—A Guide to the Theory of NP-Completeness; Freeman: Gordonsville, VA, USA, 1979. [Google Scholar]
- Monien, B. The bandwidth minimization problem for caterpillars with hair length 3 is NP-complete. SIAM J. Alg. Disc. Meth. 1986, 7, 505–512. [Google Scholar] [CrossRef]
- Kloks, T.; Kratsch, D.; Borgne, Y.L.; Müller, H. Bandwidth of Split and Circular Permutation Graphs. In Proceedings of the WG 2000; Springer-Verlag: Berlin/Heidelberg, Germany, 2000; pp. 243–254. [Google Scholar]
- Shrestha, A.M.S.; Tayu, S.; Ueno, S. Bandwidth of Convex Bipartite Graphs and Related Graphs. In Proceedings of the COCOON 2011; Springer-Verlag: Berlin/Heidelberg, Germany, 2011; pp. 307–318. [Google Scholar]
- Feige, U. Coping with the NP-Hardness of the Graph Bandwidth Problem. In Proceedings of the 7th Scandinavian Workshop on Algorithm Theory (SWAT 2000); Springer-Verlag: Berlin/Heidelberg, Germany, 2000; pp. 10–19. [Google Scholar]
- Cygan, M.; Pilipczuk, M. Exact and approximate bandwidth. Theor. Comput. Sci. 2010, 411, 3701–3713. [Google Scholar] [CrossRef]
- Cygan, M.; Pilipczuk, M. Even faster exact bandwidth. ACM Trans. Algorithm 2012, 8, 1–14. [Google Scholar] [CrossRef]
- Cygan, M.; Pilipczuk, M. Bandwidth and distortion revisited. Discrete Appl. Math. 2012, 160, 494–504. [Google Scholar] [CrossRef]
- Haralambides, J.; Makedon, F.; Monien, B. Bandwidth minimization: An approximation algorithm for caterpillars. Theory Comput. Syst. 1991, 24, 169–177. [Google Scholar] [CrossRef]
- Kloks, T.; Kratsch, D.; Müller, H. Approximating the bandwidth for asteroidal triple-free graphs. J. Algorithm 1999, 32, 41–57. [Google Scholar] [CrossRef]
- Karpinski, M.; Wirtgen, J.; Zelikovsky, A. An Approximation Algorithm for the Bandwidth Problem on Dense Graphs. TR-97-017, Electronic Colloquium on Computational Complexity (ECCC). 1997. Available online: http://eccc.hpi-web.de/report/1997/017/ (accessed on 24 January 2013).
- Gupta, A. Improved bandwidth approximation for trees and chordal graphs. J. Algorithm 2001, 40, 24–36. [Google Scholar] [CrossRef]
- Kloks, T.; Kratsch, D.; Müller, H. Bandwidth of chain graphs. Inf. Process. Lett. 1998, 68, 313–315. [Google Scholar] [CrossRef]
- Kloks, T.; Tan, R.B. Bandwidth and topological bandwidth of graphs with few P4’s. Discrete Appl. Math. 2001, 115, 117–133. [Google Scholar] [CrossRef]
- Kleitman, D.; Vohra, R. Computing the Bandwidth of Interval Graphs. SIAM J. Disc. Math. 1990, 3, 373–375. [Google Scholar] [CrossRef]
- Mahesh, R.; Rangan, C.P.; Srinivasan, A. On finding the minimum bandwidth of interval graphs. Inf. Comput. 1991, 95, 218–224. [Google Scholar] [CrossRef]
- Sprague, A. An O(nlogn) algorithm for bandwidth of interval graphs. SIAM J. Discrete Math. 1994, 7, 213–220. [Google Scholar] [CrossRef]
- Heggernes, P.; Kratsch, D.; Meister, D. Bandwidth of bipartite permutation graphs in polynomial time. J. Discret. Algorithm 2009, 7, 533–544. [Google Scholar] [CrossRef]
- Kratsch, D. Finding the minimum bandwidth of an interval graph. Inf. Comput. 1987, 74, 140–158. [Google Scholar] [CrossRef]
- Booth, K.; Lueker, G. Testing for the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. J. Comput. Syst. Sci. 1976, 13, 335–379. [Google Scholar] [CrossRef]
- Lueker, G.; Booth, K. A linear time algorithm for deciding interval graph isomorphism. J. ACM 1979, 26, 183–195. [Google Scholar] [CrossRef]
- Brandstädt, A.; Lozin, V. On the linear structure and clique-width of bipartite permutation graphs. Ars Comb. 2003, 67, 273–281. [Google Scholar]
- Uehara, R.; Valiente, G. Linear structure of bipartite permutation graphs with an application. Inf. Process. Lett. 2007, 103, 71–77. [Google Scholar] [CrossRef]
- Otachi, Y.; Okamoto, Y.; Yamazaki, K. Relationships between the class of unit grid intersection graphs and other classes of bipartite graphs. Discrete Appl. Math. 2007, 155, 2383–2390. [Google Scholar] [CrossRef]
- Keil, J. Finding hamiltonian circuits in interval graphs. Inf. Process. Lett. 1985, 20, 201–206. [Google Scholar] [CrossRef]
- Müller, H. Hamiltonian circuit in chordal bipartite graphs. Discret. Math. 1996, 156, 291–298. [Google Scholar] [CrossRef]
- Uehara, R.; Toda, S.; Nagoya, T. Graph isomorphism completeness for chordal bipartite graphs and strongly chordal graphs. Discret. Appl. Math. 2004, 145, 479–482. [Google Scholar] [CrossRef]
- Wu, T.H. An O(n3) isomorphism test for circular-arc graphs. Ph.D. Thesis, Applied Mathematics and Statistics, SUNY-Stonybrook, New York, NY, USA, 1983. [Google Scholar]
- Eschen, E.M. Circular-arc graph recognition and related problems. Ph.D. Thesis, Department of Computer Science, Vanderbilt University, Nashville, TE, USA, 1997. [Google Scholar]
- Hsu, W.L. O(M·N) Algorithms for the recognition and isomorphism problem on circular-arc graphs. SIAM J. Comput. 1995, 24, 411–439. [Google Scholar] [CrossRef]
- Curtis, A.R.; Lin, M.C.; McConnell, R.M.; Nussbaum, Y.; Soulignac, F.J.; Spinrad, J.P.; Szwarcfiter, J.L. Isomorphism of graph classes related to the circular-ones property. arXiv:1203.4822v1.
- Roberts, F.S. Indifference Graphs. In Proof Techniques in Graph Theory; Harary, F., Ed.; Academic Press: Waltham, MA, USA, 1969; pp. 139–146. [Google Scholar]
- Bogart, K.P.; West, D.B. A short proof that “proper=unit”. Discret. Math. 1999, 201, 21–23. [Google Scholar] [CrossRef]
- Deng, X.; Hell, P.; Huang, J. Linear-time representation algorithms for proper circular-arc graphs and proper interval graphs. SIAM J. Comput. 1996, 25, 390–403. [Google Scholar] [CrossRef]
- Uehara, R.; Uno, Y. On computing longest paths in small graph classes. Int. J. Found. Comput. Sci. 2007, 18, 911–930. [Google Scholar] [CrossRef]
- Saitoh, T.; Otachi, Y.; Yamanaka, K.; Uehara, R. Random Generation and Enumeration of Bipartite Permutation Graphs. In Proceedings of the 20th International Symposium on Algorithms and Computation (ISAAC 2009); Springer-Verlag: Berlin/Heidelberg, Germany, 2009; pp. 1104–1113. [Google Scholar]
- Brandstädt, A.; Le, V.; Spinrad, J. Graph Classes: A Survey; SIAM: Philadelphia, PA, USA, 1999. [Google Scholar]
- Müller, H. Recognizing interval digraphs and interval bigraphs in polynomial time. Disc. Appl. Math. 1997, 78, 189–205. Available online: http://www.comp.leeds.ac.uk/hm/pub/node1.html (accessed on 22 January 2013). [Google Scholar] [CrossRef]
- Hell, P.; Huang, J. Interval bigraphs and circular Arc graphs. J. Graph Theory 2004, 46, 313–327. [Google Scholar] [CrossRef]
- Rafiey, A. Recognizing interval bigraphs using forbidden patterns. Unpublished work. 2012. [Google Scholar]
- Uehara, R. Canonical Data Structure for Interval Probe Graphs. In Proceedings of the 15th Annual International Symposium on Algorithms and Computation (ISAAC 2004); Lecture Notes in Computer Science Volume 3341. Springer-Verlag: Berlin/Heidelberg, Germany, 2004; pp. 859–870. [Google Scholar]
- Colbourn, C. On testing isomorphism of permutation graphs. Networks 1981, 11, 13–21. [Google Scholar] [CrossRef]
- Babel, L.; Ponomarenko, I.; Tinhofer, G. The isomorphism problem for directed path graphs and for rooted directed path graphs. J. Algorithm 1996, 21, 542–564. [Google Scholar] [CrossRef]
- Nakano, S.-I.; Uehara, R.; Uno, T. A New Approach to Graph Recognition and Applications to Distance Hereditary Graphs. In Proceedings of the 4th Annual Conference on Theory and Applications of Models of Computation (TAMC 07); Springer-Verlag: Berlin/Heidelberg, Germany, 2007; pp. 115–127. [Google Scholar]
- Knuth, D. Sorting and Searching. In The Art of Computer Programming, 2nd ed.; Addison-Wesley Publishing Company: Boston, MA, USA, 1998. [Google Scholar]
- Uehara, R.; Iwata, S. Generalized Hi-Q is NP-Complete. Trans. IEICE 1990, E73, 270–273. Available online: http://www.jaist.ac.jp/˜uehara/pdf/phd7.ps.gz (accessed on 22 January 2013). [Google Scholar]
- Plesník, J. The NP-completeness of the hamiltonian cycle problem in planar digraphs with degree bound two. Inf. Process. Lett. 1979, 8, 199–201. [Google Scholar] [CrossRef]
- Downey, R.; Fellows, M. Parameterized Complexity; Springer: Berlin/Heidelberg, Germany, 1999. [Google Scholar]
- Spinrad, J. Open Problem List. 1995. Available online: http://www.vuse.vanderbilt.edu/~spin/open.html (accessed on 22 January 2013).
© 2013 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

