1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli.

Slides:



Advertisements
Similar presentations
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Advertisements

Introduction to Computability Theory
Lecture 3 Universal TM. Code of a DTM Consider a one-tape DTM M = (Q, Σ, Γ, δ, s). It can be encoded as follows: First, encode each state, each direction,
CS 461 – Nov. 9 Chomsky hierarchy of language classes –Review –Let’s find a language outside the TM world! –Hints: languages and TM are countable, but.
The Recursion Theorem Sipser – pages Self replication Living things are machines Living things can self-reproduce Machines cannot self reproduce.
1 COMP 382: Reasoning about algorithms Unit 9: Undecidability [Slides adapted from Amos Israeli’s]
Week 7 - Wednesday.  What did we talk about last time?  Set proofs and disproofs  Russell’s paradox.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Variants.
Computability and Complexity 4-1 Existence of Undecidable Problems Computability and Complexity Andrei Bulatov.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
1 Introduction to Computability Theory Lecture14: Recap Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture15: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines Prof. Amos Israeli.
Introduction to Computability Theory
The Halting Problem Sipser 4.2 (pages ). CS 311 Mount Holyoke College 2 Taking stock All languages Turing-recognizable Turing-decidable Context-free.
The Halting Problem Sipser 4.2 (pages ).
1 Introduction to Computability Theory Lecture4: Non Regular Languages Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture13: Mapping Reductions Prof. Amos Israeli.
Prof. Busch - LSU1 Decidable Languages. Prof. Busch - LSU2 Recall that: A language is Turing-Acceptable if there is a Turing machine that accepts Also.
Courtesy Costas Busch - RPI1 A Universal Turing Machine.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata are like Turing Machines with a restriction: The working space of the tape is the space of the.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
1 Uncountable Sets continued Theorem: Let be an infinite countable set. The powerset of is uncountable.
CHAPTER 4 Decidability Contents Decidable Languages
Fall 2005Costas Busch - RPI1 Recursively Enumerable and Recursive Languages.
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
CS 310 – Fall 2006 Pacific University CS310 The Halting Problem Section 4.2 November 15, 2006.
Lecture 27UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 27.
CS21 Decidability and Tractability
The Halting Problem – Undecidable Languages Lecture 31 Section 4.2 Wed, Oct 31, 2007.
1 Undecidability Reading: Chapter 8 & 9. 2 Decidability vs. Undecidability There are two types of TMs (based on halting): (Recursive) TMs that always.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 15-1 Mälardalen University 2012.
A Universal Turing Machine
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Computability Universal Turing Machine. Countability. Halting Problem. Homework: Show that the integers have the same cardinality (size) as the natural.
CS 461 – Nov. 7 Decidability concepts –Countable = can number the elements  –Uncountable = numbering scheme impossible  –A TM undecidable –Language classes.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 4 Decidability Some slides are in courtesy.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Foundations of (Theoretical) Computer Science Chapter 4 Lecture Notes (Section 4.2: The “Halting” Problem) David Martin With modifications.
CSCI 3130: Formal languages and automata theory Andrej Bogdanov The Chinese University of Hong Kong Decidable.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Undecidable.
1 A Universal Turing Machine. 2 Turing Machines are “hardwired” they execute only one program A limitation of Turing Machines: Real Computers are re-programmable.
The Acceptance Problem for TMs
A Universal Turing Machine
CS 461 – Nov. 2 Sets Prepare for ATM finite vs. infinite Infinite sets
This statement is false.
CSCI 2670 Introduction to Theory of Computing
Lecture12 The Halting Problem
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
Andreas Klappenecker [based on slides by Prof. Welch]
CSCE 411 Design and Analysis of Algorithms
Decidable Languages Costas Busch - LSU.
Formal Languages, Automata and Models of Computation
Recall last lecture and Nondeterministic TMs
CS21 Decidability and Tractability
Instructor: Aaron Roth
CSCI 2670 Introduction to Theory of Computing
Cpt S 317: Spring 2009 Reading: Chapter 8 & 9
Instructor: Aaron Roth
Turing Machines Everything is an Integer
Presentation transcript:

1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli

In this lecture we present an undecidable language. The language that we prove to be undecidable is a very natural language namely the language consisting of pairs of the form where M is a TM accepting string w : The Halting Problem 2

Since this language requires to decide whether the computation of TM M halts on input w, it is often called The Halting Problem. Theorem The halting problem is Turing Recognizable. The Halting Problem 3

Consider a TM U that gets a pair as input and simulates the run of M on input w. If M accepts or rejects so does U. Otherwise, U loops. Note: U recognizes A TM,since it accepts any pair, that is: any pair in which M accepts input w. Proof 4

On the previous lecture, we detailed the simulation of a DFA by a TM. Simulating one TM by another, using the encoding of the first TM is a very similar process. In the next slide we review the main characteristics of TM N simulating TM M, using M ’s encoding. Simulating an Input TM 5

TM N works as follows: 1.Mark M ’s initial state and w ’s initial symbol as the “current state” and “current head location”. 2.Look for M ’s next transition on the description of its transition function. 3.Execute M ’s transition. Simulating an Input TM 6

4.Move M ’s “current state” and “current head location” to their new places. 5.If M ’s new state is a deciding state decide according to the state, otherwise – repeat stages 2-5. Simulating an Input TM 7

Our goal in this lecture is to prove that A TM is not decidable. The proof uses a common mathematical technique known as Diagonalization. Diagonalization was first used by Cantor when he found a way to distinguish between several types of infinite sets. Diagonalization 8

Cantor dealt with questions like: How many natural numbers are there? Infinity! How many real numbers are there? Infinity! Does the amount of natural numbers equal to the amount of real numbers? How is the size of infinite sets measured? Cardinality 9

Cantor’s answer to these question was the notion of Cardinality. The cardinality of a set is a property marking its size. Two sets has the same cardinality if there is a correspondence between their elements Cardinality 10

At this point of the lecture, think about a correspondence between sets A and B as 2 lists: A list of A ’s elements and in parallel a list of B ’s elements. These 2 lists are juxtaposed so that each element of A corresponds to a unique element of B. Intuitive Notion of Correspondence 11

Clearly, the cardinality of A is equal to the cardinality of B. How about the cardinality of infinite sets? Example 12

How about the cardinality of infinite sets? Is the cardinality of natural numbers larger than the cardinality of even natural numbers? Intuitively, the cardinality of any set should be larger that the cardinality of any of its proper subsets. Alas, our intuition of sets is driven by our daily experience with finite sets. Example 13

So let us try to create a correspondence between the natural numbers the even natural numbers? Indeed defines the wanted correspondence between the 2 sets. Example 14

So the cardinality of N is equal to the cardinality of EN. Example 15

This last example suggests the notion of Countable Sets: A set A is countable if it is either finite or its cardinality is equal to the cardinality of N. A cool way of looking at countable sets is: “A set is countable if a list of its elements can be created”. Countable Sets 16

“A set is countable if a list of its elements can be created”. Note: This list does not have to be finite, but for each natural number i, one should be able to specify the i -th element on the list. For example, for the set EN the i -th element on the list is 2 i. Countable Sets 17

We just proved that EN, the set of even natural numbers is countable. What about the set of rational numbers? Is the set Q of rational numbers countable? Can its elements be listed? Countable Sets 18

Theorem The set of rational numbers is countable. Proof In order to prove this theorem we have to show how a complete list of the rational numbers can be formed. The set of Rationals is Countable 19

Recall that each natural number is defined by a pair of natural numbers. One way to look at the Rationals is by listing them in an infinite Rectangle. The set of Rationals is Countable 20 ……… ………………………………………………...

How can we form a list including all these numbers? If we first list The first row – We will never reach the second. The set of Rationals is Countable 21 ……… ………………………………………………...

The set of Rationals is Countable 22 One way to do it is to start from the upper left corner, and continue in this fashion

Note that some rational numbers appear more than once. For example: all numbers on the main diagonal are equal to 1, so this list is not final. In order to compute the actual place of a given rational, we need to erase all duplicates, but this is a technicality… The set of Rationals is Countable 23

Can you think of any infinite set whose elements cannot be listed in one after the other? Well, there are many: Theorem The set of infinite binary sequences is not countable. So perhaps all sets are countable 24

Assume that there exists a list of all binary sequences. Such a list may look like this: Uncountable Sets 25 ……… ……………………

But can you be sure that all sequences are in this list? In fact, There exist many sequences that are not on the list: Uncountable Sets 26 ……… ……………………

Consider for example S= 0,0,1,1,0,…. The sequence S is formed so that 1 st elt. Of 1 st seq. 2 nd elt. Of 2 nd seq. 3 rd elt. Of 3 rd seq. And so on … Uncountable Sets 27 ……… ……………………

In general: The i -th element of S, differs from the i -th element of the i -th sequence in the list. Note: the i -th element of the i -th sequence in the list is always the element on the diagonal. Can the sequence S appear on the list? Uncountable Sets 28

In this case, Uncountable Sets 29 Assume there exists an index j such that But by definition: Contradiction!!

For any sequence on the list,, the sequence differs from by its element on the diagonal, that is:, so cannot be on the list. For obvious reasons, this technique is called Diagonalization. Uncountable Sets 30

We just used diagonalization to prove that the set of infinite binary sequences is uncountable. Can a a similar proof for the set of real numbers? Uncountable Sets 31

Corollary Some Languages are not Turing-recognizable. Proof For any (finite) alphabet,, the set of (finite) strings, is countable. A list of all elements in is obtained by first listing strings of length 1, then 2, …, then n … Turing Unrecognizable Languages 32

The set of all TM-s is also countable because every TM,, can be described by its encoding, which is a string over. So the set of TM-s corresponds to a subset of. Note: Here we use the (unproven but correct) fact that the cardinality of a set is always not greater then the cardinality of any of its supersets. Proof (cont.) 33

Since each TM recognizes exactly a single language, a list of all TM-s can be used as a list of all recognizable languages. If we show that the set of languages over is uncountable, we can deduce that at least a single language is not on the list, that is: it is not recognized by any TM. Proof (cont.) 34

We have already seen that the set of infinite binary sequences is uncountable. If we form a correspondence between the set of languages and the set of infinite binary sequences we will show that the set of languages is uncountable. Proof (cont.) 35

Consider a fixed list l of all words. The correspondence is formed as follows: For every infinite binary sequence S, corresponds the language: QED Proof (cont.) 36

So far we proved the existence of a language which is not Turing recognizable. Now we continue our quest to prove: Theorem The language is undecidable. The Language ___ Is Undecidable 37

Before we start the proof let us consider two ancient questions: Question1: Can god create a boulder so heavy that god cannot lift? The Language ___ Is Undecidable 38

Question2: In the small town of L.J. there is a single barber: Over the barber’s chair there is a note saying: “ I will shave you on one condition: Thaw shall never shave thyself!!!” Who Shaves the Barber? The Language ___ Is Undecidable 39

Assume, by way of contradiction, that is decidable and let H be a TM deciding. That is Define now another TM new D that uses H as a subroutine as follows: Proof 40

Define now another TM new D that uses H as a subroutine as follows: D= “On input where N is a TM: 1. Run H on input. 2. Output the opposite of H ’s output namely: If H accepts reject, otherwise accept.“ Proof 41

Note: What we do here is taking advantage of the two facts: Fact1: TM M should be able to compute with any string as input. Fact2: The encoding of M,, is a string. Proof 42

Running a machine on its encoding is analogous to using a compiler for the computer language Pascal to, that is written in Pascal, to compile itself. As we recall from the two questions self- reference is sometimes means trouble (god forbid…) Proof 43

What we got now is: Consider now the result of running D with input. What we get is: Proof 44

So if D accepts, it rejects wand if it rejects it accepts. Double Trouble. And it all caused by our assumption that TM H exists!!! Proof 45

1.Define. 2.Assume that id decidable and let H be a TM deciding it. 3.Use H to build TM D that gets a TM encoding and behaves exactly opposite to H ’s behavior, namely: Proof Review 46

4.Run TM D on its encoding and conclude: Contradiction. Proof Review 47

The following table describes the behavior of each machine on its encoding: So Where is the Diagonalization? 48

This table describes the behavior of TM H. Note: TM H rejects where loops. So Where is the Diagonalization? 49

Now TM D is added to the table… Proof Review 50