computational complexity lectures

background image

1

February 9, 2011

CS21 Lecture 16

1

CS21

Decidability and Tractability

Lecture 16

February 9, 2011

February 9, 2011

CS21 Lecture 16

2

Outline

Gödel Incompleteness Theorem
(continued)

Summary of “Part II” of course

• On to Computational Complexity…

– worst-case analysis

February 9, 2011

CS21 Lecture 16

3

Number Theory

• formal language to express properties of

N

= {0, 1, 2, 3, …}

• allowable symbols: parentheses, and

– variables x,y,z,… ranging over N
– operators + (addition) and * (multiplication)
– constants 0 (additive id) and 1 (mult. identity)
– relation = (equality)
– quantifiers (for all) and (exists)
– propositional operators (and) (or) (not)

(implies)

(iff)

February 9, 2011

CS21 Lecture 16

4

Number Theory

• A

sentence

is a formula with no un-

quantified variables

– every number has a successor:

x y y = x + 1

– every number has a predecessor:

x y x = y + 1

– not a sentence: x + y = 1

• “number theory” = set of true sentences

– denoted Th(N)

true

false

February 9, 2011

CS21 Lecture 16

5

Proof systems

• Proof system components:

– axioms (asserted to be true)
– rules of inference (mechanical way to derive

theorems from axioms)

• axioms for manipulating symbols (e.g.):

– (

)

– ( x (x))

(1+1+1)

– x y z (x = y

y = z

x = z)

– others…

February 9, 2011

CS21 Lecture 16

6

Proof systems

• a

proof

is a sequence of formulas

1

,

2

,

3

, …,

n

such that each

i

is either

– an axiom, or
– follows from formulas earlier in list from rules

of inference

• A sentence is a

theorem

of the proof

system if it has a proof

background image

2

February 9, 2011

CS21 Lecture 16

7

Proof systems

• A proof system is

sound

if all theorems in

that proof system are true

(better have this)

• Peano Arithmetic (PA) is sound.

true sentences

= Th(N)

false sentences

= co-Th(N)

theorems

of PA

February 9, 2011

CS21 Lecture 16

8

Proof systems

• A proof system is

complete

if all true

sentences are theorems in that proof
system

• hope to have this (recall Hilbert’s program)

true sentences

= Th(N)

false sentences

= co-Th(N)

theorems of a

complete proof

system

February 9, 2011

CS21 Lecture 16

9

Incompleteness Theorem

Theorem: Peano Arithmetic is not complete.

(same holds for

any

reasonable proof

system for number theory)

Proof outline:

– the set of theorems of PA is RE
– the set of true sentences (= Th(N)) is not RE

February 9, 2011

CS21 Lecture 16

10

Incompleteness Theorem

• Lemma: the set of theorems of PA is RE.

• Proof:

– TM that recognizes the set of theorems of PA:
– systematically try all possible ways of writing

down sequences of formulas

– accept if encounter a proof of input sentence

(note: true for any reasonable proof system)

February 9, 2011

CS21 Lecture 16

11

Incompleteness Theorem

• Lemma: Th(N) is not RE

• Proof:

– reduce from co-HALT

(show co-HALT

m

Th(N))

– recall co-HALT is not RE

– what should f(<M, w>) produce?
– construct such that

M loops on w

is true

February 9, 2011

CS21 Lecture 16

12

Incompleteness Theorem

– we will define

VALCOMP

M,w

(v)

… (details to come)

so that it is true iff v is a (halting) computation
history of M on input w

– then define f(<M, w>) to be:

v VALCOMP

M,w

(v)

– YES maps YES?

• <M, w> co-HALT

is true

Th(N)

– NO maps to NO?

• <M, w> co-HALT

is false

Th(N)

background image

3

February 9, 2011

CS21 Lecture 16

13

Expressing computation in the

language of number theory

– we’ll write configurations over an alphabet of

size p, where p is a prime that depends on M

– d is a power of p:

POWER

p

(d)

z (DIV(z, d) PRIME(z))

z = p

– d = p

k

and length of v as a p-ary string is k

LENGTH(v, d) POWER

p

(d)

v < d

February 9, 2011

CS21 Lecture 16

14

Expressing computation in the

language of number theory

– the p-ary digit of v at position y is b (assuming

y is a power of p):

DIGIT(v, y, b)

u a (v = a + by + upy

a < y b < p)

– the three p-ary digits of v at position y are b,c,

and d (assuming y is a power of p):

3DIGIT(v, y, b, c, d)

u a (v = a + by + cpy + dppy + upppy

a < y b < p c < p d < p)

February 9, 2011

CS21 Lecture 16

15

Expressing computation in the

language of number theory

– the three p-ary digits of v at position y “match”

the three p-ary digits of v at position z

according to M’s transition function (assuming
y and z are powers of p):

MATCH(v, y, z)

(a,b,c,d,e,f)

C 3DIGIT(v, y, a, b, c)

3DIGIT(v, z, d, e, f)

where C = {(a,b,c,d,e,f) :

abc

in config. C

i

can

legally change to

def

in config. C

i+1

}

February 9, 2011

CS21 Lecture 16

16

Expressing computation in the

language of number theory

– all pairs of 3-digit sequences in v up to d that

are exactly c apart “match” according to M’s
transition function (assuming c, d powers of p)

MOVE(v, c, d)

y (

POWER

p

(y) yppc < d)

MATCH(v, y, yc)

February 9, 2011

CS21 Lecture 16

17

Expressing computation in the

language of number theory

– the string v starts with the start configuration

of M on input w = w

1

…w

n

padded with blanks

out to length c (assuming c is a power of p):

START(v, c)

i = 0,1,2,…, n

DIGIT(v, p

i

, k

i

) p

n

< c

y (POWER

p

(y) p

n

< y < c

DIGIT(v, y, k))

where k

0

k

1

k

2

k

3

…k

n

is the p-ary encoding of

the start configuration, and k is the p-ary
encoding of a blank symbol.

February 9, 2011

CS21 Lecture 16

18

Expressing computation in the

language of number theory

– string v has a halt state in it somewhere

before position d (assuming d is power of p):

HALT(v, d)

y (POWER

p

(y)

y < d

a HDIGIT(v,y,a))

where H is the set of p-

ary digits “containing”

states q

accept

or q

reject

.

background image

4

February 9, 2011

CS21 Lecture 16

19

Expressing computation in the

language of number theory

– string v is a valid (halting) computation history

of machine M on string w:

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c) MOVE(v, c, d) HALT(v, d))

– M does not halt on input w:

v VALCOMP

M,w

(v)

February 9, 2011

CS21 Lecture 16

20

Incompleteness Theorem

v = 136531362313603131031420314253

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c) MOVE(v, c, d) HALT(v, d))

February 9, 2011

CS21 Lecture 16

21

Incompleteness Theorem

v = 136531362313603131031420314253

d = 1000000000000000000000000000000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d

LENGTH(v, d)

START(v, c) MOVE(v, c, d) HALT(v, d))

d = p

k

and length of v as a p-ary string is k

LENGTH(v, d) POWER

p

(d)

v < d

February 9, 2011

CS21 Lecture 16

22

Incompleteness Theorem

v = 136531362313603131031420314253

c = 100000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c)

MOVE(v, c, d) HALT(v, d))

v starts with the start configuration of M on input w

padded with blanks out to length c:

START(v, c)

i = 0,…, n

DIGIT(v, p

i

, k

i

) p

n

< c

y (POWER

p

(y) p

n

< y < c

DIGIT(v, y, k))

kk

n

…k

2

k

1

k

0

p

n

=1000

February 9, 2011

CS21 Lecture 16

23

Incompleteness Theorem

v = 1365313623136031310314

203

14

253

yc = 100000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c)

MOVE(v, c, d)

HALT(v, d))

all pairs of 3-digit sequences in v up to d exactly c
apart “match” according to M’s transition function

MOVE(v, c, d)

y (

POWER

p

(y) yppc < d)

MATCH(v, y, yc)

y =1

February 9, 2011

CS21 Lecture 16

24

Incompleteness Theorem

v = 136531362313603131031

420

31

425

3

yc = 1000000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c)

MOVE(v, c, d)

HALT(v, d))

all pairs of 3-digit sequences in v up to d exactly c
apart “match” according to M’s transition function

MOVE(v, c, d)

y (

POWER

p

(y) yppc < d)

MATCH(v, y, yc)

y =10

background image

5

February 9, 2011

CS21 Lecture 16

25

Incompleteness Theorem

v = 13653136231360313103

142

03

142

53

yc = 10000000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c)

MOVE(v, c, d)

HALT(v, d))

all pairs of 3-digit sequences in v up to d exactly c
apart “match” according to M’s transition function

MOVE(v, c, d)

y (

POWER

p

(y) yppc < d)

MATCH(v, y, yc)

y =100

February 9, 2011

CS21 Lecture 16

26

Incompleteness Theorem

v = 13

6

531362313603131031420314253

y = 1000000000000000000000000000

VALCOMP

M,w

(v)

c d (POWER

p

(c)

c < d LENGTH(v, d)

START(v, c) MOVE(v, c, d)

HALT(v, d)

)

string v has a halt state in it before pos’n d:

HALT(v, d)

y (POWER

p

(y)

y < d

a H

DIGIT(v,y,a))

halt state

February 9, 2011

CS21 Lecture 16

27

Incompleteness Theorem

• Lemma: Th(N) is not RE

• Proof:

– reduce from co-HALT

(show co-HALT

m

Th(N))

– recall co-HALT is not RE

– constructed such that

M loops on w

is true

February 9, 2011

CS21 Lecture 16

28

Summary

• full-fledged model of computation:

TM

• many equivalent models
• Church-Turing Thesis

• encoding of inputs
• Universal TM

February 9, 2011

CS21 Lecture 16

29

Summary

• classes of problems:

– decidable

(“solvable by algorithms”)

– recursively enumerable

(RE)

– co-RE

• counting

:

– not all problems are decidable
– not all problems are RE

February 9, 2011

CS21 Lecture 16

30

Summary

• diagonalization

: HALT is undecidable

• reductions

: other problems undecidable

– many examples
– Rice’s Theorem

• natural problems that are not RE

• Recursion Theorem

: non-obvious

capability of TMs:

printing out own description

• Incompleteness Theorem


Wyszukiwarka

Podobne podstrony:
Aaronson Why Philosophers Should Care About Computational Complexity
lecture3 complexity introduction
Lecture 01 02 03 Computer Unix
Feynman Lectures on Physics Complete Volumes 1,2,3 1376 pages
lecture3 complexity introduction
Freitag Several complex variables local theory (lecture notes, web draft, 2001)(74s) MCc
The Notion of Complete Reducibility in Group Theory [lectures] J Serre (1998) WW
On the Time Complexity of Computer Viruses
Ziming Li Lecture notes on computer algebra (web draft, 2004)(31s) CsCa
A Survey of Irreducible Complexity in Computer Simulations
Fortnow etal Complexity Limitations on Quantum Computation
Arnold Lecture notes on complex analysis [sharethefiles com]
IR Lecture1
uml LECTURE
L 3 Complex functions and Polynomials

więcej podobnych podstron