Abstract
Topological orders of a directed graph are an important concept of graph algorithms. The generation of topological orders is useful for designing graph algorithms and solving scheduling problems. In this paper, we generate and index all topological orders of a given graph. Since topological orders are permutations of vertices, we can use the data structure \(\pi \)DD, which generates and indexes a set of permutations. In this paper, we propose Rot-\(\pi \) DDs, which are a variation of \(\pi \)DDs based on a different interpretation. Compression ratios of Rot-\(\pi \)DDs for representing topological orders are theoretically improved from the original \(\pi \)DDs. We propose an efficient method for constructing a Rot-\(\pi \)DD based on dynamic programming approach. Computational experiments show the amazing efficiencies of a Rot-\(\pi \)DD: a Rot-\(\pi \)DD for \(3.7 \times 10^{41}\) topological orders has only \(2.2 \times 10^7\) nodes and is constructed in 36 seconds. In addition, the indexed structure of a Rot-\(\pi \)DD allows us to fast post-process operations such as edge addition and random samplings.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Atkinson, M.D.: On computing the number of linear extensions of a tree. Order 7(1), 23–25 (1990)
Bender, M.A., Fineman, J.T., Gilbert, S.: A new approach to incremental topological ordering. In: 20th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 1108–1115. Society for Industrial and Applied Mathematics (2009)
Brightwell, G., Winkler, P.: Counting linear extensions. Order 8(3), 225–242 (1991)
Bubley, R., Dyer, M.: Faster random generation of linear extensions. Discrete Mathematics 201(1), 81–88 (1999)
Cooper, J.N.: When is linear extensions counting easy? AMS Southeastern Sectional Meeting (2013)
Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms. The MIT Press, Cambridge (2001)
Dilworth, R.P.: A decomposition theorem for partially ordered sets. Annals of Mathematics 51(1), 161–166 (1950)
Inoue, Y.: Master’s thesis: Generating PiDDs for indexing permutation classes with given permutation patterns. Tech. Rep. TCS-TR-B-14-9, Division of Computer Science, Hokkaido University (2014)
Kahn, A.B.: Topological sorting of large networks. Communications of the ACM 5(11), 558–562 (1962)
Li, W.N., Xiao, Z., Beavers, G.: On computing the number of topological orderings of a directed acyclic graph. Congressus Numerantium 174, 143–159 (2005)
Minato, S.: \(\pi \)DD: A new decision diagram for efficient problem solving in permutation space. In: Sakallah, K.A., Simon, L. (eds.) SAT 2011. LNCS, vol. 6695, pp. 90–104. Springer, Heidelberg (2011)
Ono, A., Nakano, S.: Constant time generation of linear extensions. In: Liśkiewicz, M., Reischuk, R. (eds.) FCT 2005. LNCS, vol. 3623, pp. 445–453. Springer, Heidelberg (2005)
Pearce, D.J., Kelly, P.H.: A dynamic topological sort algorithm for directed acyclic graphs. ACM Journal of Experimental Algorithmics 11(1.7), 1–24 (2006)
Pruesse, G., Ruskey, F.: Generating linear extensions fast. SIAM Journal on Computing 23(2), 373–386 (1994)
Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM Journal on Computing 1(2), 146–160 (1972)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Inoue, Y., Minato, Si. (2014). An Efficient Method for Indexing All Topological Orders of a Directed Graph. In: Ahn, HK., Shin, CS. (eds) Algorithms and Computation. ISAAC 2014. Lecture Notes in Computer Science(), vol 8889. Springer, Cham. https://doi.org/10.1007/978-3-319-13075-0_9
Download citation
DOI: https://doi.org/10.1007/978-3-319-13075-0_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-13074-3
Online ISBN: 978-3-319-13075-0
eBook Packages: Computer ScienceComputer Science (R0)