Randomized Algorithms Randomized Algorithms Two Types of Randomized - - PowerPoint PPT Presentation

randomized algorithms randomized algorithms
SMART_READER_LITE
LIVE PREVIEW

Randomized Algorithms Randomized Algorithms Two Types of Randomized - - PowerPoint PPT Presentation

Randomized Algorithms Randomized Algorithms Two Types of Randomized Algorithms Two Types of Randomized Algorithms and and Some Complexity Classes Some Complexity Classes Speaker: Chuang-Chieh Lin Advisor: Professor Maw-Shang Chang National


slide-1
SLIDE 1

2006/9/20 2006/9/20

Randomized Algorithms Randomized Algorithms

Two Types of Randomized Algorithms Two Types of Randomized Algorithms and and Some Complexity Classes Some Complexity Classes Speaker: Chuang-Chieh Lin Advisor: Professor Maw-Shang Chang National Chung Cheng University

slide-2
SLIDE 2

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 2 2

References References

Professor Hsueh-I Lu’s slides. Randomized Algorithms, Rajeev Motwani and

Prabhakar Raghavan.

Probability and Computing - Randomized

Algorithms and Probabilistic Analysis, Michael Mitzenmacher and Eli Upfal.

slide-3
SLIDE 3

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 3 3

Outline Outline

Las Vegas algorithms and Monte Carlo

algorithms

RAMs and Turing machines Complexity classes

– P, NP, RP, ZPP, BPP and their complementary classes – Open problems

slide-4
SLIDE 4

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 4 4

Las Vegas vs. Monte Carlo Las Vegas vs. Monte Carlo

Las Vegas algorithms

– Always produces a (correct/optimal) solution. – Like RandQS.

Monte Carlo algorithms

– Allow a small probability for

  • utputting an

incorrect/non-optimal solution. – Like RandMC. – The name is by von Neumann.

slide-5
SLIDE 5

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 5 5

Las Vegas Algorithms Las Vegas Algorithms

For example, RandQS is a Las Vegas algorithm. A Las Vegas always gives the correct solution The only variation from one run to another is its

running time, whose distribution we study.

slide-6
SLIDE 6

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 6 6

Randomized Randomized quicksort quicksort

randomization

algorithm RandQS(X) { if X is empty then return; select x uniformly at random from X; let Y = {y ∈ X | y < x}; let Z = {z ∈ X | z > x}; call RandQS(Y ); print x; call RandQS(Z); }

slide-7
SLIDE 7

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 7 7

An illustration An illustration

4 2 7 8 1 9 3 6 5 4 2 1 5 3 7 8 9 6 1 2 4 3 6 7 8 9 9 1 4 6 8 9 3 3

slide-8
SLIDE 8

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 8 8

2 Questions for 2 Questions for RandQS RandQS

  • Is RandQS correct?

– That is, does RandQS “always” output a sorted list of X?

  • What is the time complexity of RandQS?

– Due to the randomization for selecting x, the running time for RandQS becomes a random variable. – We are interested in the expected time complexity for RandQS.

slide-9
SLIDE 9

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 9 9

Monte Carlo algorithms Monte Carlo algorithms

For example, RandEC (the randomized

minimum-cut algorithm we have discussed) is a Monte Carlo algorithm.

A Monte Carlo algorithm may sometimes

produce a solution that is incorrect.

For decision problems, there are two kinds of

Monte Carlo algorithms:

– those with one-sided error – those with two-sided error

slide-10
SLIDE 10

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 10 10

Which is better? Which is better?

The answer depends on the application. A Las Vegas algorithm is by definition a

Monte Carlo algorithm with error probability 0.

Actually, we can derive a Las Vegas

algorithm A from a Monte Carlo algorithm B by repeated running B until we get a correct answer.

slide-11
SLIDE 11

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 11 11

Computation model Computation model

Throughout this talk, we use the Turing machine

model to discuss complexity theory issues.

As is common, we switch to the RAM (random

access machine) as the model of computation when describing and analyzing algorithms.

slide-12
SLIDE 12

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 12 12

Computation model (cont Computation model (cont’ ’d) d)

For simplicity, we will work with the general

unit-cost RAM model.

In unit-cost RAM model, each instruction can be

performed in one time step.

slide-13
SLIDE 13

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 13 13

Deterministic TM Deterministic TM

A deterministic Turing machine is a quadruple M = (S,

∑, δ, s).

– Here S is a finite set of states, of which s ∈ S is the machine’s initial state. – ∑ : a finite set of symbols (this set includes special symbols BLANK and FIRST). – δ : the transition function of the Turing machine, mapping S × ∑ to (S∪{HALT, YES, NO}) × ∑ × {←, →, STAY}.

The machine has three states: HALT (the halting state),

YES (the accepting state), and NO (the rejecting state) (these are states, but formally not in S.)

You can refer to any computation theory textbook to for more details here.

slide-14
SLIDE 14

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 14 14

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-15
SLIDE 15

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 15 15

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-16
SLIDE 16

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 16 16

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-17
SLIDE 17

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 17 17

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-18
SLIDE 18

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 18 18

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-19
SLIDE 19

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 19 19

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-20
SLIDE 20

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 20 20

A Turing machine with one tape A Turing machine with one tape

h × × × × state \ symbol 1

t

B s (s, 0, →) (s, 1, →) (q, t, ←) (s, B, →) q (q0, t, →) (q1, t, →) (q, t, −) (h, B, →) q0 (s, 0, ←) (s, 0, ←) (s, 0, ←) (h, B, →) q1 (s, 1, ←) (s, 1, ←) (s, 1, ←) (h, B, →)

1

B Q: What does this Turing machine do?

slide-21
SLIDE 21

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 21 21

A probabilistic TM A probabilistic TM

A probabilistic Turing machine is a

(nondeterministic) Turing machine augmented with the ability to generate an unbiased coin flip in one step.

It corresponds to a randomized algorithm.

slide-22
SLIDE 22

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 22 22

A probabilistic TM (cont A probabilistic TM (cont’ ’d) d)

On any input x, a probabilistic Turing

machine accepts x with some probability, and we study this probability.

slide-23
SLIDE 23

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 23 23

Language recognition Language recognition problem problem

Any decision problem can be treated as a

language recognition problem.

Let ∑* be the set of all possible strings over ∑. A language L ⊆ ∑* is a collection of strings

  • ver ∑.
slide-24
SLIDE 24

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 24 24

Language recognition Language recognition problem (cont problem (cont’ ’d) d)

The corresponding language recognition

problem is to decide whether a given string x ∈

∑* belongs to L.

An algorithm solves a language recognition

problem for a specific language L by accepting (output YES) any input string contained in L, and rejecting (output NO) any input string not contained in L.

slide-25
SLIDE 25

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 25 25

Complexity Classes Complexity Classes

A complexity class is a collection of

languages all of whose recognition problem can be solved under prescribed bounds on the computational resources.

We are primarily interested the classes in

which algorithms is polynomial-time bounded.

slide-26
SLIDE 26

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 26 26

The Class: The Class: P

P

The class P consists of all languages L that

have a polynomial time algorithm A such that for any input x ∈ ∑*,

– x ∈ L ⇒ A(x) accepts – x ∉ L ⇒ A(x) rejects

slide-27
SLIDE 27

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 27 27

The Class: The Class: NP

NP

The class NP consists of all languages L

that have a polynomial time algorithm A such that for any input x ∈ ∑*,

– x ∈ L ⇒ ∃ y ∈ ∑*, A(x, y) accepts, where | y | is bounded by a polynomial in | x |. – x ∉ L ⇒ ∀ y ∈ ∑*, A(x, y) rejects

Here y can be regarded as a “certificate”

slide-28
SLIDE 28

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 28 28

A useful view of A useful view of P

P and

and NP

NP

The class P consists of all languages L such that

for any x in L, a proof (certificate) of the membership x in L (represented by the string y) can be found and verified efficiently.

The class NP consists of all languages L such

that for any x in L, a proof (certificate) of the membership of x in L can be verified efficiently.

slide-29
SLIDE 29

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 29 29

A useful view of A useful view of P

P and

and NP

NP

(cont (cont’ ’d) d)

Obviously P ⊆ NP, but it is not known whether

P = NP.

If P = NP , the existence of an efficiently

verifiable proof (certificate) implies that it is possible to actually find such a proof (certificate) efficiently.

slide-30
SLIDE 30

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 30 30

When randomized algorithms are

allowed, we have some basic classes as follows.

slide-31
SLIDE 31

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 31 31

The Class: The Class: RP

RP

The class RP (for Randomized Polynomial time)

consists of all languages L that have a randomized algorithm A running in worst-case polynomial time such that for any input x ∈ ∑*, – x ∈ L ⇒ Pr[A(x) accepts] ≥ ½ . – x ∉ L ⇒ Pr[A(x) accepts] = 0.

One-sided error

Actually, the choice of the bound on the error probability ½ can be arbitrary.

slide-32
SLIDE 32

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 32 32

One One-

  • sided error vs. two

sided error vs. two-

  • sided error

sided error

A randomized algorithm A for recognizing a

language L is of one-sided error if for any input x ∈ ∑*, – x ∈ L ⇒ Pr[A(x) accepts] ≠ 1 – x ∉ L ⇒ Pr[A(x) accepts] = 0.

  • r

– x ∈ L ⇒ Pr[A(x) accepts] = 1. – x ∉ L ⇒ Pr[A(x) accepts] ≠ 0.

slide-33
SLIDE 33

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 33 33

One One-

  • sided error vs. two

sided error vs. two-

  • sided error (cont

sided error (cont’ ’d) d)

A randomized algorithm A for recognizing a

language L is of two-sided error if for any input x ∈ ∑*, – x ∈ L ⇒ Pr[A(x) accepts] ≠ 1. – x ∉ L ⇒ Pr[A(x) accepts] ≠ 0.

slide-34
SLIDE 34

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 34 34

The Class: The Class: ZPP

ZPP

The class ZPP (for zero-error Probabilistic

Polynomial time) is the class of languages that has Las Vegas algorithms running in expected polynomial time.

slide-35
SLIDE 35

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 35 35

The Class: The Class: ZPP

ZPP (cont (cont’ ’d) d)

For example,

RandQS is a ZPP algorithm.

slide-36
SLIDE 36

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 36 36

The Class: The Class: PP

PP

The class PP (for Probabilistic Polynomial time)

consists of all languages L that have a randomized algorithm A running in worst-case polynomial time that for any input x ∈ ∑*, – x ∈ L ⇒ Pr[A(x) accepts] > ½ . – x ∉ L ⇒ Pr[A(x) accepts] < ½.

slide-37
SLIDE 37

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 37 37

Exercise 1.10 Exercise 1.10

Consider a randomized algorithm with two-sided

error probabilities as in the definition of PP. Show that a polynomial number of independent repetitions of this algorithm need not suffice to reduce the error probability to ¼ .

– Consider the case where the error probability is

1 2 + 1 2n .

slide-38
SLIDE 38

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 38 38

The Class: The Class: PP

PP (cont (cont’ ’d) d)

The definition of PP is weak.

– It can be proved that it may not be possible to use a small number of repetitions of an algorithm A with such two-sided error probability to obtain an algorithm with “significantly smaller” error

  • probability. (proved by using the Chernoff bound)

Compared to the class BPP!

slide-39
SLIDE 39

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 39 39

The Class: The Class: PP

PP (cont (cont’ ’d) d)

Note:

– To reduce the error probability of a two-sided error algorithm, we can perform several independent iterations on the same input and produce the output that occurs in the majority

  • f these iterations.

– This can be done by using the Chernoff bound.

slide-40
SLIDE 40

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 40 40

The Class: The Class: BPP

BPP

The class BPP (for Bounded-error Probabilistic

Polynomial time) consists of all languages L that have a randomized algorithm A running in worst-case polynomial time that for any input x ∈ ∑*, – x ∈ L ⇒ Pr[A(x) accepts] ≥ ¾ . – x ∉ L ⇒ Pr[A(x) accepts] ≤ ¼ .

Actually, we only have to make sure that the difference between the “green one” and the “red one” is only polynomially small.

slide-41
SLIDE 41

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 41 41

Note Note

Exponentially small

– 1/2n , 1/3n , …

Polynomially small

– 1/n2, 1 / log n, ….

slide-42
SLIDE 42

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 42 42

The Class: The Class: BPP

BPP (cont (cont’ ’d) d)

One can show that for this class of algorithms,

the error probability can be reduced to 1/2n with

  • nly a polynomial number of iterations.

Problem 4.8: Consider a BPP algorithm that has an er- ror probability of 1

2 − 1 p(n), for some polynomially bounded

function p(n) of the input size n. Using the Chernoff bound

  • n the tail of the binomial distribution, show that a poly-

nomial number of independent repetitions of this algorithm su± ce to reduce the error probability to

1 2n .

slide-43
SLIDE 43

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 43 43

The Class: The Class: BPP

BPP (cont (cont’ ’d) d)

Consider the decision version of the min-cut

problem:

– Given a graph G and an integer K, verify that the min- cut size in G equals K.

Assume that we have modified the Monte Carlo

algorithm RandEC to reduce its error probability to be less than ¼ (by sufficiently many repetitions).

– We then get a BPP algorithm.

slide-44
SLIDE 44

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 44 44

The Class: The Class: BPP

BPP (cont (cont’ ’d) d)

In the case where K is indeed the min-cut value,

the algorithm may not come up with the right value and, hence, may reject the input .

If the min-cut value is smaller than K, the

algorithm may only find cuts of size K, and hence, accept the input.

If the min-cut value is larger than K, the

algorithm will never find any cut of size K, and hence, reject the input.

slide-45
SLIDE 45

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 45 45

Note Note

Consider another decision version of the min-cut

problem:

– Given a graph G and an integer K, verify that the min- cut size in G is at most K.

Assume again that we have modified the Monte

Carlo algorithm RandEC to reduce its error probability to be less than ¼ (by sufficiently many

repetitions).

– We then get a RP algorithm for this problem.

slide-46
SLIDE 46

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 46 46

Note (cont Note (cont’ ’d) d)

In the case where the actual min-cut size C is

larger than K, the algorithm will never accept the input.

If the min-cut value is at most K, the algorithm

may find cuts of size at most K, and hence, accept the input.

One-sided error!

slide-47
SLIDE 47

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 47 47

Complement Classes Complement Classes

For any complexity class C, we define the

complementary class co-C as the set of languages whose complement is in the class C.

– That is,

co-C = {L | ¯ L ∈ C}

slide-48
SLIDE 48

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 48 48

Complement Classes (cont Complement Classes (cont’ ’d) d)

Then we have co-P, co-NP, co-RP, co-PP,

co-ZPP, co-BPP, …

For example,

slide-49
SLIDE 49

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 49 49

The Class: The Class: co co-

  • RP

RP

The class co-RP consists of all languages L that

have a randomized algorithm A running in worst- case polynomial time such that for any input x ∈

∑*,

– x ∈ L ⇒ Pr[A(x) accepts] = 1. – x ∉ L ⇒ Pr[A(x) accepts] ≤ ½.

slide-50
SLIDE 50

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 50 50

Exercise Exercise

Show that ZPP = RP ∩ co-RP.

slide-51
SLIDE 51

Computation Theory Lab, CSIE, CCU, Taiwan Computation Theory Lab, CSIE, CCU, Taiwan 2006/9/20 2006/9/20 51 51

Open problems Open problems

Is NP = P? Is RP = co- RP? Is RP ⊆ NP ∩ co-NP? Is BPP ⊆ NP? Is BPP = P? ……

slide-52
SLIDE 52

Thank you.