Transcript
Page 1: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 1

Undecidable Problems(unsolvable problems)

Page 2: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 2

Recall that: A language is decidable, if there is a Turing machine (decider) that accepts the language and halts on every input string

AM

A

Turing Machine

Inputstring

Accept

Reject

M

Decider for A

DecisionOn Halt:

Decidable Languages

YES

NO

Page 3: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 3

A computational problem is decidableif the corresponding language is decidable

We also say that the problem is solvable

Page 4: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 4

Problem:Does DFA acceptthe empty language ?

M

Corresponding Language:

} language empty accepts that DFA a is :{

MM

EMPTYDFA

X

Description of DFA as a stringM

)(ML

(For example, we can represent as a binary string, as we did for Turing machines)

M

(Decidable)

Page 5: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 5

Determine whether there is a path from the initial state to any accepting state

Decider for :

On input : M

DFA

)(ML

M DFA M

)(ML

Reject MDecision: Accept M

DFAEMPTY

Page 6: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 6

Problem: Does DFA accept a finite language?

M

Corresponding Language:

}language finite a accepts that DFA a is :{ MM

FINITE DFA X (Decidable)

Page 7: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 7

Decider for :

On input : M

DFA M DFA M

Reject MDecision: Accept M

Check if there is a walk with a cyclefrom the initial state to an accepting state

infinite finite

DFAFINITE

(NO) (YES)

Page 8: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 8

Problem: Does DFA accept string ? M

Corresponding Language:

} string accepts that DFA a is :,{ wMwM

ADFA X

w

(Decidable)

Page 9: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 9

Decider for :

On input string :

DFAA

Run DFA on input string M w

If accepts Then accept (and halt)Else reject (and halt)

M wwM,

wM,

wM,

Page 10: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 10

Problem:Do DFAs and accept the same language?

1M

Corresponding Language:

}languages same the

accept that DFAs are and :,{ 2121 MMMM

EQUALDFA X

2M

(Decidable)

Page 11: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 11

Let be the language of DFA Let be the language of DFA

1L

2L

)()()( 2121 LLLLML

Decider for :

On input : 21,MM

1M

2M

Construct DFA such that:M

(combination of DFAs)

DFAEQUAL

Page 12: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 12

)()( 2121 LLLL

21 LL 21 LLand

21 LL

1L 2L 1L2L

21 LL 12 LL 2L 1L

Page 13: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 13

)()( 2121 LLLL

21 LL 21 LLor

1L 2L 1L2L

21 LL 12 LL

21 LL

Page 14: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 14

Therefore, we only need to determine whether

)()()( 2121 LLLLML

which is a solvable problem for DFAs:

DFAEMPTY

Page 15: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 15

Undecidable Languages

there is no Turing Machine which accepts the language and makes a decision (halts)for every input string

undecidable language = not decidable language

There is no decider:

(machine may make decision for some input strings)

Page 16: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 16

For an undecidable language,the corresponding problem is undecidable (unsolvable):

there is no Turing Machine (Algorithm)that gives an answer (yes or no) for every input instance

(answer may be given for some input instances)

Page 17: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 17

We have shown before that there are undecidable languages:

Decidable

Turing-Acceptable L

L

Lis Turing-Acceptable and undecidable

Page 18: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 18

We will prove that two particular problemsare unsolvable:

Membership problem

Halting problem

Page 19: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 19

Membership Problem

Input: •Turing MachineM•String w

Question: Does accept ? M w?)(MLw

Corresponding language:

} string accepts

that machine Turing a is :,{

w

MwMATM

Page 20: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 20

Theorem:

(The membership problem is unsolvable)

Proof:

We will assume that is decidable;We will then prove that every decidable languageis Turing-Acceptable

TMA is undecidable

TMABasic idea:

A contradiction!

Page 21: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 21

Suppose that is decidable

HM

w

YES M accepts w

NO M rejects w

TMA

Deciderfor TMAwM,

Input string

Page 22: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 22

Let be a Turing recognizable language L

Let be the Turing Machine that acceptsLM L

We will prove that is also decidable: L

we will build a decider for L

Page 23: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 23

NO

YESLM

s

accept

L

reject

Decider for

(and halt)

(and halt)

Decider for TMA

Inputstring

s

sLM accepts ?s

String description of LM

Page 24: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 24

Therefore, L is decidable

But there is a Turing-Acceptable languagewhich is undecidable

Contradiction!!!!

Since is chosen arbitrarily, every Turing-Acceptable language is decidable

L

END OF PROOF

Page 25: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 25

We have shown:

Decidable

TMAUndecidable

Page 26: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 26

We can actually show:

Decidable

TMATuring-Acceptable

Page 27: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 27

Turing machine that accepts :TMA

wM,

1. Run on input

2. If accepts then accept

M w

M wwM,

TMA is Turing-Acceptable

Page 28: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 28

Halting Problem

Input: •Turing MachineM•String w

Question: Does halt whileprocessing input string ?

M

w

Corresponding language:

} string input on halts

that machine Turing a is :,{

w

MwMHALTTM

Page 29: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 29

Theorem:

(The halting problem is unsolvable)

Proof:

Suppose that is decidable;we will prove that every decidable languageis also Turing-Acceptable

TMHALT is undecidable

Basic idea:

A contradiction!

TMHALT

Page 30: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 30

M

w

YES Mhalts oninput

w

Mdoesn’t halt on input wNO

Suppose that is decidableTMHALT

Decider for

TMHALT

wM,

Input string

Page 31: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 31

Let be a Turing-Acceptable language L

Let be the Turing Machine that acceptsLM L

We will prove that is also decidable: L

Lwe will build a decider for

Page 32: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 32

haltsand accepts

LM halts on ?sYES

NOLM

Run with input

LM

rejects

accept

reject

LDecider for

s

s

s

Inputstring

Decider forTMHALT

s

LM

and halt

haltsand rejects

LM

and halt

and halt

Page 33: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 33

Contradiction!!!!END OF PROOF

Therefore, L is decidable

But there is a Turing-Acceptable languagewhich is undecidable

Since is chosen arbitrarily, every Turing-Acceptable language is decidable

L

Page 34: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 34

Theorem:

Proof:

Assume for contradiction thatthe halting problem is decidable;

(The halting problem is unsolvable)

TMHALT is undecidable

we will obtain a contradictionusing a diagonilization technique

An alternative proof

Basic idea:

Page 35: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 35

HM

w

YES M halts on w

Mdoesn’t halt on

wNO

Suppose that is decidableTMHALT

Deciderfor TMHALTwM,

Input string

Page 36: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 36

H

wM, 0q

acceptq

rejectq

Input string:YES

NO

Looking inside

H

Decider for TMHALT

M halts on ?w

Page 37: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 37

H

0q

NO

aq bq

H Loop forever

YES

wM,

Construct machine :H

If halts on input Then Loop Forever Else Halt

M w

M halts on ?w

acceptq

rejectq

Page 38: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 38

Construct machine :

MM,Copyon tape

H F

If M halts on input M

Then loop forever

Else halt

MM

F

Page 39: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 39

Run with input itself

FF ,Copyon tape

H

If F halts on input F

Then loops forever on input

Else halts on input

FF

F

F

FF

FF

END OF PROOFCONTRADICTION!!!

Page 40: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 40

We have shown:

Decidable

Undecidable TMHALT

Page 41: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 41

We can actually show:

Decidable

Turing-AcceptableTMHALT

Page 42: Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Fall 2006 Costas Busch - RPI 42

Turing machine that accepts :

wM,

1. Run on input

2. If halts on then accept

M w

M wwM,

TMHALT

is Turing-AcceptableTMHALT


Top Related