 # Probabilistic Complexity. Probabilistic Algorithms Def: A probabilistic Turing Machine M is a type of non- deterministic TM, where each non-deterministic.

## Presentation on theme: "Probabilistic Complexity. Probabilistic Algorithms Def: A probabilistic Turing Machine M is a type of non- deterministic TM, where each non-deterministic."— Presentation transcript:

Probabilistic Complexity

Probabilistic Algorithms Def: A probabilistic Turing Machine M is a type of non- deterministic TM, where each non-deterministic step is called a coin-flip step and has 2 legal next moves.

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] 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 M 1 that operates with error probability  has an equivalent probabilistic poly time TM M 2 that operates with an error probability of 2 -p(n).

Pf: M 1 : recognizes a language with error , and a poly p(n). Construct M 2 that recognizes the same language with an error probability 2 -p(n). M 2 = “ On input w 1. Calculate k and repeat the following 2k times 2. Simulate M 1 on w. 3. If most runs of M 1 accept, then accept; otherwise reject. ”

M 1 errs on w with some probability    < ½,  /1-  <1.  (1-  )-  (1-  )<0

Need to show that (k+1)(4  (1-  )) k  2 -p(n). Let t=2 p(n), a=1/4  (1-  ), b=max(1,1/loga), c=2logbt, k=  bc  Claim: (k+1)(1/a) k  1/t a k = a  bc   a bc  2 c 2 c = 2 2log(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 i) if 1/loga > 1  b=1/loga  a bc =a 1/logaC =2 C ii) if 1/loga 2  a bc =a C >2 C

Hence a k  t(2+2blogbt)  t(1+  2blogbt  )  t(1+  bc  ) = t(k+1) (k+1)(4  (1-  )) k = (k+1)/a k  1/t =2 -p(n) ■

Primality: Composite number : 複合數 Prime : 質數 Z p + ={1,2, …,p-1}, Z p ={0}  Z p + Z 5 ={0,1,2,3,4} Z 6 ={0,1,2,3,4,5} Z 6 + ={1,2,3,4,5} x mod p is the smallest non-negative y where x  y (mod p).

Lemma: Suppose that a 1, …,a t all divide n and (a i,a j )=1 for i  j. Then a 1 … a t  n. Pf: By induction. It is clear for t=1 Suppose the lemma is true up to t-1, i.e. a 1 … a t-1  n. (a t,a 1 … a t-1 )=1  Exist r and s such that r  a t + s  a 1 … a t-1 =1, ra t n + sa 1 … a t-1 n=n. ■ by ind. a t |n

Thm: (Chinese Remainder theorem) Suppose m=m 1 m 2 … m t and (m i,m j )=1 for i  j. Let b 1,b 2, …,b t be integers and consider the system of congruencies : x  b 1 (mod m 1 ) x  b 2 (mod m 2 ) x  b t (mod m t )

Pf: Let n i = m/m i, then (m i,n i )=1.  Exist r i and s i such that r i m i +s i n i =1. Let e i = s i n i  e i  1 (mod m i ) e i  0 (mod m j ), i  j Let x 0 = b i e i. Then x 0  b i e i (mod m i )  b i (mod m i )  x 0 is a solution. Suppose x 1 is another solution. Then x 1 – x 0  0 (mod m j ), for i=1,…,t. That is m 1, …,m t divide x 1 -x 0.  m  x 1 -x 0 ■

The CRT says that a 1-1 correspondence exists between Z m and Z m1 × … × Z mt Thm: (Fermat ’ s little theorem) If p is a prime number and a  Z p +, then a p-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)!a p-1  (p-1)! (mod p) (p-1)!(a p-1 -1)  0 (mod p)  (p-1)!(a p-1 -1)  k ‧ p  p  a p-1 –1,  a p-1  1 (mod p). ■

eg. 2 7-1 =2 6 =64, 64 mod 7 =1. Fermat test: we say that p passes the Fermat test at a, we mean that a p-1  1 (mod p). Fermat’s little theorem states that primes pass all Fermat tests for a  Z p +.

Carmichael numbers: Composite numbers that passes all Fermat tests. Pseudo-prime = “ On input p: 1. Select a 1, …,a k randomly in Z p +. 2. Compute a i p-1 mod p for each i. 3. If all computed values are 1, accept ; otherwise, rejects. “

Numbers of prime power: N=p k 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 a N-1  1 (mod p). Why? Thus p | gcd ( N, a N-1 -1). Test prime power

PRIME = “ On input p 1. If p is even and p=2 then accept ; else reject. 2. Select a 1, …,a k randomly in Z p +. 3. For i=1 to k do 4.Compute a i p-1 mod p and reject if different from 1. 5.Let p-1=st where s is odd and t=2 h 6.Compute mod p. 7.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 Z p +, where b   1 (mod p) and b  1(mod p)  b 2 -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 Z p +, then Pr[a is witness]  ½. Prove by demonstrating that at least as many witnesses as non- witnesses exist in Z p +, 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 2 nd 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 ∵ 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  Z p. t  h (mod q) t  1 (mod r) j-th

Hence t is a witness because but

Next we prove that dt mod p is a unique witness for each non- witness d by 2 observations.

Thus the number of witnesses must be as large as the number of non-witnesses when p=qr.

For the case p=q e, where q is a prime and e >1. Let t= 1+ q e-1, which is < p. Thus t p = (1+ q e-1 ) p = 1 + p q e-1 + (.....) q 2(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 d p-1  1 (mod p), but then (dt) p-1 !  1 (mod p), ie, dt is a witness. If d 1 and d 2 are distinct non-witness, then d 1 t mod p  d 2 t mod p. Otherwise, d 1 =d 1 t p mod p = d 2 t p mod p = d 2. 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 when x  L  Pr[M(x) accepts]  2/3, when x  L  Pr[M(x) accepts] < 1/3. 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] =0. RP  BPP. ? ZPP Def: ZPP = RP  co-RP.

Download ppt "Probabilistic Complexity. Probabilistic Algorithms Def: A probabilistic Turing Machine M is a type of non- deterministic TM, where each non-deterministic."

Similar presentations