Download Probabilistic Computation

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Probabilistic Complexity

Probabilistic Algorithms

Def: A probabilistic Turing Machine M is a type of nondeterministic TM, where each non-deterministic step is
called a coin-flip step and has 2 legal next moves.
assign a probability to each branch b of
M ' s computation on input w as follows.

Define the probability of branch b to be


Pr[b]=2-k, where k is the number of coin-flip steps that occur
on branch b.
Define the probability that M accepts w to be

Pr[M accepts w] =  Pr[b]
b is an
accepting branch

For 0    ½ , we say that M recognize language A with
error probability  if


wA implies Pr[M accepts w]  1-, and
wA implies Pr[M rejects w]  1-

BPP


Def: BPP is the class of languages that are recognized by
probabilistic polynomial time TM’s with an error probability
of 1/3 .
Lemma: [Amplification Lemma]
Let 0<<½. Then for any polynomial p(n) a probabilistic poly
time TM M1 that operates with error probability  has an
equivalent probabilistic poly time TM M2 that operates with an
error probability of 2-p(n) .
Pf:



M1: recognizes a language with error , and a poly p(n).
Construct M2 that recognizes the same language with an
error probability 2-p(n).
M2 =“ On input w
1. Calculate k and repeat the following 2k times
2. Simulate M1 on w.
3. If most runs of M1 accept, then accept;
otherwise reject.
”

M1 errs on w with some probability    < ½ , /1- <1 .
 Pr[ M 2 errs exactly i times on 2k runs ]
k  i  2k
 2k  i
     (1   )2k  i
k  i  2k  i 
 2k 
 ( k  1)    k (1   )k
k 
 ( k  1)22k  k (1   )k  ( k  1)(4 (1   ))k
 ( k  1)(4 (1   ))k
(1-)-(1-)<0
Need to show that (k+1)(4(1-))k  2-p(n) .
Let t=2p(n), a=1/4(1-), b=max(1,1/loga), c=2logbt, k=bc
k
 Claim: (k+1)(1/a)  1/t
ak = abc  abc  2c
i) if 1/loga > 1  b=1/loga  abc=a1/loga•C=2 C
ii) if 1/loga < 1  b=1 and a>2  abc=aC>2 C
2c = 22log(bt) = (bt)2
b1, assume that t9  bt9  bt>2+2log(bt)
 (bt)2 > bt(2+2logbt) = t(2b+2blogbt)
∵ b 1
Hence ak  t(2+2blogbt)  t(1+2blogbt)  t(1+bc)
= t(k+1)
(k+1)(4(1- ))k = (k+1)/ak  1/t =2-p(n)
■

Primality:
Composite number : 複合數
 Prime
: 質數
Zp+={1,2,…,p-1}, Zp ={0}Zp+
Z5 ={0,1,2,3,4}
Z6 ={0,1,2,3,4,5}
Z6+={1,2,3,4,5}
 x mod p is the smallest non-negative y where x  y (mod p) .



Lemma: Suppose that a1,…,at all divide n and (ai,aj)=1 for ij.
Then a1…at n.
Pf:
By induction. It is clear for t=1
Suppose the lemma is true up to t-1,
i.e. a1…at-1n.
(at,a1…at-1)=1  Exist r and s such that r  at + s  a1…at-1 =1,
ratn + sa1…at-1n=n .
■
by ind.
at|n

Thm: (Chinese Remainder theorem)
Suppose m=m1m2…mt and (mi,mj)=1 for ij. Let b1,b2,…,bt be
integers and consider the system of congruencies :
xb1 (mod m1)
xb2 (mod m2)
This system has solutions
any two solutions differ by
a multiple of m.
xbt (mod mt)

Pf:
Let ni = m/mi , then (mi,ni)=1.
 Exist ri and si such that rimi+sini=1.
Let ei = sini  ei  1 (mod mi)
ei  0 (mod mj), ij
t
Let x0=  biei. Then x0  biei (mod mi)
i 1
 bi (mod mi)
 x0 is a solution.
Suppose x1 is another solution. Then
x1–x0  0 (mod mj), for i=1,…,t .
That is m1,…,mt divide x1-x0 .
 m x1-x0
■


The CRT says that a 1-1 correspondence exists between Zm
and Zm1×…×Zmt
Thm: (Fermat’s little theorem)
If p is a prime number and aZp+, then
ap-1  1 (mod p) .

Pf:
1a,2a,…,(p-1)a
1i,jp-1, ia  ja (mod p)
(ia–ja)  0 (mod p)
(i-j)a = k‧p  p (i-j)  i=j .
 Thus, 1a,2a,…(p-1)a is a permutation of 1,2,…,(p-1).
1a‧2a‧ …‧(p-1)a  1‧2‧…‧(p-1) (mod p)
(p-1)!ap-1  (p-1)! (mod p)
(p-1)!(ap-1 -1)  0 (mod p)
(p-1)!(ap-1 -1)  k‧p
p ap-1 –1,  ap-1  1 (mod p) .
■

eg.
27-1=26=64, 64 mod 7 =1.

Fermat test:
we say that p passes the Fermat test at a, we mean that
ap-1  1 (mod p) .
 Fermat’s little theorem states that primes pass all Fermat
tests for aZp+ .

Carmichael numbers:
Composite numbers that passes all Fermat tests.
Pseudo-prime = “ On input p:
1. Select a1,…,ak randomly in Zp+ .
2. Compute aip-1 mod p for each i .
3. If all computed values are 1 , accept ;
otherwise, rejects .
“
Test prime power

Numbers of prime power: N=pk
It is easy to test such type of numbers!
It is clear that (p-1)| (N-1)
Find a number a such that gcd(a, p) =1.
Then aN-1 1 (mod p). Why?
Thus p | gcd ( N, aN-1 -1).
PRIME = “ On input p
1. If p is even and p=2 then accept ; else reject .
2. Select a1,…,ak randomly in Zp+ .
3. For i=1 to k do
4. Compute aip-1 mod p and reject if different from 1.
5. Let p-1=st where s is odd and t=2h
6.
7.
Compute
s 2 0
i
a
s21
i
,a
s 2 2
i
,a
s 2 h
i
,..., a
mod p.
If some element is not 1, then find the last one that is not
1 and reject if it is not –1.
8. All tests have passed at this point, so accept. “

Lemma: If p is an odd prime number, then
Pr[PRIME accepts p]=1 .

Pf:
If p is an odd prime, then it will pass stage 4.
If a were a stage 7 witness, some b exists in Zp+, where b  1
(mod p) and b  1(mod p)
 b2-1  0 (mod p)
(b-1)(b+1)  0 (mod p)
(b-1)(b+1) = cp for some positive integer c.
∵ b  1 (mod p)  0<b+1 , b-1<p .

Therefore, p is composite because a prime number cannot
be expressed as a product of numbers that are smaller than
it is.
■

Lemma: If p is an odd composite number, then
Pr[PRIME accepts p]  2-k .

Pf:
Goal: If p is an odd composite number and a is selected
randomly in Zp+, then Pr[a is witness]  ½ .
Prove by demonstrating that at least as many witnesses as nonwitnesses exist in Zp+ , i.e. by finding a unique witness for each
non-witness.

For every non-witness, the sequence computed in stage 6 is
either all 1 or contains –1 at some position followed by 1’s .
1: non-witness of the first kind
1,1,1,…,1
-1:non-witness of the second kind
-1,1,1,…1
Among all non-witness of 2nd kind, find a non-witness for which
the –1 appears in the largest position in the sequence.

Let h be a non-witness.
,…,……………..-1,1,…,1
j-th
h
S  20
,h
S 21
,......
h
S 2 j
 h
S 2 j
 1 ( mod p)
∵ p is composite.  We can write p = qr, (q,r)=1,
or p is a prime power. We handle former case first.
By the CRT, there exists t  Zp .
s 2 j
t  1 (mod q)
t  h (mod q)
j
t  1 (mod r)
t s2  1 (mod r)
Hence t is a witness because t
j 1
but t s2  1 (mod p)
If t
s 2 j
 1 (mod p)  t
s2 j
 1 (mod p)
s 2 j
 1  kp
s 2 j
 1 (mod q)
t
 1 (mod r)
similarly , for t
s 2 j
 1 (mod p).
Next we prove that dt mod p is a unique witness for each nonwitness d by 2 observations .

1) d  1 (mod p) and d
 1 (mod p)
dt mod p is a witness, because
s 2 j
(dt)

s2 j 1
s 2 j
 1 and (dt)
s2 j 1
 1 (mod p) .
2) If d1 and d 2 are distinct non-witnesses, then
d1t mod p  d 2t mod p .
The reason is that t
s 2 j 1
mod p  1
s2 j 1 1
 t t
mod p  1.
 If td1 mod p  td2 mod p then
d1  t  t s2
j 1
1
 d1 mod p  t  t s2
j 1
1
 d 2 mod p
 d2
Thus the number of witnesses must be as large as
the number of non-witnesses when p=qr.








For the case p=qe, where q is a prime and e >1.
Let t= 1+ qe-1, which is < p.
Thus t p = (1+ q e-1)p = 1 + p qe-1 + (.....) q2(e-1)
= 1 + p(.........)  1 (mod p).
Observe that if t p-1  1 (mod p), then t p  t !1 (mod
p), which contradicts that t p  1 (mod p).
Thus t is a stage 4 witness, since t p-1 !  1 (mod p).
If d is a stage 4 non-witness, then dp-1  1 (mod p), but
then (dt)p-1 ! 1 (mod p), ie, dt is a witness.
If d1 and d2 are distinct non-witness, then
d1 t mod p  d2 t mod p. Otherwise,
d1 =d1 tp mod p = d2 tp mod p = d2.
Thus the number of stage 4 witnesses must be as large
as the number of non-witnesses.
Thm: PRIMES  BPP, actually co-RP.

Def: BPP is the class of all languages L for which there is a
non-det poly time TM M, whose computation branches all
have the same length, and



Def: LRP, if  a NTM in poly time.




when xL  Pr[M(x) accepts]  2/3 ,
when xL  Pr[M(x) accepts] < 1/3 .
when xL  Pr[M(x) accepts]  2/3 ,
when xL  Pr[M(x) accepts] =0 .
RPBPP. ?
ZPP

Def: ZPP = RPco-RP .
Related documents