简介:
当学术(计算机科学)论文说“O(polylog(n))”时,它们是什么意思?我不会对“Big-Oh”符号感到困惑,我非常熟悉它,而是使用polylog(n)函数。他们不是在谈论我认为的复杂分析函数Lis(Z)。或者是他们?可能有些完全不同的东西?
更多细节:
主要是出于个人兴趣,我最近一直在查看有关压缩后缀阵列的各种论文,例如Advantages of Backward Searching -- Efficient Secondary Memory and Distributed Implementation of Compressed Suffix Arrays。所述的计算复杂度估计有时涉及polylog(n),这是我不熟悉的函数。
维基百科给出了polylogs(z)的定义,它似乎主要是关于复杂分析和分析数论。我怀疑它与压缩文件中的polylog(n)无关,尽管我更喜欢听到知识渊博的人的反对意见。如果是这种情况,为什么省略下标是否合理?
我唯一的另一个猜测是,O(polylog(n))可能意味着“渐近于log(n)的多项式函数”。但这只是一个猜测:我没有证据证明这一点,并且会滥用记谱法来启动。
在任何情况下,都会非常感谢指向合理权威定义的链接!
答案 0 :(得分:66)
滥用符号或不符号,polylog(n)的意思是“log(n)中的某些多项式”,就像“poly(n)”可以表示“n中的某个多项式”。所以O(polylog(n))对于某些k“意味着”O((log n) k )。 (参见Wikipedia: Polylogarithmic,或者,在上下文中看到它,Scott Aaronson教授的博客:My Favorite Growth Rates。)
关键在于,正如我们通常不关心常数因素一样,忽略对数幂通常很方便。有时候“log因子”会被完全忽略,你可能会看到“Õ(f(n))” - O在它上面有一个代号 - means“O(f(n)polylog(f(n)) )“,即”O(f(n)(log f(n)) k )对于某些k“。
答案 1 :(得分:2)
在this paper中使用它的方式似乎是在描述:
O(log ^ p n)
答案 2 :(得分:1)
Polylog(n)只是“n的对数中的多项式”。 Wikipedia
答案 3 :(得分:1)
不同polylog article。你的猜测非常接近。
答案 4 :(得分:0)
我确定它们只表示正整数实轴:Re(n) = n
答案 5 :(得分:0)
Wolfram为您提供selection,polylogarithm页面看起来最有希望。