web-dev-qa-db-ja.com

O(polylog(n))の意味は何ですか?特に、polylog(n)はどのように定義されていますか?

ブリーフ:
学術(コンピュータサイエンス)論文で「O(polylog(n))」と書かれている場合、それらはどういう意味ですか?私がよく知っている "Big-Oh"表記に混乱するのではなく、関数polylog(n)に混乱します。彼らは複雑な分析機能について話しているわけではありません Lis(Z) と思います。それとも彼らですか?何か違うかもしれませんか?

もっと詳しく:
主に個人的な関心のために、最近、圧縮サフィックスアレイに関するさまざまな論文を検討しています。 後方検索の利点-効率的なセカンダリメモリと圧縮されたサフィックス配列の分散実装 。述べられている計算の複雑さの見積もりには、私がよく知らない関数であるpolylog(n)が含まれる場合があります。

ウィキペディアは polylogs(z) これは主に複雑な分析と分析的数論に関するものであるように見えます。私の疑いは、それが圧縮紙のpolylog(n)に関連していないことですが、より知識のある人から別の方法で聞きたいです。これが事実である場合、下付き文字を省略したほうがよいのはなぜですか。

他の唯一の推測は、おそらくO(polylog(n))は「log(n)の多項式関数への漸近」を意味するはずです。しかし、それは推測にすぎません:証拠がありませんこれの、そしてそれはブートする表記法の乱用でしょう。

いずれにせよ、妥当な権威のある定義へのリンクをいただければ幸いです。

48
Managu

「poly(n)」が「nのいくつかの多項式」を意味するのと同じように、polylog(n)は表記の乱用か「log(n)のいくつかの多項式」を意味します。つまり、O(polylog(n))は「O((log n)k)for some k "。( Wikipedia:Polylogarithmic を参照してください。または、コンテキストで確認するには、Scott Aaronson教授のブログ: My Favorite Growth Rates を参照してください。)

重要なのは、定数の要素を気にしないことが多いのと同様に、対数のべき乗を無視すると便利な場合が多いということです。 「ログファクター」が完全に無視されることがあり、「Õ(f(n))」-その上にチルダが付いたO-が表示されることがあります means "O(f(n)polylog(f( n)))」、つまり「O(f(n)(log f(n))k)いくつかのk "。

67
ShreevatsaR

それが この論文 で使用されている方法は、何かを次のように説明しているようです:

O(log^p n)

2
Hamish Smith

Polylog(n)は、単に「nの対数の多項式」です。 ウィキペディア

1
Donnie

異なる ポリログ記事 。あなたはかなり近いと思います。

1
Kevin Montrose

正の整数の実軸のみを意味していると思います:Re(n) = n

0
kolypto

Wolframは selection を提供しますが、その中で polylogarithm ページが最も有望に見えます。

0
Ewan Todd