Clustering a DAG for CAD Databases
IEEE Transactions on Software Engineering
A compression technique to materialize transitive closure
ACM Transactions on Database Systems (TODS)
Computing a maximum cardinality matching in a bipartite graph in time On1.5m/logn
Information Processing Letters
Efficient assembly for complex objects
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
Bipartite graphs and their applications
Bipartite graphs and their applications
On supporting containment queries in relational database management systems
SIGMOD '01 Proceedings of the 2001 ACM SIGMOD international conference on Management of data
Efficient subtyping tests with PQ-encoding
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Path Signatures: A Way to Speed Up Recursion in Relational Databases
IEEE Transactions on Knowledge and Data Engineering
IEEE Transactions on Knowledge and Data Engineering
On the Sequencing of Tree Structures for XML Indexing
ICDE '05 Proceedings of the 21st International Conference on Data Engineering
On the transitive closure representation and adjustable compression
Proceedings of the 2006 ACM symposium on Applied computing
On the Evaluation of Large and Sparse Graph Reachability Queries
DEXA '08 Proceedings of the 19th international conference on Database and Expert Systems Applications
Sorting and selection in posets
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Hi-index | 0.00 |
In this paper, we propose an efficient algorithm to decompose a directed acyclic graph (DAG) into chains, which has a lot of applications in computer science and engineering. Especially, it can be used to store transitive closures of directed graphs in an economical way. For a DAG G with n nodes, our algorithm needs O(n2 + bn √b) time to find a minimized set of disjoint chains, where b is G's width, defined to be the largest node subset U of G such that for every pair of nodes u, v ∈ U, there does not exist a path from u to v or from v to u. Accordingly, the transitive closure of G can be stored in O(bn) space, and the reachability can be checked in O(logb) time. The method can also be extended to handle cyclic directed graphs.