Regular ArticleParallel Algorithm for Cograph Recognition with Applications
Abstract
We present a parallel algorithm for recognizing cographs and constructing their cotrees. The algorithm takes O(log2n) time with O(n + m) processors on a CRCW PRAM, where n and m are the number of vertices and edges of the graph. Using cotree representation, we obtain parallel algorithms for solving the maximum matching and the permutation representation problems for cographs using O(log n) time with O(n) processors. We also obtain a parallel algorithm for the depth-first spanning tree problem for permutation graphs (a class properly contains cographs) which takes O(log2n) time with O(n) processors.
References (0)
Cited by (14)
On parallel recognition of cographs
2011, Theoretical Computer ScienceIn this paper, we modify a known parallel cograph-recognition algorithm proposed by Nikolopoulos and Palios [S.D. Nikolopoulos, L. Palios, Efficient parallel recognition of cographs, Discrete Applied Mathematics 150 (1–3) (2005) 182–215] and provide a new analysis of the algorithm. Given an input graph with vertices and edges, we obtain the following three results based on our analysis:
- 1.
When is -regular for a fixed positive integer , the cograph-recognition problem can be optimally solved in time using processors on an EREW PRAM.
- 2.
When is -regular for , the cograph-recognition problem can be solved in time using processors on an EREW PRAM.
- 3.
Given a positive integer , the cograph-recognition problem can be solved in time using processors on an EREW PRAM, provided the number of vertices in with degree larger than is at most .
- 1.
A faster parallel connectivity algorithm on cographs
2007, Applied Mathematics LettersCographs are a well-known class of graphs arising in a wide spectrum of practical applications. In this note, we show that the connected components of a cograph can be optimally found in time using processors on a common CRCW PRAM, or in time using processors on an EREW PRAM, where is the maximum degree of , and and respectively are the numbers of vertices and edges of . These are faster than the previously best known result on general graphs.
Efficient parallel recognition of cographs
2005, Discrete Applied MathematicsIn this paper, we establish structural properties for the class of complement reducible graphs or cographs, which enable us to describe efficient parallel algorithms for recognizing cographs and for constructing the cotree of a graph if it is a cograph; if the input graph is not a cograph, both algorithms return an induced . For a graph on vertices and edges, both our cograph recognition and cotree construction algorithms run in time and require processors on the EREW PRAM model of computation. Our algorithms are motivated by the work of Dahlhaus (Discrete Appl. Math. 57 (1995) 29–44) and take advantage of the optimal -time computation of the co-connected components of a general graph (Theory Comput. Systems 37 (2004) 527–546) and of an optimal -time parallel algorithm for computing the connected components of a cograph, which we present. Our results improve upon the previously known linear-processor parallel algorithms for the problems (Discrete Appl. Math. 57 (1995) 29–44; J. Algorithms 15 (1993) 284–313): we achieve a better time-processor product using a weaker model of computation and we provide a certificate (an induced ) whenever our algorithms decide that the input graphs are not cographs.
Parallel algorithms for Hamiltonian problems on quasi-threshold graphs
2004, Journal of Parallel and Distributed ComputingIn this paper we show structural and algorithmic properties on the class of quasi-threshold graphs, or QT-graphs for short, and prove necessary and sufficient conditions for a QT-graph to be Hamiltonian. Based on these properties and conditions, we construct an efficient parallel algorithm for finding a Hamiltonian cycle in a QT-graph; for an input graph on n vertices and m edges, our algorithm takes time and requires O(n+m) processors on the CREW PRAM model. In addition, we show that the problem of recognizing whether a QT-graph is a Hamiltonian graph and the problem of computing the Hamiltonian completion number of a nonHamiltonian QT-graph can also be solved in time with O(n+m) processors. Our algorithms rely on -time parallel algorithms, which we develop here, for constructing tree representations of a QT-graph; we show that a QT-graph G has a unique tree representation, that is, a tree structure which meets the structural properties of G. We also present parallel algorithms for other optimization problems on QT-graphs which run in time using a linear number of processors.
A time-optimal solution for the path cover problem on cographs
2003, Theoretical Computer ScienceWe show that the notoriously difficult problem of finding and reporting the smallest number of vertex-disjoint paths that cover the vertices of a graph can be solved time- and work-optimally for cographs. Our result implies that for this class of graphs the task of finding a Hamiltonian path can be solved time- and work-optimally in parallel.
It was open for more than 10 years to find a time- and work-optimal parallel solution for this important problem. Our contribution is to offer an optimal solution to this important problem. We begin by showing that any algorithm that solves an instance of size n of the problem must take time on the CREW, even if an infinite number of processors are available. We then go on to show that this time lower bound is tight by devising an EREW algorithm that, given an n-vertex cograph G represented by its cotree, finds and reports all the paths in a minimum path cover in time using processors.
Parallel Algorithms for Hierarchical Clustering and Applications to Split Decomposition and Parity Graph Recognition
2000, Journal of AlgorithmsWe present efficient (parallel) algorithms for two hierarchical clustering heuristics. We point out that these heuristics can also be applied to solving some algorithmic problems in graphs, including split decomposition. We show that efficient parallel split decomposition induces an efficient parallel parity graph recognition algorithm. This is a consequence of the result of S. Cicerone and D. Di Stefano [7] that parity graphs are exactly those graphs that can be split decomposed into cliques and bipartite graphs.