O(polylog(n))的含义是什么? 特别是,polylog(n)是如何定义的?
简要:
当学术(计算机科学)论文说“O(polylog(n))”时,它们是什么意思? 我没有被我所熟悉的“Big-Oh”符号,而是由函数polylog(n)所迷惑。 他们不是在谈论复杂的分析函数Li s (Z)我认为。 还是他们? 完全不同的东西也许?
更多详情:
主要是为了个人兴趣,我最近一直在研究压缩后缀数组的各种论文,例如向后search的优点 – 有效的二级存储器和压缩后缀数组的分布式实现 。 估计的计算复杂度有时涉及到polylog(n),这是我不熟悉的函数。
Wikipedia给出了polylog s (z)的定义,似乎主要是关于复杂的分析和parsing数论。 我的怀疑是,它与压缩文件中的多词(n)没有关系,尽pipe我很乐意听到其他知识渊博的人。 如果是这样的话,为什么认为省略下标是合理的呢?
我唯一的猜测是,也许O(polylog(n))应该是“渐近于log(n)的多项式函数”。 但这只是一个猜测:我没有证据certificate,这将是一个滥用符号启动。
无论如何,我们将不胜感激一个合理的权威定义。
滥用符号,polylog(n)表示“log(n)中的一些多项式”,就像“poly(n)”可以表示“n中的某个多项式”一样。 所以O(polylog(n))的意思是“O((log n) k )对于某些k”。 (参见Wikipedia:Polylogarithmic ,或者,从Scott Aaronson博士的博客: 我最喜欢的增长率来看它的含义 。)
关键是,就像我们经常不关心常数因素一样,忽略对数的权力常常是方便的。 有时候,“对数因子”被完全忽略,你可能会看到“Õ(f(n))” – O,其上面有一个波数, 意思是 “O(f(n)polylog(f(n)))”,即,“O(f(n)(logf(n)) k )对于一些k”。
本文使用的方式似乎是这样描述的:
为O(log ^ PN)
Polylog(n)只是“n的对数中的多项式”。 维基百科
不同的多页文章 。 你猜是非常接近。
我确定它们只是表示正整数实轴: Re(n) = n
Wolfram给了你一个select ,其中polylogarithm页面看起来最有希望。