Concatenation trees: A framework for efficient universal cycle and de Bruijn sequence constructions (2308.12405v3)
Abstract: Classic cycle-joining techniques have found widespread application in creating universal cycles for a diverse range of combinatorial objects, such as shorthand permutations, weak orders, orientable sequences, and various subsets of $k$-ary strings, including de Bruijn sequences. In the most favorable scenarios, these algorithms operate with a space complexity of $O(n)$ and require $O(n)$ time to generate each symbol in the sequences. In contrast, concatenation-based methods have been developed for a limited selection of universal cycles. In each of these instances, the universal cycles can be generated far more efficiently, with an amortized time complexity of $O(1)$ per symbol, while still using $O(n)$ space. This paper introduces $\mathit{concatenation~trees}$, which serve as the fundamental structures needed to bridge the gap between cycle-joining constructions based on the pure cycle register and corresponding concatenation-based approaches. They immediately demystify the relationship between the classic Lyndon word concatenation construction of de Bruijn sequences and a corresponding cycle-joining based construction. To underscore their significance, concatenation trees are applied to construct universal cycles for shorthand permutations and weak orders in $O(1)$-amortized time per symbol. Moreover, we provide insights as to how similar results can be obtained for other universal cycles including cut-down de Bruijn sequences and orientable sequences.
- De Bruijn sequence and universal cycle constructions (2023). http://debruijnsequence.org.
- Alhakim, A. A simple combinatorial algorithm for de Bruijn sequences. The American Mathematical Monthly 117, 8 (2010), 728–732.
- Multiplex de bruijn graphs enable genome assembly from long, high-fidelity reads. Nature Biotechnology 40, 7 (Jul 2022), 1075–1081.
- Booth, K. S. Lexicographically least circular substrings. Inform. Process. Lett. 10, 4/5 (1980), 240–242.
- On universal cycles of labeled graphs. Electronic Journal of Combinatorics 17 (200), R4.
- Cut-down de Bruijn sequences, https://arxiv.org/abs/2205.02815, 2022.
- Universal cycles for combinatorial structures. Discrete Mathematics 110, 1-3 (1992), 43–59.
- How to apply de bruijn graphs to genome assembly. Nature biotechnology 29, 11 (2011), 987–991.
- Near-universal cycles for subsets exist. SIAM Journal on Discrete Mathematics 23, 3 (2009), 1441–1449.
- Orientable sequences. In Cryptography and Coding III (M.J.Ganley, ed.) (1993), Oxford University Press, pp. 97–115.
- Constructing de Bruijn sequences with co-lexicographic order: The k𝑘kitalic_k-ary Grandmama sequence. European Journal of Combinatorics 72 (2018), 1–11.
- Shifting counters. AIEE Trans. 77 (1958), 70–74.
- Etzion, T. An algorithm for generating shift-register cycles. Theoret. Comput. Sci. 44, 2 (1986), 209–224.
- Etzion, T. Self-dual sequences. Journal of Combinatorial Theory, Series A 44, 2 (1987), 288 – 298.
- Construction of de Bruijn sequences of minimal complexity. IEEE Transactions on Information Theory 30, 5 (September 1984), 705–709.
- Fredricksen, H. Generation of the Ford sequence of length 2nsuperscript2𝑛2^{n}2 start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT, n𝑛nitalic_n large. J. Combin. Theory Ser. A 12, 1 (1972), 153–154.
- Lexicographic compositions and de Bruijn sequences. J. Combin. Theory Ser. A 22, 1 (1977), 17 – 30.
- Necklaces of beads in k𝑘kitalic_k colors and k𝑘kitalic_k-ary de Bruijn sequences. Discrete Math. 23 (1978), 207–210.
- A de Bruijn sequence construction by concatenating cycles of the complemented cycling register. In Combinatorics on Words - 11th International Conference, WORDS 2017, Montréal, QC, Canada, September 11-15, 2017, Proceedings (2017), pp. 49–58.
- Constructing de Bruijn sequences by concatenating smaller universal cycles. Theoretical Computer Science 743 (2018), 12–22.
- A framework for constructing de Bruijn sequences via simple successor rules. Discrete Mathematics 241, 11 (2018), 2977–2987.
- A successor rule framework for constructing k𝑘kitalic_k -ary de Bruijn sequences and universal cycles. IEEE Transactions on Information Theory 66, 1 (2020), 679–687.
- Hierholzer, C. Ueber die Möglichkeit, einen Linienzug ohne Wiederholung und ohne Unterbrechung zu umfahren. Mathematische Annalen 6 (1873), 30–32.
- Universal and near-universal cycles of set partitions. Electronic Journal of Combinatorics 22, 4 (2015), P4.48.
- Shorthand universal cycles for permutations. Algorithmica 64, 2 (2012), 215–245.
- Huang, Y. A new algorithm for the generation of binary de Bruijn sequences. J. Algorithms 11, 1 (1990), 44–51.
- Hurlbert, G. On universal cycles for k𝑘kitalic_k-subsets of an n𝑛nitalic_n-set. SIAM Journal on Discrete Mathematics 7, 4 (1994), 598–604.
- Jackson, B. W. Universal cycles of k𝑘kitalic_k-subsets and k𝑘kitalic_k-permutations. Discrete mathematics 117, 1 (1993), 141–150.
- An efficient algorithm for the generation of DeBruijn cycles. IEEE Transactions on Information Theory 37, 5 (Sep 1991), 1475–1478.
- Johnson, J. R. Universal cycles for permutations. Discrete Mathematics 309, 17 (2009), 5264–5270.
- Kak, S. Yamatarajabhanasalagam: an interesting combinatoric sutra. Indian Journal of History of Science 35, 2 (2000), 123–128.
- Knuth, D. E. The Art of Computer Programming, Volume 4A, Combinatorial Algorithms. Addison-Wesley Professional, 2011.
- Scalable genome assembly through parallel de Bruijn graph construction for multiple k𝑘kitalic_k-mers. Scientific Reports 9, 1 (Oct 2019), 14882.
- Martin, M. H. A problem in arrangements. Bull. Amer. Math. Soc. 40, 12 (1934), 859–864.
- Constructing orientable sequences. IEEE Trans. Inf. Theory 68, 7 (2022), 4782–4789.
- Arbitrary-length analogs to de Bruijn sequences. In 33rd Annual Symposium on Combinatorial Pattern Matching (CPM 2022) (Dagstuhl, Germany, 2022), H. Bannai and J. Holub, Eds., vol. 223 of Leibniz International Proceedings in Informatics (LIPIcs), Schloss Dagstuhl – Leibniz-Zentrum für Informatik, pp. 9:1–9:20.
- An efficient algorithm for generating necklaces with fixed density. SIAM Journal on Computing 29, 2 (1999), 671–684.
- De Bruijn sequences for fixed-weight binary strings. SIAM J. Discrete Math. 26, 2 (2012), 605–617.
- An explicit universal cycle for the (n𝑛nitalic_n-1)-permutations of an n𝑛nitalic_n-set. ACM Trans. Algorithms 6, 3 (July 2010), 1–12.
- Efficient constructions of the Prefer-same and Prefer-opposite de Bruijn sequences. CoRR abs/2010.07960 (2020).
- Constructing the first (and coolest) fixed-content universal cycle. Algorithmica 85, 6 (Jun 2023), 1754–1785.
- Universal cycles for weight-range binary strings. In Combinatorial Algorithms - 24th International Workshop, IWOCA 2013, Rouen, France, July 10-12, 2013, LNCS 8288 (2013), pp. 388–401.
- The lexicographically smallest universal cycle for binary strings with minimum specified weight. Journal of Discrete Algorithms 28 (2014), 31–40.
- A surprisingly simple de Bruijn sequence construction. Discrete Math. 339 (2016), 127–131.
- Efficient universal cycle constructions for weak orders. Discrete Mathematics 343, 10 (2020), 112022.
- Robust data storage in DNA by de Bruijn graph-based de novo strand assembly. Nature Communications 13, 1 (Sep 2022), 5361.
- Stein, S. K. The mathematician as an explorer. Scientific American 204, 5 (1961), 148–161.
- Stein, S. K. Mathematics: the man-made universe. Courier Corporation, 2013.
- Van Nooten, B. Binary numbers in indian antiquity. Journal of Indian philosophy (1993), 31–50.
- Wong, D. A new universal cycle for permutations. Graph. Comb. 33, 6 (Nov. 2017), 1393–1399.
- Velvet: algorithms for de novo short read assembly using de Bruijn graphs. Genome Res. 18, 5 (May 2008), 821–829.