ここで尋ねられる質問は、おおよそ「アルゴリズムのランダムビットのシーケンスを、適切に長いコルモゴロフランダム文字列から決定論的に描画されたビットに置き換えることができるという意味はありますか?」これは、少なくとも私が試みる質問です回答!(短い答えは「はい、ただし最初にエラー確率を増幅する場合のみ」です)
はい...
私たちは確かにここで何かを言うことができます。LET、いくつかの言語であるとlet入力として受け取りアルゴリズムでとランダムな文字列(にわたって均一分布)st。言い換えると、は、確率が最大ででエラーになるアルゴリズムです。A 、X 、R ∈ U F (| X |) { 0 、1 } F (| X |)のPr [ A (X 、R )= L (X )] > 1 - ε (X )A ε (⋅ )LAxr∈Uf(|x|){0,1}f(|x|)Pr[A(x,r)=L(x)]>1−ϵ(x)Aϵ(⋅)
ここで、が間違った答えを与えた場合つまり場合、これはを説明するいくつかの手段を提供し、特にとして説明できることに注意してください。-th文字列。これにより、はエラーになりこれを行うには、ハードコードされた、、、およびビットを備えたマシンを作成し、から選択肢を列挙するだけです。は、ような番目の選択肢が見つかるまで続きます。(x 、r )A (x 、r )≠ L (x )r i A x です。x A i b = 1A(x,r)A(x,r)≠L(x)riAx.xAiR ' { 0 、1 } F (| X |) iはrの' A (X 、R ')≠ Bb=1⟺x∈Lr′{0,1}f(|x|)ir′A(x,r′)≠b
これで、ランダム文字列の悪い選択であることを説明に利用できることがわかったので、説明を圧縮に変換するのに十分ないくつかの条件を見てみましょう。を説明するには、、、を説明するのに十分なビットが必要であり、その後、手順のコード(のコードと説明したルーチン)を説明し、長さ説明として与えるr x i b A | x | + | 私| + O (1 )= | x | + log 2(2 f (| x |) ϵ (x ))+ O (1 )= | x | + f (| x |)− log (1 / ϵ (rrxibA
|x|+|i|+O(1)=|x|+log2(2f(|x|)ϵ(x))+O(1)=|x|+f(|x|)−log(1/ϵ(x))+O(1).
ことをリコール長さである、これは圧縮されて、場合例えば、場合。rf(|x|)r
log(1/ϵ(x))=|x|+ω(1),
ϵ(x)=1/22|x|
最後に、がコルモゴロフランダム文字列の場合、そのような圧縮はあり得ないことに注意してくださいのエラー確率が十分に小さい限り、ランダムビットのシーケンスの代わりにコルモゴロフランダム文字列がに応答させます。正しく!rAA
について私たちが活用している唯一のものは、そのエラー確率が小さいことです。実行時間が非常に長いかどうか、またはに片側または両側のエラーがあるかどうかは関係ありません。AAA
これを(またはまたは)の問題に戻すと、アルゴリズムのエラー確率を増幅する限り、ランダムビットの代わりにコルモゴロフランダム文字列を使用できることになります。RPcoRPBPP
...しかし、最初に増幅する場合のみ。
フォローアップの質問は、「エラーの可能性を増幅せずにこれを実行できるか」ということになるかもしれません。を決定し、エラー確率を持つ次のアルゴリズムを考えます。{ 0 、1 } * 1 / 2 NA{0,1}∗1/2n
入力:x
- 文字列を生成しますr∈{0,1}n
- 場合、拒否します。r=x
- 受け入れます。
すべての選択のためのことに注意してください、いくつかの選択肢があるというように上ERRS、すなわちの選択で、我々はによって使用されるビットのランダムシーケンス置き換えることはできませんので、増幅せずにコルモゴロフランダムな文字列では、エラー確率です!x A x r x ArxAxr xA
出典に関するメモ:これが小説であるかどうかはわかりませんが、最初の議論を私の適格試験の筆記に含めましたが、最終的には改訂後にオンラインで利用できるようになります。