Galois字的算法:检测、分解与旋转
Algorithms for Galois Words: Detection, Factorization, and Rotation
AI总结:
本文证实了关于Galois字的猜想,提出了在O(n)时间和常数额外空间内检测Galois字、计算其旋转及在线分解的线性算法,解决了相关开放问题。
摘要:
Lyndon字在组合学中被广泛研究——它们在给出一个字所能具有的游程数量的上界中起着至关重要的作用[Bannai+, SIAM J. Comput.'17]。我们可以在常数额外工作空间内以线性时间确定Lyndon字、将一个字按字典序非递增顺序分解为Lyndon字,并找到一个字的Lyndon旋转。最近的研究兴趣源于这样一个问题:当我们改变处于Lyndon字定义核心的字典序时会发生什么。特别是,将所有奇数位置的顺序反转的交替序最近被提出。Lyndon字在其所有循环旋转中是字典序最小的一个,而Galois字通过将字典序替换为交替序展现出相同的性质。不幸的是,这种替换对Galois字所展现的性质产生了巨大影响,使得将Lyndon字的结果转化为Galois字成为一项非平凡的任务。直到现在,人们仅猜想可能存在受Duval算法启发的、具有常数额外工作空间的线性时间算法来计算Galois分解或Galois旋转。在此,我们如下证实了这一猜想。给定长度为n的字T,我们可以在O(n)时间及常数额外工作空间内确定T是否为Galois字。在相同的复杂度内,我们还能确定T的Galois旋转,并在线计算T的Galois分解。最后一个结果解决了[Dolce et al., TCS 2019]中关于Galois字的开放问题1。
英文摘要:
Lyndon words are extensively studied in combinatorics on words -- they play a crucial role on upper bounding the number of runs a word can have [Bannai+, SIAM J. Comput.'17]. We can determine Lyndon words, factorize a word into Lyndon words in lexicographically non-increasing order, and find the Lyndon rotation of a word, all in linear time within constant additional working space. A recent research interest emerged from the question of what happens when we change the lexicographic order, which is at the heart of the definition of Lyndon words. In particular, the alternating order, where the order of all odd positions becomes reversed, has been recently proposed. While a Lyndon word is, among all its cyclic rotations, the smallest one with respect to the lexicographic order, a Galois word exhibits the same property by exchanging the lexicographic order with the alternating order. Unfortunately, this exchange has a large impact on the properties Galois words exhibit, which makes it a nontrivial task to translate results from Lyndon words to Galois words. Up until now, it has only been conjectured that linear-time algorithms with constant additional working space in the spirit of Duval's algorithm are possible for computing the Galois factorization or the Galois rotation. Here, we affirm this conjecture as follows. Given a word $T$ of length $n$, we can determine whether $T$ is a Galois word, in $O(n)$ time with constant additional working space. Within the same complexities, we can also determine the Galois rotation of $T$, and compute the Galois factorization of $T$ online. The last result settles Open Problem~1 in [Dolce et al., TCS 2019] for Galois words.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。