確率的PSpaceマシンによって生成可能なすべての分布は、多項式的に多くのランダムビットのみを持つPSpaceマシンによって生成できるか?

$ M $を単項入力$ n $を持つ確率的チューリングマシンとする 空間は$ n $の多項式で囲まれています。
その出力はバイナリ文字列に対する$ D $の分布です。 $ M $が使用できるランダムビットの数は、$ n
$で指数関数的であることに注意してください。

$ D $を “近似”できますか? 確率的多項式空間限定チューリングマシン 多項式の乱数のみを使う

より正式には、

Let $M$ be a TM with space bound $s$. Is there a probabilistic
Turing machine $N$ using poly(s) space and random bits with the
following property: $$forall k 2^{-k} implies Pr[N = x] >
2^{-k – O(log s)} right)$$

ベストアンサー

はい

I took the four screenshots ​ 0,1,2,3 ​ of this answer in case is doesn’t
render correctly.

アレクセイは、出力が有限長(Kavehによって編集された)であることを指定しなかった。
だから私はそれを想定していません。 L $ subseteq $ NL $ subseteq $ NC 2 < ( hspace {-0.04 in} left
{-0.05 in} left {-0.04 in}} hspace {.02 in} log(n) hspace
{-0.03 in})^ 2 right) hspace {-0.03 in} right)$。

この回答では、明確化されていない「文字列」は無限に右側に続く場合があります。

The part of this answer between here and the
at-symbol applies
to all

probabilistic automata with at most $C$
configurations;
even those with, for example, irrational transition
probabilities.

Consider any positive integer $j$. $;;;$ Since probabilities are
non-negative and add to one,
there are less than $j$ $x$s such that $: 1/j <
operatorname{Pr}[text{Automaton outputs }x] ;$. $;;;$
Consider any such $x$.
For strings $s$, say a configuration is bad for $s$ if the
probability of the automaton outputting $s$
from the configuration is at most $1/j$, and good for $s$
otherwise. $:$ Say a configuration
is good if the configuration is good for at least
one suffix of $x$, and bad otherwise.

$operatorname{Pr}[text{Automaton outputs }x ;;
| ;; text{Automaton reaches a bad configuration}]$
$leq$
$1/j : < : operatorname{Pr}[text{Automaton outputs }x]
;;;$,

したがって、オートマトンが何らかの悪い設定に達することなく$ x $を出力することが可能です。
確率は負ではなく、1に追加されるので、任意の構成が良好です
$ j $文字列未満の場合$ ; ; ; $オートマトンには多くの$ C $設定があるので、
$ :C hspace {-0.04 in} cdot hspace {-0.03 in} j
:$文字列に適した存在する文字列。
オートマトンが$ x $を出力することは可能なので
良い設定では、$ x $は$ 未満です。C hspace {-0.04 in} cdot hspace
{-0.03 in} j :$別々の空でない接尾辞。
したがって、$ x $の長さは$ 未満です。C hspace {-0.04 in} cdot hspace {-0.03
in} j :$または$ big [x $は最終的には周期的です。
[初期期間に連結された前周期部分の]は$ :C hspace {-0.04 in} cdot hspace {-0.03
in} j hspace {.02 in} big] $より小さい。
前者の場合を期間ゼロとみなして、両方の場合が
C hspace {-0.04 in} cdot hspace {-0.03 in} j :$
“よりも短い長さの事前周期部分と初期期間で覆われています。

今、短い出力とドメインが等しいハッシュ関数のファミリ$ H $を選択する
$ big {$ \スペース{-0.04 in} cdot hspace {-0.03 in} j hspace
{.02 in} big] $、$ :$すべての別個の等しい長さ
$ y neq x $、$ ; ; の場合はドメインの要素$ x_0 $、$ y $、 / 2 hspace
{-0.05 in} cdot { hspace hspace} hspace {-0.04 in} j
hspace {.02 in})::::$。
$ x_0 $と$ x_1 $を$ x $の事前周期部分と初期期間とする。
長さが最大$ x_0 $と$ x_1 $の長さであるすべての文字列$ y_0 $と$ y_1
$に対して、

hspace {-0.06 in} hspace {.03 in} y_0)、
operatorname {length}( hspace { .03 in} y_1) rangle = langle
operatorname {length}(x_0)、 operatorname {length}(x_1) rangle
$
hspace {-0.03 in} y_1 rangle neq langle x_0、 hspace {-0.03
in} x_1 rangle : text { rangle = lang h(x_0)、h(x_1) rangle
big] $ { hspace {.03 in} y_0}
$ leq $
hspace {.02 in} y_0、 hspace {-0.03 in} y_1 rangle neq
langle x_0、 hspace {-0.03 in} x_1 rangle langle h( hspace
{.03 in} y_0)、h( hspace {.03 in} y_1) rangle = langle
h(x_0)、h(x_1) rangle] $
$ leq $
$ 1 /(2 hspace {-0.05 in} cdot hspace {-0.04 in} j hspace
{.02 in})$

。そうすることは加重平均を取ることに相当するので、
$ y_0 $と$ y_1 $は$ h $とは独立して配布から選択されます。特に、次の場合に適用されます。
$ langle hspace {.03 in} y_0、 hspace {-0.03 in} y_1 rangle
:$はオートマトンの出力に従って選択され、$ y_0 $は最初の長さ($ x_0 $)
$ y_1 $は出力の次の長さ($ x_1 $)ビットです。ランダム
$ H $から$ H $までの選択も加重平均に相当し、$ H $から$ H $までは

hspace {.02 in} y_0、 hspace {.02 in} y_1
hspace {-0.02 in} rangle leftarrow text {Automaton}} hspace
{-0.05 in rangle = langle operatorname {length}(x_0)} big
{ langle operatorname {length}( hspace {.03 in} y_0)、
operatorname {length} 、 operatorname {length}(x_1) rangle $
hspace {-0.03 in} y_1 rangle neq langle x_0、 hspace {-0.03
in} x_1 rangle : text { rangle = lang h(x_0)、h(x_1) rangle
big] $ { hspace {.03 in} y_0}
$ leq $
$ 1 /(2 hspace {-0.05 in} cdot hspace {-0.04 in} j hspace
{.02 in})$

。 $ h_0 $をそのような$ h $とする。

$1/j : < : operatorname{Pr}[text{Automaton
outputs } x] ;; leq ;; operatorname{Pr}_{langle hspace{.02
in}y_0,hspace{.02 in}y_1hspace{-0.02 in}rangle leftarrow
text{Automaton}}[langle hspace{.02 in}y_0,hspace{-0.03
in}y_1rangle = langle x_0,hspace{-0.02 in}x_1rangle]$
$=$
$operatorname{Pr}_{langle hspace{.02 in}y_0,hspace{.02
in}y_1hspace{-0.02 in}rangle leftarrow
text{Automaton}}hspace{-0.05 in}big[langle
operatorname{length}(hspace{.03
in}y_0),operatorname{length}(hspace{.03 in}y_1)rangle = langle
operatorname{length}(x_0),operatorname{length}(x_1)rangle$
$text{and } : langle hspace{.02 in}y_0,hspace{-0.03
in}y_1rangle = langle x_0,hspace{-0.03 in}x_1rangle : text{
and } : langle h_0(hspace{.03 in}y_0),h_0(hspace{.03
in}y_1)rangle = langle
h_0(x_0),h_0(x_1)ranglebig]$

, ​ ​ so the probability of $: langle hspace{.02
in}y_0,hspace{-0.03 in}y_1rangle = langle x_0,hspace{-0.03
in}x_1rangle :$ conditioned on

hspace {.03 in} y_1) rangle = langle
operatorname {length}(x_0)、 operatorname {length}( hspace {.03
in} y_0) {長さ}(x_1) rangle $
$ text {and} ; rangle = langle h_0(x_0)、h_0(x_1) rangle $
langle h_0( hspace {.03 in} y_0)、h_0( hspace {.03 in}
y_1)

$ 2/3 $より大きい。特に、各要素$ i $に対して
$ { hspace {-0.02 in} 0、 hspace {-0.05 in} 1、 hspace {-0.03
in} 2、 hspace {-0.03 in} 3、… operatorname {length}(x_0)
hspace {-0.03 in} hspace {-0.03 in} operatorname {length}(x_1)
hspace {-0.03 in} – hspace {-0.04 in} 1 hspace {-0.02 in} } $、
同じイベントを条件とする

$2/3$
$<$
$operatorname{Prob}[text{Automaton gives more than } i text{
bits of output and}$
$text{the }itext{-th bit of the output equals the }itext{-th bit
of } x_0$||$x_1]$

。状態数に$ 4 hspace {-0.04 in} cdot hspace {-0.04
in}を乗算する。 hspace {-0.04 in} cdot hspace {-0.04 in} j
$は、オートマトンは$ i $を追跡し、
hspace {-0.05 in} 1、 hspace {-0.03 in 2}、 hspace {-0.03 in}
3、… operatorname {length}(x_0)からハードコーディングされた$ i_0 $ ) hspace
{-0.03 in} + hspace {-0.03 in} operatorname {length}(x_1)
hspace {-0.03 in} – hspace {-0.04 in} 1 hspace {-0.02 in} } $
$ i_0 $番目の出力を記録します。

今、効率を上げるために、ハッシュファミリー$ H $に戻っていく必要があります。 $ p $を
hspace {-0.04 in} cdot hspace {-0.04 in} hspace {-0.04 in}
cdot hspace {-0.04 in} j ^ { hspace {.02 in} 2} $を使用し、ウィキペディアの文字列ハッシング法を使用します。
最大で1ブロックの入力長の場合、衝突は単純に不可能です。そうでなければ、

$text{maximum_collision_probability} leq
text{degree}hspace{.02 in}/p ; = ;
((text{number_of_blocks})hspace{-0.04 in}-hspace{-0.05 in}1)/p
; leq ; (lceil
(text{input_length})/(text{block_size})rceilhspace{-0.04
in}-hspace{-0.05 in}1)/p ; leq ; (lceil
(text{input_length})/1rceil hspace{-0.04 in}-hspace{-0.04
in}1)/p ; = ;$
$(lceil text{input_length}rceil hspace{-0.04 in}-hspace{-0.05
in}1)/p ; < ; (text{input_length})/p < (Chspace{-0.04
in}cdot hspace{-0.04 in}j)/p leq (Chspace{-0.04 in}cdot
hspace{-0.04 in}j)/(2hspace{-0.04 in}cdot hspace{-0.04
in}Chspace{-0.04 in}cdot hspace{-0.04 in}j^{hspace{.02 in}2})
; = ; 1/(2hspace{-0.04 in}cdot hspace{-0.04
in}j)$

。したがって、ウィキペディアの文字列ハッシング法は、この答えに対する衝突確率が十分小さい。
バートランドの仮定により、$ p $は$ 4未満です。 hspace
{-0.04 cdot hspace {-0.04 in} C hspace {-0.04 in} cdot
hspace {-0.04 in} j ^ { hspace {.02 in} 2} $したがって、$ j $
単項で与えられる、logspaceは$ p $を見つけることができます
試行分割し、算術演算$ p $を行う。特に、NC 2
も同じことができます。ウィキペディアの文字列ハッシュ法では入力をストリームとして扱うことに注意してください。
(単項で与えられる$ j $に対して)NC 2 は、$ p
$族の各ハッシュに対して決定論的有限オートマトンを見つけることができます。
したがって、製品の構築によって、NC 2 は任意の
基礎となるオートマトンの出力の両方の部分をテストする$ p $ファミリのハッシュ
基礎となるオートマトンが出力を生成せずに停止するか、またはパーツを完成させる場合
ターゲットハッシュ値と一致しない場合、結果のオートマトンは拒否状態になります。
基礎をなすオートマトンがいずれのものも起こらずに十分な出力を与えるならば、
結果のオートマトンはFinalize0またはFinalize1に移動し、
基礎となるオートマトンが記録していたビットの値によって決定される。

条件付き確率が前に上がったことによって、$ p_ {$ h_0 $}
それが$ operatorname {length}(x_0)$と$ operatorname
{length}(x_1)$と$ h_0(x_0)$と$ h_0(x_1)$で各要素$ i_0 $$ {0 hspace
{-0.03 in}、 hspace {-0.03 in}、 hspace {-0.03 in} 3、…
operatorname {length}(x_0) -0.03 in} hspace {-0.04 in} hspace
{-0.02 in} } $、結果として得られるオートマトンが$ i_0 $を確定する確率$ x_0 $ || の$ x_1
$は確率の2倍以上ですもう片方のビットを確定する。明らかに、それぞれのそのようなオートマトンには、$ langle
hspace {.02 in} y_0、 hspace {-0.03 in} y_1 rangle $ of $ big
[$ length $ :C hspace {-0.04 in} cdot hspace {-0.03 in} j
big] $は、前の文の条件を満たす$です。さらに、$ p $ファミリーとその出力
整数mod $ p $で与えられ、長さは$ C hspace {-0.04 in} cdot hspace {-0.03
in} j $より小さい値に制限されています。
したがって、単項で$ j $の場合、NC 2
はすべてのそのようなオートマトンのリストを出力することができます。

@

ここで、全ての確率的遷移がコインフリップである、
2つの可能な次の状態のそれぞれに行く等しい確率:

ワークスペースの内容には多項式的に多くの可能性しかないため、オートマトンのサイズは多項式です。各遷移確率は{0,1/2,1}であるので、補題6.1 、($ j $に対して
単項では)NC 2 は、$ big [$ :C hspace {-0.04 in} cdot
hspace {-0.03 in} j big]
$をat-symbolの直前の段落の条件を満たしている場合は、そのペアを見つけます。
ほとんどの場合、より単純な方法ですが、それが不可能かどうかを判断するための強力な手段です
そのようなペアで表される文字列は等しいので、NC 2
は、ステップごとに1つの出力を与え、それらの積を生成するそれらの表現から決定論的有限オートマトンを構築し、
その製品オートマトンが[正確に1つが停止する状態になるかどうか
異なる出力を与える]。したがって、NC 2 can(単項で与えられた$ jに対して)は、
[チューリングマシンが出力する$ 1/j $より大きい確率を持つ各文字列]
リスト内のペアの 1つによって明白な方法でエンコードされた最終的に周期的な文字列です。
今度は、NC 2 が出力される文字列の確率を見つけることができることを示す時間です。

まず、シナリオを出力しなくてはなりません。非決定論的なログスペースは、与えられた構成からのさらなる出力を引き起こす一連のランダムビットがあるかどうかをチェックすることができるので、NC
2 は、これらの構成の入力を停止状態に入れ替えることができます。
残りの設定はすべて出力を与える何らかの方法を持っています。このような方法でループを削除することができるので、非停止構成ごとに最大でnumber_of_configurationsの遷移を出力する方法があります。非ゼロ遷移確率は少なくとも1/2であるので、各非停止構成に対して、そこからの出力を与える確率

ほとんどのnumber_of_configurations遷移は、少なくとも1 /(2
^(number_of_configurations))です。
それは停止に置き換えられなかった構成にとどまっている限り、そのままであり、
すべての正の整数tに対して、出力を出さずにtステップに対してそうする確率
(1 /(2 ^(構成の数))))^(floor(t /(number_of_configurations)))
tが無限になるにつれてゼロになります。そのため、各時刻と構成では、[出力を停止しないが、出力を停止する]確率はゼロになります。カウント可能な加算によって、「各時刻と構成について、その時に」が削除されると、前の文は真のままです。したがって、[オートマトンが停止状態に入ることなく、合計出力が有限である]確率は0です。

最終的に周期的な無限の文字列については、前の段落を適用し、さらに変更します
事前周期部分/期間における出力の位置を追跡するオートマトン、
最後に定期的なもの以外の何かを出力する場合は停止します
文字列の次のビット。最終的に周期的な文字列全体を出力しないその他の方法
その出力は有限であるため、前のパラグラフでは、
最終的に周期的な文字列は、停止構成に達する確率から1を引いた値です。

有限の文字列については、2段落前に適用し、さらにオートマトンをさらに修正する
[文字列の長さまでの出力量]を追跡する
文字列全体を出力して停止する場合は、受け入れ状態になります(
この文の次の部分)、そして文字列の出力が終了していなければ停止します。
次のビット以外を出力する]、または文字列より多くを出力します。
前の2つの段落では、受け入れ状態に入らずに文字列を出力する確率はゼロであるため、文字列を出力する確率は受け入れ状態になる可能性と同じです。

Lemma 6.1では、$ j $ 単項式で与えられれば、NC 2
はそれらの確率を計算できます。 NC 2 はまた、
それらの確率を$ 1/j $と比較するので、$ 1/j $以下の確率でペアを除外することができます。
要約すると、$ j $ 単項でと確率的遷移を持つオートマトン
NC 2 はコインフリップであり、トリプルのリストを出力することができます。$ langle text
{prob}、 hspace {-0.02 in} x_0、 hspace {-0.02 in} x_1 rangle
$そのような

別個のトリプルから右の2つのエントリを取ることによって形成されたペア
最終的に周期的な異なる文字列を表す

そのような最終的に周期的な文字列ごとに、そのトリプルの左のエントリ
その文字列を出力するオートマトンの確率

それらの確率はそれぞれ$ 1/j $より大きい

各文字列xに対して、$ x $を出力するオートマトンの確率が$ 1/j $より大きい場合
$ x $は最終的に周期的であり、トリプルのうちの1つの右の2つの項目によって表される

. ​ (In light of this paper, I suspect Lemma 6.1 can
be improved to put its problem in TC1.
If so, then TC1 can also do everything relevant to this
answer that NC2 can do.)

OPの問題にそれを適用する:

NC 2 は、分母$ j $で分数まで確率を丸め、分母を取り除くことができます。 $ j
$は単項であるので、logspaceはmod $ j $を減らすことができるので、$ { hspace {-0.02 in}
0、 hspace {-0.05 in} 1、 hspace {-0.03 in} 2、 hspace {-0.03 in}
3、…、j hspace {-0.04 in} – hspace {-0.04 in} 2、j hspace
{-0.04 in} hspace {-0.05インチ} 1 } $。 $ 2 hspace {-0.05 in} cdot
hspace {-0.05 in} lceil log_2( hspace {.05 in} j)¥rceil $
randomビットでエラーを解決できます$ 1 /(2 hspace {-0.05 in} cdot hspace
{-0.04 in} j hspace {.02
in})$です。同様の理由から、logspaceは、[整数左エントリを持つトリプル]のリストと$ { hspace {-0.02
in} 0、 hspace {-0.05 in} 1、 hspace { 0.03インチ}、 hspace {-0.03インチ}
3、…、j hspace {-0.04インチ} – hspace {-0.04 in} 2、j hspace
{-0.04 in} – hspace {-0.05 $ bot
$を出力して、整数を追加し、合計が要素を超えた場合には停止し、それが起こった場合は最新のトリプルの他の2つの要素によって示される最終的に周期的な文字列を出力します。
]。
したがって、NC 2 はリストを計算した後にそれらのことを行うことができるので、DSPACE $
hspace {-0.02 in} left( hspace {-0.04 in} O hspace {-0.05 in}
left ( hspace {-0.04 in} hspace {.02 in log(n) hspace
{-0.03 in})^ 2 right) hspace {-0.03 in} right)$
同じことをすることもできます。つまり、DSPACE $ hspace {-0.02 in left( hspace
{-0.04 in}) hspace {-0.05 in} left( hspace {-0.04 in}( hspace
{.02 in) log(n) hspace {-0.03 in})^ 2 right) hspace {-0.03
in} right)$は使用できます
最大で$ 2 hspace {-0.05 in} cdot hspace {-0.05 in} lceil
log_2( hspace {.05 in} j) rceil $ランダムビットは、 $ bot $、
各出力の確率は元の確率から$ 3 /(2 hspace {-0.05 in} cdot hspace {-0.04 in}
j hspace {.02 in})$離れており、後者が大きい$ 1/j $より大きい場合、確率は$ 1 /(2 hspace
{-0.05 in} cdot hspace {-0.04 in} j hspace {.02
in})$より大きくなります。

$ left( hspace)から読み込みをシミュレートするために、実際の入力マシンの構造をチューリングマシンとして使用して、$
j = 2 ^ k $と[$ k $ randomビットだけを使う]と$ big [$ {_0.04 in} hspace
{-0.04 in} cdot hspace {-0.04in} 2 ^ S right)確率遷移がすべてコインフリップ$
$ {big} $である$状態オートマトンは、 $ hspace {-0.04 in} left { hspace
{-0.03 in}(S hspace {-0.04 in} + hspace {-0.04 in} k)^ {
hspace {.02 in} 2} hspace {-0.03 in} hspace {-0.02 in} $ 2
hspace {-0.05 in} cdot hspace {-0.04 in} k
$ランダムなビットを使ってそのような分布からサンプリングする$ spaceアルゴリズム$ bot $以外の場合、各出力の確率は$
1 hspace {-0.04 in} big/ hspace {-0.07 in} left( hspace
{-0.04 in} 2 ^ k hspace $ hspace {-0.04 in} big/ hspace
{-0.07 in} left( hspace {-0.04 in})より大きい場合は、 2 ^ k hspace
{-0.04 in} right)$の場合、確率は少なくとも$ 1 hspace {-0.04 in} big/
hspace {-0.07 in} left( hspace {-0.04 in} 2 ^ k hspace {-0.04
in} right)$。 ($ 2 ^ k $は2のべき乗なので、
$ h {-0.02 in} 0、 hspace {-0.05 in} 1、 hspace {-0.03 in 2}、
hspace {-0.03 in} 3から要素を選択するには$ k $ randomビットで十分です、… hspace
{-0.04 in} – hspace {-0.04 in} 2、j hspace {-0.04 in} – hspace
{-0.05 in} 1 } $ 完全に一様に)

That achieves what you’re after.

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です