complexity 19-1 complexity andrei bulatov more probabilistic algorithms

12
Complexity 19-1 Complexit Andrei Bulato More Probabilistic Algorithms

Post on 20-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-1

ComplexityAndrei Bulatov

More Probabilistic

Algorithms

Page 2: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-2

Polynomial Identity

As we know, Primes can be solved in polynomial time. Therefore, the probabilistic algorithm for this problem has great practical significance, but no “theoretical” interest.

For the following problem, no polynomial time deterministic algorithm is known yet

Instance: Two polynomials P and G in variables

Question: Is P identically equal to G?

Polynomial Identity

nxxx ,,, 21

Page 3: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-3

Representation of Polynomials

If P and G are represented explicitly, then the problem makes no sense:

Fact

Two polynomials on N are identical if and only if their coefficients are equal.

Fact

Two polynomials on N are identical if and only if their coefficients are equal.

The polynomials are given implicitly

There is a polynomial time algorithm that, given computes

naaa ,,, 21 ),,,(),,,( 2121 nn aaaGaaaP and

Page 4: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-4

Example

Eigenvalues of a matrix are the roots of

kkkk

k

k

AAA

AAA

AAA

A

21

22221

11211

the determinant

xAAA

AxAA

AAxA

kkkk

k

k

21

22221

11211

This determinant can be computed explicitly (using Gaussian elimination), but the time complexity of this algorithm is under the assumption that operations on polynomials are done in one step; which is unrealistic

)( 3nO

Page 5: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-5

Algorithm

Clearly, it is enough to check if 0),,,(),,,( 2121 nn xxxGxxxP

Thus, we assume that is 0 ),,,( 21 nxxxG

Let d be the degree of P and N = 3d

On the input P of degree d

• choose randomly such that naaa ,,, 21 Nai 0

• if then accept; otherwise reject0),,,( 21 naaaP

Page 6: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-6

Analysis

We prove that

• if P is equal 0 identically then Pr[P accepted] = 1

• if P is not equal 0 identically then Pr[P accepted] 1/3

The first part is obvious.

The second part is based on the following theorem

Theorem (The Main Theorem of Algebra)

A polynomial F(x) of degree d has at most d roots.

Theorem (The Main Theorem of Algebra)

A polynomial F(x) of degree d has at most d roots.

Page 7: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-7

Suppose first that P is a polynomial in one variable

Then if P does not equal 0, then P(a) 0 for at least 2/3 of the numbers a 1,2,…,3d

Let P(x,y) be in two variables

x

y

0 3da

Then, for any 0 a 3d, the polynomial P(a,y) is a polynomial in one variable.

This polynomial has at most d roots in the interval 1,2,…,3d

Therefore, P(a,b) 0 for at least 2/3 of the numbers b 1,2,…,3d

Page 8: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-8

Random Walk

We have seen random walk algorithms for graphs

Similar algorithms are possible for other problems. For example for SAT

Given a CNF

• take an arbitrary truth assignment T

• for i = 1 to k do

- if T is a satisfying assignment then accept

- otherwise take any unsatisfied clause (all literals in this clause are false)- randomly flip a literal from this clause updating T

• reject

Page 9: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-9

Analysis

How large must the length of the walk be to guarantee significant probability of success?

If the formula is unsatisfiable, then it cannot be accepted

A satisfiable formula can be accepted and can be rejected

Lemma

If is a satisfying formula with n variables and then Pr[ rejected] 1/2.

Lemma

If is a satisfying formula with n variables and then Pr[ rejected] 1/2.

nk 22ln

Page 10: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-10

Proof

If is satisfiable, it has at least 1 satisfying assignment.

Therefore the probability that a random assignment is satisfying is at least n2

The probability that the algorithm fails after one attempt is at mostand after k attempts at most

n 21kn )21(

We need a k such that

21

)21( kn

2ln)21ln( nk

It is known that xx |)1log(|

|)21ln(|2ln

nk

|)21ln(|2ln

22ln

nn

Thus we may take any nk 22ln

Page 11: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-11

Theorem

If is a satisfiable 2-CNF with n variables and then Pr[ rejected] 1/2.

Theorem

If is a satisfiable 2-CNF with n variables and then Pr[ rejected] 1/2.

22nk

2-SAT

Page 12: Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms

Complexity 19-12

3-SAT

For any n, we consider CNF consisting of the following clausesn

• )()()( 21 nXXX

• for every different the clause ,,,1 nkji )( kji XXX

Lemma

For any polynomial p(n), any n, and k = p(n),

Pr[ rejected] .

Lemma

For any polynomial p(n), any n, and k = p(n),

Pr[ rejected] .n n 31