论文标题

部分可观测时空混沌系统的无模型预测

Dynamic Suffix Array with Polylogarithmic Queries and Updates

论文作者

Kempa, Dominik, Kociumaka, Tomasz

论文摘要

The suffix array $SA[1..n]$ of a text $T$ of length $n$ is a permutation of $\{1,\ldots,n\}$ describing the lexicographical ordering of suffixes of $T$, and it is considered to be among of the most important data structures in string algorithms, with dozens of applications in data compression, bioinformatics, and information retrieval.后缀阵列的最大缺点之一是,在文本更新下很难维护:即使单个字符替代也可以完全更改后缀阵列的内容。因此,动态文本的后缀数组是使用后缀数组查询建模的,该查询返回[1..n] $中的任何$ i \,返回值$ sa [i] $。 在这项工作之前,最快的动态后缀阵列实现是Amir和Boneh。在艾萨克2020年,他们展示了如何回答$ \ tilde {o}(k)$ time中的后缀阵列查询,其中$ k \ in [1..n] $是一个权衡参数,带有$ \ tilde {o}(\ frac {n} {n} {k} {k} {k} {k} {k})$ - 时间文本更新。在最近的预印度[2021]中,他们还提供了一个解决方案,其中有$ O(\ log^5 n)$ - 时间查询和$ \ tilde {o}(n^{2/3})$ - 时间更新。 我们提出了第一个支持后缀阵列查询和文本更新的数据结构,以$ o({\ rm polylog} \,n)$ time(Achie $ o(\ log^4 n)$和$ o(\ log^4 n)$(\ log^{3+o(1)n)n)$时间。我们的数据结构是确定性的,所有操作的运行时间都是最差的。除了标准的单个字符编辑(字符插入,删除和替换)外,我们支持(也支持$ O(\ log^{3+o(1)n)$ time)“切割式”操作,该操作将任何(任意长)$ t $移动到$ t $中的任何(任意长)$ t $。我们通过硬度结果补充我们的结构:除非在线矩阵向量乘法(OMV)猜想失败,否则没有$ O({\ rm polylog} \,n)$的数据结构 - 时间后缀阵列查询可以支持“ copy-paste”操作,以$ O(n^{1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {1- {)$ 0. $ $ε> 0。

The suffix array $SA[1..n]$ of a text $T$ of length $n$ is a permutation of $\{1,\ldots,n\}$ describing the lexicographical ordering of suffixes of $T$, and it is considered to be among of the most important data structures in string algorithms, with dozens of applications in data compression, bioinformatics, and information retrieval. One of the biggest drawbacks of the suffix array is that it is very difficult to maintain under text updates: even a single character substitution can completely change the contents of the suffix array. Thus, the suffix array of a dynamic text is modelled using suffix array queries, which return the value $SA[i]$ given any $i\in[1..n]$. Prior to this work, the fastest dynamic suffix array implementations were by Amir and Boneh. At ISAAC 2020, they showed how to answer suffix array queries in $\tilde{O}(k)$ time, where $k\in[1..n]$ is a trade-off parameter, with $\tilde{O}(\frac{n}{k})$-time text updates. In a very recent preprint [2021], they also provided a solution with $O(\log^5 n)$-time queries and $\tilde{O}(n^{2/3})$-time updates. We propose the first data structure that supports both suffix array queries and text updates in $O({\rm polylog}\,n)$ time (achieving $O(\log^4 n)$ and $O(\log^{3+o(1)} n)$ time, respectively). Our data structure is deterministic and the running times for all operations are worst-case. In addition to the standard single-character edits (character insertions, deletions, and substitutions), we support (also in $O(\log^{3+o(1)} n)$ time) the "cut-paste" operation that moves any (arbitrarily long) substring of $T$ to any place in $T$. We complement our structure by a hardness result: unless the Online Matrix-Vector Multiplication (OMv) Conjecture fails, no data structure with $O({\rm polylog}\,n)$-time suffix array queries can support the "copy-paste" operation in $O(n^{1-ε})$ time for any $ε>0$.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源