





















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Some concept of Automata and Complexity Theory are Administrivia, Closure Properties, Context-Free Grammars, Decision Properties, Deterministic Finite Automata, Intractable Problems, More Undecidable Problems. Main points of this lecture are: More Undecidable Languages, Accepts, Accepts Some Input, Accepts All Inputs, Same Inputs, Recognizable, Undecidable, Decidable, Simulate, Believe
Typology: Slides
1 / 29
This page cannot be seen from the preview
Don't miss anything!
L 1 = {〈 M 〉: M is a TM that accepts input ε}
L 2 = {〈 M 〉: M is a TM that accepts some input}
L 4 = {〈 M , M’ 〉: M and M’ accept the same inputs}
L 3 = {〈 M 〉: M is a TM that accepts all inputs}
decidable recognizable but undecidable
unrecognizable
L 1 = {〈 M 〉: M is a TM that accepts input ε}
A reject if not
〈 M 〉^ accept^ if^ M^ accepts^ ε
〈 M 〉 , w reject if not
accept if M accepts w
〈 M 〉 , w
reject if not
accept if M accepts w
A reject if not
〈 M 〉^ accept^ if^ M^ accepts^ ε
A
〈 M’ 〉
M’ is a Turing Machine such that: If M accepts w , then M’ accepts ε If M does not accept w , then M’ does not accept ε
L 1 = {〈 M 〉: M is a TM that accepts input ε}
decidable recognizable but undecidable
unrecognizable
Algorithm for L 1
On input 〈 M 〉: Simulate M on input ε
L 2 = {〈 M 〉: M is a TM that accepts some input}
A TM is undecidable L 1 is undecidable
〈 M 〉
reject if not
accept if M accepts w A construct^ 〈 M’ 〉 M’
M’ : On input w , If w = ε, then simulate M on ε Otherwise, reject
decidable recognizable but undecidable
unrecognizable
L 2 = {〈 M 〉: M is a TM that accepts some input}
Simulate M on input ε Simulate M on input 0 Simulate M on input 1 Simulate M on input 00
Accept if one of them accepts
... but there are infinitely many!
L 2 = {〈 M 〉: M is a TM that accepts some input}
For all possible strings x (in lexicographic order): For all strings y that come before x
If it accepts, accept. If it rejects, reject.
k := 1
k := k + 1
Simulate M on y for k steps
Simulate M on ε for 1 step Simulate M on ε for 2 steps Simulate M on 0 for 2 steps Simulate M on ε for 3 steps Simulate M on 0 for 3 steps Simulate M on 1 for 3 steps
If M accepts some w , algorithm will see this in some stage of the simulation
decidable recognizable but undecidable
unrecognizable
L 3 = {〈 M 〉: M is a TM that accepts all inputs}
Simulate M on ε for 1 step Simulate M on ε for 2 steps Simulate M on 0 for 2 steps Simulate M on ε for 3 steps Simulate M on 0 for 3 steps Simulate M on 1 for 3 steps
accept if all of them accept but there are infinitely many!
L 3 = {〈 M 〉: M is a TM that accepts all inputs}
decidable recognizable but undecidable
unrecognizable
L 3 = {〈 M 〉: M is a TM that accepts all inputs}
L 3 = {〈 M 〉: M is a TM that does not accept all inputs}
Simulate M on ε for 1 step Simulate M on ε for 2 steps Simulate M on 0 for 2 steps Simulate M on ε for 3 steps Simulate M on 0 for 3 steps Simulate M on 1 for 3 steps
accept if M rejects or loops but how to know if it loops?
L 3 = {〈 M 〉: M is a TM that accepts all inputs}
A TM is not recognizable
If we can recognize L 3 then we can also recognize A TM