Presentation is loading. Please wait.

Presentation is loading. Please wait.

Intro to Theory of Computation

Similar presentations


Presentation on theme: "Intro to Theory of Computation"— Presentation transcript:

1 Intro to Theory of Computation
LECTURE 16 Last time Designing deciders. Countable/uncountable sets. Diagonalization Today Undecidable/unrecognizable languages ATM is undecidable CS 464 Homework 6 due Homework 7 out Sofya Raskhodnikova 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

2 How to compare sizes of infinite sets?
Two sets are the same size if there is a bijection between them. A set is countable if it is finite or it has the same size as ℕ, the set of natural numbers 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

3 Sofya Raskhodnikova; based on slides by Nick Hopper
Theorem. There is no bijection from the positive integers to the real interval (0,1) Proof: Suppose f is such a function: n 1 2 3 4 5 : f(n) 2 8 6 1 5 : Construct 𝒃∈(𝟎,𝟏) that does not appear in the table. b=0. 𝒅 𝟏 𝒅 𝟐 𝒅 𝟑 …, 𝒘𝒉𝒆𝒓𝒆 𝒅 𝒊 ≠𝒅𝒊𝒈𝒊𝒕 𝒊 𝒐𝒇 𝒇 𝒊 . 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

4 Diagonalization The process of constructing a counterexample by
“contradicting the diagonal” is called DIAGONALIZATION 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

5 Sofya Raskhodnikova; based on slides by Nick Hopper
What if we try this argument on ℚ instead of ℝ? Proof: Suppose f is such a function: n 1 2 3 4 5 : f(n) 2 8 6 1 5 : Construct 𝒃∈(𝟎,𝟏) that does not appear in the table. b=0. 𝒅 𝟏 𝒅 𝟐 𝒅 𝟑 …, 𝒘𝒉𝒆𝒓𝒆 𝒅 𝒊 ≠𝒅𝒊𝒈𝒊𝒕 𝒊 𝒐𝒇 𝒇 𝒊 . 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

6 I-clicker question (frequency: AC)
What if we try Cantor’s diagonalization argument on ℚ instead of ℝ? It works. It fails because there are some rational numbers that cannot be represented in decimal point notation. It fails because the 𝑖-th number might have no digit in the 𝑖-th position after the decimal point. It fails because the constructed number is not rational. None of the above. {madam, dad, but, tub, book}

7 Sofya Raskhodnikova; based on slides by Nick Hopper
Let L be any set and P(L) be the power set of L Theorem: There is no bijection from L to P(L) Assume, for a contradiction, that there is bijection f : L  P(L) Proof: We construct a set S that cannot be the output, f(y), for any y L. Let S = { x  L | x  f(x) } Make less general If S = f(y) then y  S if and only if y  S 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

8 Sofya Raskhodnikova; based on slides by Nick Hopper
How is it diagonalization? x y1∈f(x)? y2∈f(x)? y3∈ f(x)? y4 ∈ f(x)? y1 Y N y2 y3 y4 Y Y N Y (yi ∈ S) = Y iff (yi ∈ f(yi)) = N 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

9 EXAMPLE {0,1} Let L = {0,1,2}. Then P(L) =
{Ø, {0}, {1}, {2}, {0,1}, {0,2}, {1,2}, {0,1,2}} Let f(0) = {1}, f(1) = Ø, f(2) = {0,2}. Then: x 0 ∈ f(x)? 1 ∈ f(x)? 2 ∈ f(x)? N Y 1 2 S = {0,1} L16.10

10 Sofya Raskhodnikova; based on slides by Nick Hopper
For all sets L, P(L) has more elements than L 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

11 Sofya Raskhodnikova; based on slides by Nick Hopper
Not all languages over {0,1} are decidable TM Deciders Languages over {0,1} Sets of strings of 0s and 1s Strings of 0s and 1s L P(L) 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

12 Sofya Raskhodnikova; based on slides by Nick Hopper
Not all languages over {0,1} are recognizable Turing Machines Languages over {0,1} Sets of strings of 0s and 1s Strings of 0s and 1s L P(L) 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

13 Sofya Raskhodnikova; based on slides by Nick Hopper
A specific undecidable language ATM = { 𝑴, 𝒘 ∣ M is a TM, w is a string, and M accepts w } 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

14 𝑯 𝑴,𝒘 = 𝐚𝐜𝐜𝐞𝐩𝐭 𝐢𝐟 𝑴 𝐚𝐜𝐜𝐞𝐩𝐭𝐬 𝒘 𝐫𝐞𝐣𝐞𝐜𝐭 𝐢𝐟 𝑴 𝐝𝐨𝐞𝐬 𝐧 ′ 𝐭 𝐚𝐜𝐜𝐞𝐩𝐭 𝒘
Theorem. ATM is undecidable. Proof: For contradiction, suppose a TM H decides ATM. 𝑯 𝑴,𝒘 = 𝐚𝐜𝐜𝐞𝐩𝐭 𝐢𝐟 𝑴 𝐚𝐜𝐜𝐞𝐩𝐭𝐬 𝒘 𝐫𝐞𝐣𝐞𝐜𝐭 𝐢𝐟 𝑴 𝐝𝐨𝐞𝐬 𝐧 ′ 𝐭 𝐚𝐜𝐜𝐞𝐩𝐭 𝒘 Idea: Use 𝑯 to check what TM M does on its own description (and do the opposite). D is a decider. What does it do on 𝐷 ? TM D = `` On input 𝑴 where M is a TM: Run 𝐻 on input <M, 𝑴 >. Accept if it rejects. O.w. reject.’’ 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

15 Sofya Raskhodnikova; based on slides by Nick Hopper
Is it diagonalization again? Does M accept 𝑴 ? TMs 〈𝑴 𝟏 〉 〈𝑴 𝟐 〉 〈𝑴 𝟑 〉 〈𝑴 𝟒 〉 𝑴 𝟏 Y N 𝑴 𝟐 𝑴 𝟑 𝑴 𝟒 Y Y N Y D accepts 𝑴 𝒊 iff entry (𝒊,𝒋) is N . 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

16 Sofya Raskhodnikova; based on slides by Nick Hopper
Is it diagonalization again? Does M accept 𝑴 ? TMs 〈𝑴 𝟏 〉 〈𝑴 𝟐 〉 〈𝑴 𝟑 〉 〈𝑴 𝟒 〉 〈𝑫〉 𝑴 𝟏 Y N 𝑴 𝟐 𝑴 𝟑 𝑴 𝟒 D Y Y N Y ? 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper

17 Sofya Raskhodnikova; based on slides by Nick Hopper
Classes of languages recognizable ATM decidable ATM CFL {0 𝑛 1 𝑛 0 𝑛 ∣𝑛≥0} {0 𝑛 1 𝑛 ∣𝑛≥0} regular 1* 2/23/2019 Sofya Raskhodnikova; based on slides by Nick Hopper


Download ppt "Intro to Theory of Computation"

Similar presentations


Ads by Google