{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,24]],"date-time":"2026-06-24T01:46:56Z","timestamp":1782265616890,"version":"3.54.5"},"reference-count":49,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2026,5,28]],"date-time":"2026-05-28T00:00:00Z","timestamp":1779926400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2026,5,28]],"date-time":"2026-05-28T00:00:00Z","timestamp":1779926400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"name":"Teknologi og Produktion, Det Frie Forskningsr\u00e5d, Denmark","award":["DFF-8021-002498"],"award-info":[{"award-number":["DFF-8021-002498"]}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Algorithmica"],"published-print":{"date-parts":[[2026,6]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>\n                    Given a set of pattern strings\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\mathcal {P}=\\{P_1, P_2,\\ldots P_k\\}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mrow>\n                            <mml:mi>P<\/mml:mi>\n                            <mml:mo>=<\/mml:mo>\n                            <mml:mo>{<\/mml:mo>\n                            <mml:msub>\n                              <mml:mi>P<\/mml:mi>\n                              <mml:mn>1<\/mml:mn>\n                            <\/mml:msub>\n                            <mml:mo>,<\/mml:mo>\n                            <mml:msub>\n                              <mml:mi>P<\/mml:mi>\n                              <mml:mn>2<\/mml:mn>\n                            <\/mml:msub>\n                            <mml:mo>,<\/mml:mo>\n                            <mml:mo>\u2026<\/mml:mo>\n                            <mml:msub>\n                              <mml:mi>P<\/mml:mi>\n                              <mml:mi>k<\/mml:mi>\n                            <\/mml:msub>\n                            <mml:mo>}<\/mml:mo>\n                          <\/mml:mrow>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    and a text string\n                    <jats:italic>S<\/jats:italic>\n                    , the classic dictionary matching problem is to report all occurrences of each pattern in\n                    <jats:italic>S<\/jats:italic>\n                    . We study the dictionary problem in the compressed setting, where the pattern strings and the text string are compressed using run-length encoding, and the goal is to solve the problem without decompression and achieve efficient time and space in the size of the compressed strings. Let\n                    <jats:italic>m<\/jats:italic>\n                    and\n                    <jats:italic>n<\/jats:italic>\n                    be the total length of the patterns\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\mathcal {P}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mi>P<\/mml:mi>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    and the length of the text string\n                    <jats:italic>S<\/jats:italic>\n                    , respectively, and let\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\overline{m}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mover>\n                            <mml:mi>m<\/mml:mi>\n                            <mml:mo>\u00af<\/mml:mo>\n                          <\/mml:mover>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    and\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\overline{n}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mover>\n                            <mml:mi>n<\/mml:mi>\n                            <mml:mo>\u00af<\/mml:mo>\n                          <\/mml:mover>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    be the total number of runs in the run-length encoding of the patterns in\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\mathcal {P}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mi>P<\/mml:mi>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    and\n                    <jats:italic>S<\/jats:italic>\n                    , respectively. Our main result is an algorithm that achieves\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$O( (\\overline{m} + \\overline{n})\\log \\log m + \\textrm{occ})$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mrow>\n                            <mml:mi>O<\/mml:mi>\n                            <mml:mo>(<\/mml:mo>\n                            <mml:mrow>\n                              <mml:mo>(<\/mml:mo>\n                              <mml:mover>\n                                <mml:mi>m<\/mml:mi>\n                                <mml:mo>\u00af<\/mml:mo>\n                              <\/mml:mover>\n                              <mml:mo>+<\/mml:mo>\n                              <mml:mover>\n                                <mml:mi>n<\/mml:mi>\n                                <mml:mo>\u00af<\/mml:mo>\n                              <\/mml:mover>\n                              <mml:mo>)<\/mml:mo>\n                            <\/mml:mrow>\n                            <mml:mo>log<\/mml:mo>\n                            <mml:mo>log<\/mml:mo>\n                            <mml:mi>m<\/mml:mi>\n                            <mml:mo>+<\/mml:mo>\n                            <mml:mtext>occ<\/mml:mtext>\n                            <mml:mo>)<\/mml:mo>\n                          <\/mml:mrow>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    expected time, and\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$O(\\overline{m})$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mrow>\n                            <mml:mi>O<\/mml:mi>\n                            <mml:mo>(<\/mml:mo>\n                            <mml:mover>\n                              <mml:mi>m<\/mml:mi>\n                              <mml:mo>\u00af<\/mml:mo>\n                            <\/mml:mover>\n                            <mml:mo>)<\/mml:mo>\n                          <\/mml:mrow>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    space, where\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\textrm{occ}$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mtext>occ<\/mml:mtext>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    is the total number of occurrences of patterns in\n                    <jats:italic>S<\/jats:italic>\n                    . This is the first non-trivial solution to the problem. Since any solution must read the input, our time bound is optimal within a\n                    <jats:inline-formula>\n                      <jats:alternatives>\n                        <jats:tex-math>$$\\log \\log m$$<\/jats:tex-math>\n                        <mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                          <mml:mrow>\n                            <mml:mo>log<\/mml:mo>\n                            <mml:mo>log<\/mml:mo>\n                            <mml:mi>m<\/mml:mi>\n                          <\/mml:mrow>\n                        <\/mml:math>\n                      <\/jats:alternatives>\n                    <\/jats:inline-formula>\n                    factor. We introduce several new techniques to achieve our bounds, including a new compressed representation of the classic Aho-Corasick automaton and a new efficient string index that supports fast queries in run-length encoded strings.\n                  <\/jats:p>","DOI":"10.1007\/s00453-026-01398-0","type":"journal-article","created":{"date-parts":[[2026,5,28]],"date-time":"2026-05-28T04:01:37Z","timestamp":1779940897000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Compressed Dictionary Matching on Run-Length Encoded Strings"],"prefix":"10.1007","volume":"88","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-1120-5154","authenticated-orcid":false,"given":"Philip","family":"Bille","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8322-4952","authenticated-orcid":false,"given":"Inge Li","family":"G\u00f8rtz","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7668-7636","authenticated-orcid":false,"given":"Simon J.","family":"Puglisi","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0009-0002-4293-6475","authenticated-orcid":false,"given":"Simon Rumle","family":"Tarnow","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2026,5,28]]},"reference":[{"issue":"6","key":"1398_CR1","doi-asserted-by":"publisher","first-page":"333","DOI":"10.1145\/360825.360855","volume":"18","author":"AV Aho","year":"1975","unstructured":"Aho, A.V., Corasick, M.J.: Efficient string matching: An aid to bibliographic search. Commun. ACM 18(6), 333\u2013340 (1975)","journal-title":"Commun. ACM"},{"key":"1398_CR2","doi-asserted-by":"crossref","unstructured":"Commentz-Walter, B.: A string matching algorithm fast on the average. In: Maurer, H.A. (ed.) Proc. 6th ICALP, vol. 71, pp. 118\u2013132. (1979)","DOI":"10.1007\/3-540-09510-1_10"},{"key":"1398_CR3","doi-asserted-by":"crossref","unstructured":"Amir, A., Farach, M.: Adaptive dictionary matching. In: Proc. 32nd FOCS, pp. 760\u2013766. (1991)","DOI":"10.1109\/SFCS.1991.185445"},{"issue":"2","key":"1398_CR4","doi-asserted-by":"publisher","first-page":"208","DOI":"10.1016\/S0022-0000(05)80047-9","volume":"49","author":"A Amir","year":"1994","unstructured":"Amir, A., Farach, M., Galil, Z., Giancarlo, R., Park, K.: Dynamic dictionary matching. J. Comput. Syst. Sci. 49(2), 208\u2013222 (1994)","journal-title":"J. Comput. Syst. Sci."},{"issue":"2","key":"1398_CR5","doi-asserted-by":"publisher","first-page":"258","DOI":"10.1006\/inco.1995.1090","volume":"119","author":"A Amir","year":"1995","unstructured":"Amir, A., Farach, M., Idury, R.M., Poutr\u00e9, J.A.L., Sch\u00e4ffer, A.A.: Improved dynamic dictionary matching. Inf. Comput. 119(2), 258\u2013282 (1995)","journal-title":"Inf. Comput."},{"issue":"2","key":"1398_CR6","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1006\/inco.1998.2733","volume":"146","author":"P Ferragina","year":"1998","unstructured":"Ferragina, P., Luccio, F.: Dynamic dictionary matching in external memory. Inf. Comput. 146(2), 85\u201399 (1998)","journal-title":"Inf. Comput."},{"key":"1398_CR7","doi-asserted-by":"crossref","unstructured":"Belazzougui, D.: Succinct dictionary matching with no slowdown. In: Proc. 21st CPM, pp. 88\u2013100. (2010)","DOI":"10.1007\/978-3-642-13509-5_9"},{"key":"1398_CR8","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1016\/j.jda.2011.12.011","volume":"14","author":"D Belazzougui","year":"2012","unstructured":"Belazzougui, D.: Worst-case efficient single and multiple string matching on packed texts in the word-ram model. J. Discrete Algorithms 14, 91\u2013106 (2012)","journal-title":"J. Discrete Algorithms"},{"key":"1398_CR9","doi-asserted-by":"publisher","first-page":"113","DOI":"10.1016\/j.tcs.2012.10.050","volume":"475","author":"W Hon","year":"2013","unstructured":"Hon, W., Ku, T., Shah, R., Thankachan, S.V., Vitter, J.S.: Faster compressed dictionary matching. Theor. Comput. Sci. 475, 113\u2013119 (2013)","journal-title":"Theor. Comput. Sci."},{"key":"1398_CR10","doi-asserted-by":"crossref","unstructured":"Amir, A., Levy, A., Porat, E., Shalom, B.R.: Dictionary matching with one gap. In: Proc. 25th CPM, pp. 11\u201320. (2014)","DOI":"10.1007\/978-3-319-07566-2_2"},{"key":"1398_CR11","doi-asserted-by":"crossref","first-page":"30","DOI":"10.1016\/j.tcs.2015.01.019","volume":"578","author":"Compressed automata for dictionary matching","year":"2015","unstructured":"Compressed automata for dictionary matching: I, T., Nishimoto, T., Inenaga, S., Bannai, H., Takeda, M. Theor. Comput. Sci. 578, 30\u201341 (2015)","journal-title":"Theor. Comput. Sci."},{"key":"1398_CR12","doi-asserted-by":"crossref","unstructured":"Clifford, R., Fontaine, A., Porat, E., Sach, B., Starikovskaya, T.: Dictionary matching in a stream. In: Proc. 23rd ESA, pp. 361\u2013372. (2015)","DOI":"10.1007\/978-3-662-48350-3_31"},{"key":"1398_CR13","doi-asserted-by":"crossref","unstructured":"Fischer, J., Gagie, T., Gawrychowski, P., Kociumaka, T.: Approximating LZ77 via small-space multiple-pattern matching. In: Proc. 23rd ESA, pp. 533\u2013544. (2015)","DOI":"10.1007\/978-3-662-48350-3_45"},{"key":"1398_CR14","doi-asserted-by":"publisher","first-page":"34","DOI":"10.1016\/j.tcs.2015.04.011","volume":"589","author":"A Amir","year":"2015","unstructured":"Amir, A., Levy, A., Porat, E., Shalom, B.R.: Dictionary matching with a few gaps. Theor. Comput. Sci. 589, 34\u201346 (2015)","journal-title":"Theor. Comput. Sci."},{"key":"1398_CR15","unstructured":"Ganguly, A., Hon, W., Shah, R.: A framework for dynamic parameterized dictionary matching. In: Proc. 15th SWAT, pp. 10\u201311014. (2016)"},{"key":"1398_CR16","unstructured":"Kopelowitz, T., Porat, E., Rozen, Y.: Succinct online dictionary matching with improved worst-case guarantees. In: Proc. 27th CPM, pp. 6\u20131613. (2016)"},{"issue":"2","key":"1398_CR17","doi-asserted-by":"publisher","first-page":"143","DOI":"10.1017\/S0960129515000134","volume":"27","author":"T Athar","year":"2017","unstructured":"Athar, T., Barton, C., Bland, W., Gao, J., Iliopoulos, C.S., Liu, C., Pissis, S.P.: Fast circular dictionary-matching algorithm. Math. Struct. Comput. Sci. 27(2), 143\u2013156 (2017)","journal-title":"Math. Struct. Comput. Sci."},{"key":"1398_CR18","unstructured":"Golan, S., Porat, E.: Real-time streaming multi-pattern search for constant alphabet. In: Proc. 25th ESA, pp. 41\u201314115. (2017)"},{"issue":"6","key":"1398_CR19","doi-asserted-by":"publisher","first-page":"2123","DOI":"10.1007\/s00453-018-0526-2","volume":"81","author":"A Amir","year":"2019","unstructured":"Amir, A., Kopelowitz, T., Levy, A., Pettie, S., Porat, E., Shalom, B.R.: Mind the gap! - online dictionary matching with one gap. Algorithmica 81(6), 2123\u20132157 (2019)","journal-title":"Algorithmica"},{"issue":"1","key":"1398_CR20","doi-asserted-by":"publisher","first-page":"31","DOI":"10.1145\/375360.375365","volume":"33","author":"G Navarro","year":"2001","unstructured":"Navarro, G.: A guided tour to approximate string matching. ACM Comput. Surv. 33(1), 31\u201388 (2001)","journal-title":"ACM Comput. Surv."},{"key":"1398_CR21","doi-asserted-by":"crossref","unstructured":"Cole, R., Gottlieb, L.-A., Lewenstein, M.: Dictionary matching and indexing with errors and don\u2019t cares. In: Proc. 36th STOC, pp. 91\u2013100. (2004)","DOI":"10.1145\/1007352.1007374"},{"issue":"2","key":"1398_CR22","doi-asserted-by":"publisher","first-page":"257","DOI":"10.1016\/S0196-6774(03)00097-X","volume":"50","author":"A Amir","year":"2004","unstructured":"Amir, A., Lewenstein, M., Porat, E.: Faster algorithms for string matching with k mismatches. J. Algorithms 50(2), 257\u2013275 (2004)","journal-title":"J. Algorithms"},{"issue":"4","key":"1398_CR23","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1007\/BF01185431","volume":"12","author":"WI Chang","year":"1994","unstructured":"Chang, W.I., Lawler, E.L.: Sublinear approximate string matching and biological applications. Algorithmica 12(4), 327\u2013344 (1994)","journal-title":"Algorithmica"},{"key":"1398_CR24","doi-asserted-by":"crossref","unstructured":"Backurs, A., Indyk, P.: Which regular expression patterns are hard to match? In: Proc. 57th FOCS, pp. 457\u2013466. (2016)","DOI":"10.1109\/FOCS.2016.56"},{"key":"1398_CR25","doi-asserted-by":"crossref","unstructured":"Bille, P., Thorup, M.: Regular expression matching with multi-strings and intervals. In: Proc. 21st SODA, (2010)","DOI":"10.1137\/1.9781611973075.104"},{"key":"1398_CR26","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1016\/j.tcs.2012.03.029","volume":"443","author":"P Bille","year":"2012","unstructured":"Bille, P., G\u00f8rtz, I.L., Vildh\u00f8j, H.W., Wind, D.K.: String matching with variable length gaps. Theoret. Comput. Sci. 443, 25\u201334 (2012)","journal-title":"Theoret. Comput. Sci."},{"issue":"2","key":"1398_CR27","doi-asserted-by":"publisher","first-page":"354","DOI":"10.1006\/jagm.1997.0860","volume":"24","author":"A Amir","year":"1997","unstructured":"Amir, A., Benson, G., Farach, M.: Optimal two-dimensional compressed matching. J. Algorithms 24(2), 354\u2013379 (1997)","journal-title":"J. Algorithms"},{"key":"1398_CR28","doi-asserted-by":"crossref","unstructured":"Fischer, J., Gagie, T., Gawrychowski, P., Kociumaka, T.: Approximating lz77 via small-space multiple-pattern matching. In: Proc. 23rd ESA, pp. 533\u2013544. (2015)","DOI":"10.1007\/978-3-662-48350-3_45"},{"key":"1398_CR29","doi-asserted-by":"crossref","unstructured":"Kida, T., Takeda, M., Shinohara, A., Miyazaki, M., Arikawa, S.: Multiple pattern matching in LZW compressed text. In: Proceedings of the 8th Data Compression Conference, pp. 103\u2013112. (1998)","DOI":"10.1109\/DCC.1998.672136"},{"key":"1398_CR30","doi-asserted-by":"crossref","unstructured":"Amir, A., Benson, G.: Efficient two-dimensional compressed matching. In: Proc. 2nd DCC, pp. 279\u2013288. (1992)","DOI":"10.1109\/DCC.1992.227453"},{"issue":"3","key":"1398_CR31","doi-asserted-by":"publisher","first-page":"1361","DOI":"10.1016\/S0304-3975(02)00041-5","volume":"290","author":"A Amir","year":"2003","unstructured":"Amir, A., Landau, G.M., Sokol, D.: Inplace run-length 2d compressed search. Theor. Comput. Sci. 290(3), 1361\u20131383 (2003)","journal-title":"Theor. Comput. Sci."},{"issue":"1","key":"1398_CR32","doi-asserted-by":"publisher","first-page":"4","DOI":"10.1006\/jcom.1998.0493","volume":"15","author":"A Apostolico","year":"1999","unstructured":"Apostolico, A., Landau, G.M., Skiena, S.: Matching for run-length encoded strings. J. Complex. 15(1), 4\u201316 (1999)","journal-title":"J. Complex."},{"key":"1398_CR33","doi-asserted-by":"crossref","unstructured":"Sakai, Y.: Computing the longest common subsequence of two run-length encoded strings. In: Proc. 23rd ISAAC, pp. 197\u2013206. (2012)","DOI":"10.1007\/978-3-642-35261-4_23"},{"key":"1398_CR34","doi-asserted-by":"crossref","unstructured":"Eltabakh, M.Y., Hon, W., Shah, R., Aref, W.G., Vitter, J.S.: The sbc-tree: an index for run-length compressed sequences. In: Proc. 11th EDBT, pp. 523\u2013534. (2008)","DOI":"10.1145\/1353343.1353407"},{"key":"1398_CR35","doi-asserted-by":"crossref","unstructured":"Knuth, D.E., Jr, J.H.M., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(2), 323\u2013350 (1977)","DOI":"10.1137\/0206024"},{"key":"1398_CR36","doi-asserted-by":"crossref","unstructured":"Fredman, M.L., Koml\u00f3s, J., Szemer\u00e9di, E.: Storing a sparse table with O(1) worst case access time. In: Proc. 23rd FOCS, pp. 165\u2013169. (1982)","DOI":"10.1109\/SFCS.1982.39"},{"issue":"2","key":"1398_CR37","doi-asserted-by":"publisher","first-page":"81","DOI":"10.1016\/0020-0190(83)90075-3","volume":"17","author":"DE Willard","year":"1983","unstructured":"Willard, D.E.: Log-logarithmic worst-case range queries are possible in space theta(n). Inf. Process. Lett. 17(2), 81\u201384 (1983)","journal-title":"Inf. Process. Lett."},{"key":"1398_CR38","doi-asserted-by":"crossref","unstructured":"Andersson, A., Nilsson, S.: A new efficient radix sort. In: Proc. 35th FOCS, pp. 714\u2013721. (1994)","DOI":"10.1109\/SFCS.1994.365721"},{"key":"1398_CR39","doi-asserted-by":"publisher","first-page":"337","DOI":"10.1007\/BF01840366","volume":"2","author":"B Chazelle","year":"1987","unstructured":"Chazelle, B.: Computing on a free tree via complexity-preserving mappings. Algorithmica 2, 337\u2013361 (1987)","journal-title":"Algorithmica"},{"key":"1398_CR40","doi-asserted-by":"crossref","unstructured":"Alstrup, S., Holm, J.: Improved algorithms for finding level ancestors in dynamic trees. In: Proc. 27th ICALP, pp. 73\u201384. (2000)","DOI":"10.1007\/3-540-45022-X_8"},{"issue":"2","key":"1398_CR41","doi-asserted-by":"publisher","first-page":"214","DOI":"10.1016\/S0022-0000(05)80002-9","volume":"48","author":"O Berkman","year":"1994","unstructured":"Berkman, O., Vishkin, U.: Finding level-ancestors in trees. J. Comput. Syst. Sci. 48(2), 214\u2013230 (1994)","journal-title":"J. Comput. Syst. Sci."},{"key":"1398_CR42","doi-asserted-by":"crossref","unstructured":"Dietz, P.F.: Finding level-ancestors in dynamic trees. In: Proc. 2nd WADS, pp. 32\u201340. (1991)","DOI":"10.1007\/BFb0028247"},{"key":"1398_CR43","doi-asserted-by":"crossref","unstructured":"Dietz, P.F.: Fully persistent arrays (extended array). In: Proc. 1st WADS, pp. 67\u201374. (1989)","DOI":"10.1007\/3-540-51542-9_8"},{"key":"1398_CR44","unstructured":"Muthukrishnan, S., M\u00fcller, M.: Time and space efficient method-lookup for object-oriented programs (extended abstract). In: Proc. 7th SODA, pp. 42\u201351. (1996)"},{"key":"1398_CR45","doi-asserted-by":"crossref","unstructured":"Ferragina, P., Muthukrishnan, S.: Efficient dynamic method-lookup for object oriented languages (extended abstract). In: Proc. 4th ESA, pp. 107\u2013120. (1996)","DOI":"10.1007\/3-540-61680-2_50"},{"key":"1398_CR46","doi-asserted-by":"crossref","unstructured":"Alstrup, S., Husfeldt, T., Rauhe, T.: Marked ancestor problems. In: Proc. 39th FOCS, pp. 534\u2013544. (1998)","DOI":"10.1109\/SFCS.1998.743504"},{"issue":"1","key":"1398_CR47","doi-asserted-by":"publisher","first-page":"96","DOI":"10.1016\/j.jalgor.2003.09.001","volume":"50","author":"Y Han","year":"2004","unstructured":"Han, Y.: Deterministic sorting in o(nloglogn) time and linear space. J. Algorithms 50(1), 96\u2013105 (2004)","journal-title":"J. Algorithms"},{"key":"1398_CR48","doi-asserted-by":"crossref","unstructured":"Ru\u017eic, M.: Constructing efficient dictionaries in close to sorting time. In: Proc. 35th ICALP, pp. 84\u201395. (2008)","DOI":"10.1007\/978-3-540-70575-8_8"},{"key":"1398_CR49","doi-asserted-by":"crossref","unstructured":"Tarjan, R.E., Vishkin, U.: Finding biconnected components and computing tree functions in logarithmic parallel time (extended summary). In: 25th Annual Symposium on Foundations of Computer Science, West Palm Beach, Florida, USA, 24-26 October 1984, pp. 12\u201320 (1984)","DOI":"10.1109\/SFCS.1984.715896"}],"container-title":["Algorithmica"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s00453-026-01398-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s00453-026-01398-0","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s00453-026-01398-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,6,24]],"date-time":"2026-06-24T01:10:59Z","timestamp":1782263459000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s00453-026-01398-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,5,28]]},"references-count":49,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2026,6]]}},"alternative-id":["1398"],"URL":"https:\/\/doi.org\/10.1007\/s00453-026-01398-0","relation":{"has-preprint":[{"id-type":"doi","id":"10.21203\/rs.3.rs-7959005\/v1","asserted-by":"object"}]},"ISSN":["0178-4617","1432-0541"],"issn-type":[{"value":"0178-4617","type":"print"},{"value":"1432-0541","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026,5,28]]},"assertion":[{"value":"27 October 2025","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"21 May 2026","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"28 May 2026","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare no competing interests.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Competing interests"}}],"article-number":"50"}}