태그 보관물: pseudorandomness

pseudorandomness

RP에 대해 진정한 임의성 (아마도)을 Kolmogorov 임의성으로 대체 할 수 있습니까? n s에스ssㅏAAㅏAA에스ss엔nn에스ss 들어 ,하자

Kolmogorov의 무작위성RP에 충분 하다는 것을 보여 주려는 시도가 있었습니까? “정답이 YES이면 확률 론적 튜링 머신은 YES를 확률과 함께 반환합니다”라는 문장에 사용 된 확률이 항상 잘 정의되어 있습니까? 아니면 해당 확률에 대한 상한과 하한 만 있습니까? 아니면 확률이 잘 정의 된 확률 적 튜링 머신 만 있을까요 (적어도 하한은 1/2보다 커야합니까)?

여기서 RP 클래스는 비교적 임의적이며, Kolmogorov 임의성보다 (의사) 임의성에 대한 약한 개념을 요구할 수도 있습니다. 그러나 Kolmogorov의 무작위성은 좋은 출발점이 될 것 같습니다.


“확률”이라는 단어를 이해하는 것은 Kolmogorov의 무작위성이 RP에 효과적이라는 것을 보여주는 시도의 일부일 것입니다. 그러나 가능한 한 가지 접근 방식을 설명하고 그 의미가 무엇인지, 왜 상한과 하한에 대해 이야기했는지 설명하려고합니다.

를 (콜 모고 로프 임의의) 문자열로 하자 . 를 RP의 언어에 해당하는 주어진 확률 적 튜링 머신 이라고하자 . 실행 와 랜덤 비트의 소스로서 에서 이전에 사용되지 않은 비트 소모 지속 시간, 하나씩.A A s n s

s

A

A

s

n

s

들어 ,하자 및 . 그 관찰 와 아니라 주어진 문자열에 대해 정의 된 그것이 무작위하지 않을 경우에도. 그러나 가 Kolmogorov 임의 경우 인지 또는 두 개의 임의 Kolmogorov 임의 문자열 및 대해 입니다. 또는 Kolmogorov 임의 문자열에 대해 와 같은 가 있는지 여부

pns:=#YES result in first n runs of A on sn

P (S) : = LIM INF N P S N 개의 P S + P (S) (S) P (S) + = P (S) (S) P (S) (1) = P (S) 2 s의 1 2 P 1 / 2 P P

p+s:=lim supn→∞pns

p−s:=lim infn→∞pns

p+s

p−s

s

p+s=p−s

s

p−s1=p−s2

s1

s2

p≥1/2

s

p≤p−s

s

.



답변

나는 여기서 “질문은 대략” ” 우리는 알고리즘에서 임의의 비트 시퀀스를 적절하게 긴 콜로 모고 로프 임의의 문자열에서 결정적으로 추출 된 비트로 대체 할 수있는 감각있는가? ” 대답! (짧은 대답은 “예,하지만 먼저 오류 확률을 증폭 한 경우에만”입니다.)


예…

우리는 분명히 여기서 말할 수 있습니다. 하자 일부 언어하고하자 입력으로 취 알고리즘 될 랜덤 문자열 (위에 균일 분포 ) st . 즉, 는 최대 확률로 오류를 일으키는 알고리즘입니다 .A x r U f ( | x | ) { 0 , 1 } f ( | x | ) Pr [ A ( x , r ) = L ( x ) ] > 1 ϵ ( x ) A ϵ ( )

L

A

x

r∈Uf(|x|)

{0,1}f(|x|)

Pr[A(x,r)=L(x)]>1−ϵ(x)

A

ϵ(⋅)

공지 사항 지금하면 것을 에 대한 오답 제공 즉, ,이 우리에게 설명하는 몇 가지 수단 제공 , 특히를, 우리는 그것을 설명 할 수 에서 가 오류 를 일으키는 번째 문자열 이를 위해, 우리는 단순히 , , 및 비트 을 하드 코딩 한 기계를 만들고 에서 선택을 열거합니다. 가 발견 될 때까지 의 번째 선택 이되도록 .( x , r ) A ( x , r ) L ( x ) r i A x . x A i b = 1

A

(x,r)

A(x,r)≠L(x)

r

i

A

x.

x

A

i

r { 0 , 1 } f ( | x | ) i r A ( x , r ) b

b=1⟺x∈L

r′

{0,1}f(|x|)

i

r′

A(x,r′)≠b

이제 임의의 문자열을 잘못 선택하여 설명으로 활용할 수 있음을 알았으므로 에 대한 설명을 압축으로 변환 하기에 충분한 조건을 살펴 보겠습니다 . 을 설명 하기 위해 , , 를 설명 할 수있는 충분한 비트가 필요하며 프로 시저 코드 ( 코드 와 설명 된 루틴)를 길이r x i b A | x | + | 나는 | + O ( 1 ) = | x | + log 2 ( 2 f ( | x | ) ϵ ( x ) ) + O ( 1 ) = | x | + f ( | x | ) 로그 ( 1 / ϵ (

r

r

x

i

b

A

|x|+|i|+O(1)=|x|+log2⁡(2f(|x|)ϵ(x))+O(1)=|x|+f(|x|)−log⁡(1/ϵ(x))+O(1).

회수는 길이이다 이 압축 변형하므로, 경우 예를 들면, 입니다.

r

f(|x|)

r

log⁡(1/ϵ(x))=|x|+ω(1),

ϵ(x)=1/22|x|

마지막으로 이 Kolmogorov 임의 문자열 인 경우 의 오류 확률 이 충분히 작은 한 임의의 비트 시퀀스 대신 Kolmogorov 임의 문자열이 에 응답하게됩니다. 바르게!

r

A

A

우리가 에 대해 활용하는 유일한 것은 오류 확률이 작다는 것입니다. 실행 시간이 너무 길거나 한두 가지 오류가 있는지는 신경 쓰지 않습니다 .

A

A

A

이것을 (또는 또는 ) 문제로 다시 가져 오면 알고리즘의 오류 확률을 증폭시키는 한 임의의 비트 대신 Kolmogorov 임의 문자열을 사용할 수 있다고합니다.

RP

coRP

BPP

…하지만 먼저 증폭해야합니다.

후속 질문은 “오류 확률을 증폭시키지 않고 이것을 할 수 있습니까?” 를 결정 하고 오차가 다음 알고리즘 를 고려하십시오 .{ 0 , 1 } * 1 / 2 N

A

{0,1}∗

1/2n

입력 :

x
  • 문자열 생성
    r∈{0,1}n

  • 만일 , 거절.
    r=x

  • 동의하기.

공지 사항의 모든 선택에 대한 것을 의 몇 가지 선택이 있도록 것이 단점 ,의, 즉 선택 그 입니다 우리가 사용하는 비트의 임의의 순서로 대체 할 수 있도록 증폭없이 콜 모고 로프 임의의 문자열을 오류 확률입니다!x A x r x A

r

x

A

x

r

x

A

출처에 대한 참고 사항 :이 중 어떤 것이 소설인지 확실하지 않지만, 자격 시험을위한 글쓰기에 첫 번째 주장을 포함 시켰습니다.


답변