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.

Slides:



Advertisements
Similar presentations
Fall 2006Costas Busch - RPI1 A Universal Turing Machine.
Advertisements

Fall 2006Costas Busch - RPI1 Decidable Languages.
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,
1 COMP 382: Reasoning about algorithms Unit 9: Undecidability [Slides adapted from Amos Israeli’s]
Computability and Complexity 4-1 Existence of Undecidable Problems Computability and Complexity Andrei Bulatov.
Introduction to Computability Theory
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.
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.
Fall 2004COMP 3351 Recursively Enumerable and Recursive Languages.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Recursively Enumerable and Recursive Languages
1 Uncountable Sets continued Theorem: Let be an infinite countable set. The powerset of is uncountable.
CHAPTER 4 Decidability Contents Decidable Languages
Fall 2004COMP 3351 Reducibility. Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem.
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.
1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli.
1 Reducibility. 2 Problem is reduced to problem If we can solve problem then we can solve problem.
1 Turing Machines. 2 A Turing Machine Tape Read-Write head Control Unit.
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.
Copyright © Cengage Learning. All rights reserved. CHAPTER 7 FUNCTIONS.
Basic Structures: Sets, Functions, Sequences, and Sums CSC-2259 Discrete Structures Konstantin Busch - LSU1.
A Universal Turing Machine
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.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
CS 461 – Nov. 7 Decidability concepts –Countable = can number the elements  –Uncountable = numbering scheme impossible  –A TM undecidable –Language classes.
Recursively Enumerable and Recursive Languages
1 IDT Open Seminar ALAN TURING AND HIS LEGACY 100 Years Turing celebration Gordana Dodig Crnkovic, Computer Science and Network Department Mälardalen University.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 4 Decidability Some slides are in courtesy.
1 Introduction to Turing Machines
Turing Machines Sections 17.6 – The Universal Turing Machine Problem: All our machines so far are hardwired. ENIAC
1 Recursively Enumerable and Recursive Languages.
Recursively Enumerable and Recursive Languages. Definition: A language is recursively enumerable if some Turing machine accepts it.
Fall 2006Costas Busch - RPI1 RE languages and Enumerators.
The Acceptance Problem for TMs
A Universal Turing Machine
CS 461 – Nov. 2 Sets Prepare for ATM finite vs. infinite Infinite sets
Recursively Enumerable and Recursive Languages
Standard Representations of Regular Languages
CSE322 PUMPING LEMMA FOR REGULAR SETS AND ITS APPLICATIONS
This statement is false.
Busch Complexity Lectures: Reductions
Lecture12 The Halting Problem
CSCI 2670 Introduction to Theory of Computing
Counting Sets.
Turing Machines Acceptors; Enumerators
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
Turing acceptable languages and Enumerators
Decidable Languages Costas Busch - LSU.
Non Deterministic Automata
Decidability and Undecidability
A Universal Turing Machine
Turing acceptable languages and Enumerators
Undecidable problems:
MA/CSSE 474 Theory of Computation
CS21 Decidability and Tractability
Proposed in Turing’s 1936 paper
Formal Languages, Automata and Models of Computation
Recall last lecture and Nondeterministic TMs
CS21 Decidability and Tractability
Cardinality Definition: The cardinality of a set A is equal to the cardinality of a set B, denoted |A| = |B|, if and only if there is a one-to-one correspondence.
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
MA/CSSE 474 Theory of Computation
Presentation transcript:

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

3 Solution: Universal Turing Machine Reprogrammable machine Simulates any other Turing Machine Attributes:

4 Universal Turing Machine simulates any other Turing Machine Input of Universal Turing Machine: Description of transitions of Initial tape contents of

5 Universal Turing Machine Description of Tape Contents of State of Three tapes Tape 2 Tape 3 Tape 1

6 We describe Turing machine as a string of symbols: We encode as a string of symbols Description of Tape 1

7 Alphabet Encoding Symbols: Encoding:

8 State Encoding States: Encoding: Head Move Encoding Move: Encoding:

9 Transition Encoding Transition: Encoding: separator

10 Machine Encoding Transitions: Encoding: separator

11 Tape 1 contents of Universal Turing Machine: encoding of the simulated machine as a binary string of 0’s and 1’s

12 A Turing Machine is described with a binary string of 0’s and 1’s The set of Turing machines forms a language: each string of the language is the binary encoding of a Turing Machine Therefore:

13 Language of Turing Machines L = { , , , …… } (Turing Machine 1) (Turing Machine 2) ……

14 Countable Sets

15 Infinite sets are either: Countable or Uncountable

16 Countable set: There is a one to one correspondence between elements of the set and Natural numbers Any finite set Any Countably infinite set: or

17 Example: Even integers: The set of even integers is countable Positive integers: Correspondence: corresponds to

18 Example:The set of rational numbers is countable Rational numbers:

19 Naïve Proof Rational numbers: Positive integers: Correspondence: Doesn’t work: we will never count numbers with nominator 2:

20 Better Approach

21

22

23

24

25

26 Rational Numbers: Correspondence: Positive Integers:

27 We proved: the set of rational numbers is countable by describing an enumeration procedure

28 Definition An enumeration procedure for is a Turing Machine that generates all strings of one by one Let be a set of strings and Each string is generated in finite time

29 Enumeration Machine for Finite time: strings output (on tape)

30 If for a set there is an enumeration procedure, then the set is countable Observation:

31 Example: The set of all strings is countable We will describe an enumeration procedure Proof:

32 Naive procedure: Produce the strings in lexicographic order: Doesn’t work: strings starting with will never be produced

33 Better procedure: 1. Produce all strings of length 1 2. Produce all strings of length 2 3. Produce all strings of length 3 4. Produce all strings of length Proper Order

34 Produce strings in Proper Order: length 2 length 3 length 1

35 Theorem: The set of all Turing Machines is countable Proof: Find an enumeration procedure for the set of Turing Machine strings Any Turing Machine can be encoded with a binary string of 0’s and 1’s

36 1. Generate the next binary string of 0’s and 1’s in proper order 2. Check if the string describes a Turing Machine YES: if YES: print string on output tape NO: if NO: ignore string Enumeration Procedure: Repeat

37 Uncountable Sets

38 A set is uncountable if it is not countable Definition:

39 Theorem: Let be an infinite countable set The powerset of is uncountable

40 Proof: Since is countable, we can write Elements of

41 Elements of the powerset have the form: ……

42 We encode each element of the power set with a binary string of 0’s and 1’s Powerset element Encoding

43 Let’s assume (for contradiction) that the powerset is countable. Then: we can enumerate the elements of the powerset

44 Powerset element Encoding

45 Take the powerset element whose bits are the complements in the diagonal

46 New element: (birary complement of diagonal)

47 The new element must be some of the powerset However, that’s impossible: the i-th bit of must be the complement of itself from definition of Contradiction!!!

48 Since we have a contradiction: The powerset of is uncountable

49 An Application: Languages Example Alphabet : The set of all Strings: infinite and countable

50 Example Alphabet : The set of all Strings: infinite and countable A language is a subset of :

51 Example Alphabet : The set of all Strings: infinite and countable The powerset of contains all languages: uncountable

52 Languages: uncountable Turing machines: countable There are more languages than Turing Machines

53 There are some languages not accepted by Turing Machines (These languages cannot be described by algorithms) Conclusion:

54 Languages Accepted by Turing Machines Languages not accepted by Turing Machines