Introduction
A graph is 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. Such a set of objects is a representation of the graph. See [BLS99, Golumbic04, MM99, Spinrad03] for survey. Let and be two horizontal lines in the plane with above . Trapezoid graphs are the intersection graphs of trapezoids that are defined by an interval on and an interval on . Trapezoid graphs have been introduced in [CK87CN, DGP88DAM] as a generalization of both interval graphs and permutation graphs. Many recognition algorithms and structural characterizations are provided for trapezoid graphs [CC96DAM, Cogis82bDM, GT04, FHM94SIAMDM, Langley95DAM, MS94JAL, MC11DAM]. We obtain some interesting subclasses of trapezoid graphs by restricting the trapezoids in the representation. A trapezoid graph is a simpletriangle graph if every trapezoid in the representation is a triangle with the apex on and the base on . Similarly, a trapezoid graph is a triangle graph if every trapezoid in the representation is a triangle, but there is no restriction on which line contains the apex and the base. Simpletriangle graphs and triangle graphs have been introduced in [CK87CN] and studied under the name of PI graphs and PI* graphs, respectively [BLS99, COS08ENDM, CK87CN, Spinrad03], where PI stands for PointInterval. Moreover, a trapezoid graph is a parallelogram graph if every trapezoid is a parallelogram, and parallelogram graphs coincide with bounded tolerance graphs [BFIL95DAM, GMT84DAM]. These three graph classes are proper subclasses of trapezoid graphs, and they contain both interval graphs and permutation graphs as proper subclasses. The time complexity of the recognition problem of these three graph classes was a longstanding open problem [BLS99, Spinrad03], which was recently settled. While the problem is NPcomplete for triangle graphs [Mertzios12TCS] and parallelogram graphs [MSZ11SIAMCOMP], an time recognition algorithm has been given for simpletriangle graphs [Mertzios15SIAMDM], where and are the number of vertices and nonedges of the graph, respectively. This algorithm reduces the recognition problem of simpletriangle graph to the linearinterval cover problem, a problem of covering an associated bipartite graph by two chain graphs satisfying additional conditions. In [Takaoka17LNCS], we showed an alternative algorithm for the linearinterval cover problem, but this does not improve the running time. Meanwhile, we showed in [Takaoka18DM] a vertex ordering characterization that a graph is a simpletriangle graph if and only if there is a linear ordering of the vertices containing both an alternating orientation of the graph and a transitive orientation of the complement of the graph. Using this vertex ordering characterization, we show in this paper an time recognition algorithm for simpletriangle graphs, where is the number of edges of the graph. Our algorithm is shown in the next section, and correctness of the algorithm is proved in Section Document. We finally discuss our results and further research in Section Document.
The recognition algorithm
Preliminaries
Notation
In this paper, we will deal only with finite graphs having no loops and multiple edges. Unless stated otherwise, graphs are assumed to be undirected, but we also deal with graphs having directed edges. We write for the undirected edge joining a vertex and a vertex , and we write for the directed edge from to . For a graph , we sometimes write for the vertex set of and write for the edge set of . Let be an undirected graph. The complement of is the graph such that if and only if for any two vertices . A sequence of distinct vertices is a path from to in if . These edges are the edges on the path. The length of the path is the number of the edges on the path. A path is a cycle in if in addition . The edges and are the edges on the cycle. The length of the cycle is the number of the edges on the cycle. A chord of a path (cycle) is an edge joining two vertices that are not consecutive on the path (cycle). A path (cycle) is chordless if it contains no chords. Let be an undirected graph. An orientation of is a graph obtained from by orienting each edge in , that is, replacing each edge with either or . An oriented graph is an orientation of some graph. A partial orientation of is a graph obtained from by orienting each edge in a subset of . A partially oriented graph is a partial orientation of some graph. Notice that a (partially) oriented graph contains no pair of edges and for some vertices . We will denote a (partial) orientation of a graph only by its edge set when the vertex set is clear from the context. Let be a (partially) oriented graph. A sequence of distinct vertices is a directed path from to in if . A directed path is a directed cycle in if in addition . The edges on the path (cycle) and the length of the path (cycle) are defined analogously to the undirected case. A (partial) orientation of a graph is called acyclic if it contains no directed cycles. A linear extension (or topological sort) of an acyclic (partial) orientation is a linear ordering of the vertices such that if and only if is a predecessor of in the ordering. Let be a set of directed edges in . The reversal of is the set of directed edges obtained from by reversing all the edges in , that is, .
Comparability graphs
An orientation of a graph is a transitive orientation if and then . A graph is a comparability graph if it has a transitive orientation. The complement of a comparability graph is a cocomparability graph. The class of cocomparability graphs contains the class of trapezoid graphs as a proper subclass [DGP88DAM, CK87CN], and hence the complement of any simpletriangle graph has a transitive orientation. Note that every cocomparability graph contains no chordless cycle of length greater than or equal to 5 (see [BLS99, Gallai67] for example), and thus every chordless cycle of a cocomparability graph has length at most 4. An orientation of a graph is quasitransitive if and then and therefore either or . In other words, an orientation of is quasitransitive if for any path of three vertices in , either or . We can see that an orientation is transitive if and only if it is quasitransitive and acyclic. Trivially, a graph having a transitive orientation also has a quasitransitive orientation. The converse is also known to be true [GhouilaHouri62, HH95JGT], that is, if a graph has a quasitransitive orientation that is not acyclic, then has another quasitransitive orientation that is also acyclic. There is a wellknown algorithm for recognizing comparability graphs and producing a transitive orientation of a graph, which takes time (see [Golumbic04] for example). A lineartime algorithm is also known for producing a transitive orientation of a comparability graph [MS99DM]. To be precise, the algorithm produces a linear extension of the transitive orientation. However, even if the given graph is not a comparability graph, the lineartime algorithm may produce an orientation that is not transitive. Hence, to recognize comparability graphs, we must verify transitivity of the orientation. The best known method for verifying transitivity uses Boolean matrix multiplication to test whether , where is the adjacency matrix of the orientation (see [Spinrad03] for example). An alternative method for verifying transitivity, which takes time, is discussed in [Spinrad03, Section 11.1.4]. Let be the complement of a graph . The lineartime algorithm of [MS99DM] also can produce a linear extension of an orientation of such that is transitive if and only if is a cocomparability graph. We show a method for verifying transitivity of in time. Recall that an orientation is transitive if and only if it is quasitransitive and acyclic. Obviously, is acyclic. We can test whether is quasitransitive by checking for any path of three vertices in , either or . The number of paths in of three vertices is at most , and they can be found in time. Thus we have the following. Cocomparability graphs can be recognized in time.
Alternately orientable graphs
An orientation of a graph is alternating
if it is (quasi)transitive on every chordless cycle of length
greater than or equal to 4, that is, the directions of the edges alternate.
A graph is an alternately orientable graph [Hoang87JCTSB]
if it has an alternating orientation.
It is clear from the definition that
alternately orientable graphs generalize comparability graphs.
A polynomialtime recognition algorithm is known
for alternately orientable graphs [Hoang87JCTSB].
We say a graph is an alternately orientable cocomparability graph
if it is a cocomparability graph that has an alternating orientation.
Obviously, alternately orientable cocomparability graphs
can be recognized in polynomial time.
It is also known that
every alternately orientable cocomparability graph is a trapezoid graph
but the converse is not true [Felsner98JGT].
We say an orientation is an acyclic alternating orientation
if it is alternating and acyclic, and
we say a graph is acyclic alternately orientable
if it has an acyclic alternating orientation.
We can see that an alternating orientation is acyclic
if it contains no directed cycles of length 3.
Recall that a graph has a quasitransitive orientation
if and only if
it has an orientation that is quasitransitive and acyclic.
It was conjectured that
a similar statement might hold for alternating orientation,
that is, a graph is alternately orientable if and only if
it has an acyclic alternating orientation [Hoang87JCTSB].
Later, however, a counterexample was provided [Hougardy93DM].
Thus, the class of acyclic alternately orientable graphs
is a proper subclass of alternately orientable graphs.
Moreover, the recognition problem is NPcomplete
for acyclic alternately orientable graphs.
The recognition problem is NPcomplete
for acyclic alternately orientable graphs.
We can verify in polynomial time whether
an orientation is alternating [Hoang87JCTSB].
Since testing acyclicity of an orientation takes linear time,
the recognition problem is in NP.
We show a polynomialtime reduction
from the nonbetweenness problem,
which is known to be NPcomplete [GM06LNCS].
Given a finite set and a collection of
ordered triples of distinct elements of ,
the nonbetweenness problem is to decide
whether there is a bijection
such that for each ,
either or .
Let be a graph such that
V(G) &= { v_i : a_i ∈A } ∪{ u_i, w_i : t_i ∈C } and
E(G) &= { v_iv_j : 1 ≤i ¡ j ≤—A— } ∪{ u_hw_h, u_hv_j, w_hv_i, w_hv_k : t_h = (a_i, a_j, a_k) ∈C }.
Clearly, we can construct the graph in time polynomial in and .
We can also see from the construction that
the set of chordless cycles
contains all the chordless cycles of length grater than or equal to 4. Thus
an orientation of is alternating if and only if
for any three vertices with
, either
or .
Therefore, has an acyclic alternating orientation if and only if there is
a bijection
such that for each ,
either or .
Thus we have the theorem
The vertex ordering characterization of simpletriangle graphs
Now, we show the vertex ordering characterization of simpletriangle graphs. [[Takaoka18DM]] A graph is a simpletriangle graph if and only if there is an (acyclic) alternating orientation of and a transitive orientation of the complement of such that is acyclic. Moreover, if is a simpletriangle graph, then for any transitive orientation of , there is an (acyclic) alternating orientation of such that is acyclic. An acyclic orientation of a complete graph is equivalent to the linear ordering of the vertices of the graph. The orientation is called an apex ordering of a simpletriangle graph since it coincides with the ordering of the apices of the triangles in the representation. Theorem The vertex ordering characterization of simpletriangle graphs implies that a simpletriangle graph is an (acyclic) alternately orientable cocomparability graph, but the converse is not known to be true [Takaoka18DM]. We also note that Theorem The vertex ordering characterization of simpletriangle graphs is similar to a wellknown fact that a graph is a permutation graph if and only if it is both a comparability graph and a cocomparability graph [PLE71CJM].
The recognition algorithm
Let be an alternating orientation of a graph , and let be a transitive orientation of the complement of . Suppose that is not acyclic. It is well known that an orientation of a complete graph is not acyclic if and only if it contains a directed cycle of length 3. Each directed cycle of length 3 in consists of either three edges in or two edges in with one edge in since is a transitive orientation. We will refer to a directed cycle of length 3 in as a obstruction if and . It is clear from Theorem The vertex ordering characterization of simpletriangle graphs that if a graph is a simpletriangle graph, then there is a pair of an acyclic alternating orientation of and a transitive orientation of such that contains no obstructions. Conversely, a graph is a simpletriangle graph if for some transitive orientation of , there is an acyclic alternating orientation of such that contains no obstructions. We can also have the following. Let be a transitive orientation of . If has a (not necessarily acyclic) alternating orientation such that contains no obstructions, then also has an acyclic alternating orientation of such that contains no obstructions, that is, is a simpletriangle graph. Our recognition algorithm is due to this structural characterization, and we will prove the theorem when we show the correctness of the algorithm. Figure Document shows our algorithm to recognize simpletriangle graphs. The algorithm finds an apex ordering of the given graph if it is a simpletriangle graph or report that the graph is not a simpletriangle graph.
We remark that in Step 2 of the algorithm, we keep an edge undirected if it is not on a chordless cycle of length 4, since it is needed to do Step 3 and Step 4 correctly. If we do not need to find an apex ordering of the given graph, in Step 2 we only have to compute an alternating orientation of such that contains no obstructions. We will prove the correctness of the algorithm in the next section. Notice that in order to prove the correctness, it suffices to show that when Step 3 is finished, is acyclic.
Details of the algorithm
In the rest of this section, we show that the algorithm runs in time. We assume without loss of generality that the given graph is connected and , since otherwise we apply the algorithm to each connected component. In Step 1, we use the lineartime algorithm of [MS99DM], which produces a linear extension of a transitive orientation of the complement if the given graph is a cocomparability graph. As shown in Theorem Comparability graphs, we can verify transitivity of in time, and hence Step 1 can be performed in the same time bound. In Step 2, we construct the auxiliary graph of that is bipartite if and only if is alternately orientable. Then, we make a 2CNF formula , an instance of the 2satisfiability problem, from . The partial orientation of can be obtained from a truth assignment of . When is not bipartite or cannot be satisfied, the algorithm reports that is not a simpletriangle graph. The vertices of the auxiliary graph
are all the ordered pairs
with . Each vertex of is adjacent to the vertex . Each vertex of is also adjacent to every vertex such that in , the vertices form a path of three vertices on a chordless cycle of length 4. We can see that is alternately orientable if and only if is bipartite, and an alternating orientation of can be obtained from one color class of . The number of vertices of is , and the number of edges of is at most since the number of paths of three vertices in is at most . Hence we can test the bipartiteness of in time. Now, we show that the auxiliary graph can be constructed from in time. The neighborhood of a vertex of is the set . We define that the upper set of is the set and the lower set of is the set . Let be an edge of . If and , then for any two vertices and , we have , that is, is a chordless cycle of length 4; otherwise either or , but if then implies , contradicting , and if then implies , contradicting . Similarly, for any two vertices and , we have that is a chordless cycle of length 4. Conversely, each chordless cycle of length 4 has two edges and such that , , , and . Therefore, we can construct the auxiliary graph by the following method. (1) For each edge , test whether and [resp. and ]. (2) If it is, then for any two vertices and [resp. and ], add to the edge joining and , the edge joining and , the edge joining and , and the edge joining and . (3) Finally, for each edge , add to the edge joining and . The first procedure takes time for each edge, and the second procedure takes time in total since the number of paths of three vertices in is at most . The third procedure takes time in total, and hence the auxiliary graph can be constructed in time. We next construct the 2CNF formula from . Recall that each vertex of is adjacent to . A connected component of consists of only two vertices and if and only if the edge of is not on a chordless cycle of length 4. We remove such components from , and let be the remaining components. To each component , we assign the Boolean variable . Since we assume that is bipartite, the vertices of each component can be partitioned into two color classes. We assign the literal to the vertices of one color class of , and we assign the literal (the negation of ) to the vertices of the other color class of . Notice that a vertex of has its literal if and only if the edge of is on a cycle of length 4. Let be the literal assigned to a vertex of . The 2CNF formula consists of all the clauses such that the vertices in form a path of three vertices with . When no literal is assigned to or , the 2CNF formula does not contain the clause. Let be a truth assignment of the variables in . Notice that in if and only if since each vertex of is adjacent to . We obtain the partial orientation of from by orienting each edge as if in . It is obvious from the construction of that a truth assignment satisfies if and only if contains no obstructions. We can also see that the edges on every chordless cycle of length 4 is alternately oriented and the other edges remain undirected. The 2CNF formula has at most Boolean variables and at most clauses. We can also see that can be constructed in time, since all the paths of three vertices can be found in time. Since a satisfying truth assignment of a 2CNF formula can be computed in time linear to the size of (see [APT79IPL] for example), Step 2 can be performed in time. It is easy to see that Step 3 and Step 4 can be performed in time and time, respectively. Now, we have the following. Simpletriangle graphs can be recognized in time, and an apex ordering of a simpletriangle graph can be computed in the same time bound. From Step 1 and Step 2 of the algorithm, we also have the following as a byproduct. Alternately orientable cocomparability graphs can be recognized in time, and alternating orientation of a cocomparability graph can be computed in the same time bound.Correctness of the algorithm
In this section, we prove correctness of our algorithm. In order to prove the correctness, it suffices to show that when Step 3 is finished, is acyclic, where is the resultant orientation of Step 3. Recall that the graph is an alternately orientable graph and the complement of is a comparability graph with a transitive orientation . Since is a cocomparability graph, the length of every chordless cycle in is at most 4. Recall also that has a partial orientation that satisfies the following three conditions: (1) contains no obstructions, (2) the edges on every chordless cycle of length 4 are oriented so that the directions of the edges alternate, and (3) the other edges remain undirected. For a vertex of , let be the set of all the edges such that is a directed cycle in , and let be the partial orientation of obtained from by reversing the orientation of all the edges in , that is, . The outline of the proof is as follows. An alternating cycle in with is a directed cycle of length with and for any (indices are modulo ). See Figure Document for example. We first show that

is acyclic if and only if contains no alternating 6cycles.
We next show the following:

contains no alternating 6cycles having the vertex ,

the reversing the direction of the edges in generates no alternating 6cycles,

the directions of the edges still alternate in on every chordless cycle of length 4, and

is still contains no obstructions.
Thus continuing in this way for each vertex, we obtain the acyclic orientation such that contains no obstructions, that is, is acyclic.
Definitions and facts
We begin to state some definitions and facts. Let be four vertices of . If and , then , that is, is a chordless cycle of length 4. Recall that is a transitive orientation. If , then implies , contradicting . If , then implies , contradicting . Thus . Similarly, if , then implies , contradicting . If , then implies , contradicting . Thus . Suppose that contains an alternating 4cycle with and . We have from Claim Document that is a chordless cycle of length 4. The directions of the edges on this cycle must alternate in , but , a contradiction. Thus contains no alternating 4cycles. An alternating 4anticycle of is a subgraph consisting of four vertices with and . We have from Claim Document that is a chordless cycle of length 4. The directions of the edges on this cycle must alternate in , but , a contradiction. Thus contains no alternating 4anticycles. The following claim states the direction of chords of an alternating 6cycle. If contains an alternating 6cycle with and for any (indices are modulo 3), then . See Figure Document. If , then is an alternating 4cycle, a contradiction. If , then implies , contradicting . Thus . We have from Claim Document that is a chordless cycle of length 4. Since the directions of the edges on this cycle alternate in , we have . By similar arguments, we also have and . Recall that for any directed edge , there are another two vertices of such that is a chordless cycle of length 4, since an edge of remains undirected if it is not on a chordless cycle of length 4. If there are four vertices with and , then there are another two vertices with and . In addition,

and

there is an alternating 6cycle consisting of the vertices .
Since is oriented in , there are another two vertices with and . If , then implies , contradicting . If , then is a obstruction, a contradiction. Thus . Similarly, if , then implies , contradicting . If , then is a obstruction, a contradiction. Thus . If , then is a obstruction, a contradiction. Suppose . If , then is a chordless cycle of length 4 with , contradicting the definition of . Thus . If , then implies , contradicting . If , then implies , but then is a obstruction, a contradiction. Thus . If , then is a chordless cycle of length 4. Since , we have , but then is a obstruction, a contradiction. Thus . If , then is a obstruction, a contradiction. If , then implies , contradicting . Thus . If , then is a chordless cycle of length 4. Since , we have , but then is a obstruction, a contradiction. Thus . Since is a chordless cycle of length 4 and , we have . Since is a chordless cycle of length 4 and , we also have . We can verify that for any directions are assigned to the edges , there is an alternating 6cycle consisting of the vertices . If there is a directed cycle in , then there is an alternating 6cycle of containing the vertices . Since is oriented in , there are another two vertices with and . We have from and . We also have from . If , then we have the claim from Claim Document since is a directed cycle of length 4 in . If , then we also have the claim from Claim Document since is a directed cycle of length 4 in . Therefore, we assume . Since is oriented in , there are another two vertices with and . We have from . We also have from and . If , then we have the claim from Claim Document since is a directed cycle of length 4 in . If , then we also have the claim from Claim Document since is a directed cycle of length 4 in . Therefore, we assume . We have from and . We also have from . Similarly, we have from . We also have from and . Therefore, the seven vertices are distinct. If , then four vertices form an alternating 4anticycle, a contradiction. If , then is a obstruction, a contradiction. Thus . Now, we have from Claim Document that is a chordless cycle of length 4. Since , we have . If , then implies , contradicting . If , then four vertices form an alternating 4anticycle, a contradiction. Thus . Now, we have from Claim Document that is a chordless cycle of length 4. Since , we have . Now, we can see that is an alternating 6cycle in . If there is a directed cycle in , then there is another vertex with and either or . We have the claim from Claims Document and Document.
Main part of the proof
Now, we show the following series of claims, which proves the correctness of the algorithm. It is immediate from Claim Document that if contains an alternating 6cycle, then contains a directed cycle of length 3. The following claim states that the converse is also true. (Recall that contains undirected edges. Thus may contain directed cycles of length greater than 3, and Claim Document does not imply the converse. ) If is not acyclic, then contains an alternating 6cycle. Before proving the claim, we introduce the middle edge of a chordless cycle of length 4. Let be a cycle of length 4 in with and . We call the edge the middle edge of in . We also say an edge is a middle edge in if there is a chordless cycle of length 4 such that the edge is the middle edge of the cycle. Notice that for any edge on , there is the directed path from to in consisting of the edges in and the middle edge. For example, there is the directed path for the edge . Recall that each directed edge in is on a cycle of length 4. Thus if contains a directed cycle, then contains a directed cycle with consisting of the edges in and the middle edges in . We now show that if and are middle edges in for some (indices are modulo ), then either or . In addition, we show that if , then
Comments
There are no comments yet.