Title: Decidability
1Decidability
2Undecidable Problems
Halting Problem
Does machine halt on input ?
State-entry Problem
Does machine enter state halt on input
?
3Blank-tape halting problem
Does machine halt when starting on blank
tape?
Membership problem
Is a string member of a recursively
enumerable language ?
4Uncomputable Functions
Values region
Domain
A function is uncomputable if it cannot be
computed for all the domain
5Function
maximum number of moves until any Turing machine
with states halts when started with the
blank tape
6Theorem
Function is uncomputable
Proof
If was computable then the
blank-tape halting problem would be decidable
7Algorithm for blank-tape halting problem
Input machine
1. Count states of
2. Compute
3. Simulate for steps
starting with empty tape
If halts then return YES
otherwise return NO
8Rices Theorem
9Non-trivial property of recursively enumerable
languages
any property possessed by some (not
all) recursively enumerable languages
10Some non-trivial properties of recursively
enumerable languages
- contains two different strings
- of the same length
11Rices Theorem
Any non-trivial property of a recursively
enumerable language is undecidable
12Theorem
For a recursively enumerable language
it is undecidable to determine whether is
empty
Proof
We will reduce the membership problem to this
problem
13Membership problem
Inputs machine and string
Question ?
14Construct machine
When enters a final state, compare input
with
Observations
if and only if is empty
15Algorithm for membership problem
Inputs machine and string
1. Construct
2. Determine if is empty
Yes then
No then
16Membership machine
yes
no
Check if
construct
no
is empty
yes
17Theorem
For a recursively enumerable language
it is undecidable to determine whether is
finite
Proof
We will reduce the halting problem to this problem
18Halting problem
Inputs machine and string
Question does halt on input ?
19Construct machine
When enters a halt state, accept any
input
Initially, simulates on input
(virtual input)
20Observations
If is finite then
halts on if and only if is infinite
21Algorithm for halting problem
Inputs machine and string
1. Construct
2. Determine if is finite
Yes then doesnt halt on
No then halts on
22Machine for halting problem
yes
no
Check if
construct
no
is finite
yes
23Theorem
For a recursively enumerable language
it is undecidable to determine whether
contains two different string of same length
Proof
We will reduce the halting problem to this problem
24Halting problem
Inputs machine and string
Question does halt on input ?
25Construct machine
When enters a halt state, accept symbols
or
Initially, simulates on input
(virtual input)
26Observation
halts on if and only if accepts
and
(strings of equal length)
27Algorithm for halting problem
Inputs machine and string
1. Construct
2. Determine if accepts
strings of equal length
Yes then halts on
No then doesnt halt on
28Machine for halting problem
yes
yes
Check if
construct
no
Has equal length strings
no
29The Post Correspondence Problem
30Some undecidable problems for context-free
languages
- Is context-free grammar ambiguous?
31We need a tool to prove that the
previous problems for context-free languages are
undecidable
The Post Correspondence Problem
32The Post Correspondence Problem
Input
Two sequences of strings
33There is a Post Correspondence Solution if there
is a sequence such that
PC-solution
34Example
PC-solution
35Example
There is no solution
Because total length of strings from is smaller
than total length of strings from
36The Modified Post Correspondence Problem
Inputs
MPC-solution
37Example
MPC-solution
38We will show that The Modified Post
Correspondence Problem is undecidable
In other words There is not MPC-solution
for any pair
39Proof Technique
We will reduce the membership problem to the MPC
problem
40Membership problem
Does Turing machine accept string
Equivalent Problem
Does unrestricted Grammar generate string
?