Theory of Computation
|
|
- Hubert Freeman
- 5 years ago
- Views:
Transcription
1 Theory of Computation Lecture #6 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 39
2 Lecture 6: Overview Prove the equivalence of enumerators and TMs. Dovetailing Definition of Algorithm The Church-Turing Thesis. Encodings. Hilbert s 10th problem. Matijasevič s Theorem. Sarmad Abbasi (Virtual University) Theory of Computation 2 / 39
3 Enumerators Enumerator s are another model of computation. They do not take any input and only produce output. Let us define them formally: An enumerator E = (Q, Σ, Γ, q 0, δ). 1 Q is the set of states. 2 Σ is the output alphabet and #, Σ. 3 Γ is the work alphabet and Γ. 4 q 0 is the start state. 5 δ is the transition function. Well what is the domain and range of δ. δ : Q Γ Q Γ{L, R} (Σ {ɛ, #}) Sarmad Abbasi (Virtual University) Theory of Computation 3 / 39
4 Enumerators How does the a configuration of E look like: αqβ, w 1 #w 2 # w k 1 #x where α, β (Γ ) and x (Σ Σ #) Sarmad Abbasi (Virtual University) Theory of Computation 4 / 39
5 Enumerators Write the definition of the yields relation for enumerators. We say that E outputs a string w if it reaches a configuration αqβ, w 1 #w 2 w k 1 #w# Sarmad Abbasi (Virtual University) Theory of Computation 5 / 39
6 Enumerators L(E) the language enumerated by E is the set of all strings that it outputs. Sarmad Abbasi (Virtual University) Theory of Computation 6 / 39
7 Enumerators Last time we outlined a proof of the following theorem. A language L is Turing-recognizable if and only if some enumerator enumerates it. Sarmad Abbasi (Virtual University) Theory of Computation 7 / 39
8 Enumerators One side was easy: Let L be a language enumerated by an enumerator E. The L is Turing recognizable. To prove this we are given that an enumerator E enumerates L. We have to show that some Turing machine M accepts L. The informal description of the Turing machine is as follows: 1 Input x 2 Run the Enumerator E each time it outputs a string w check if w = x. If w = x go to accept state. Otherwise, continue. Sarmad Abbasi (Virtual University) Theory of Computation 8 / 39
9 Enumerators The other side was a bit tricky. But let us look at the details. If L is Turing recognizable then there is an enumerator E that enumerates L. Since L is Turing recognizable therefore some TM M accepts L. We can use M as a subroutine in our enumerator E. Here is our first attempt. Recall that we know how to generate strings in lexicographical order as ɛ, 0, 1, 00, 01, 10, 11,..., 1 For i = 1,..., 2 Simulate the machine M on x i 3 If M accepts x i output x i. Why is this wrong? Sarmad Abbasi (Virtual University) Theory of Computation 9 / 39
10 Enumerators Lets say 1 M accepts ɛ. 2 M rejects 0. 3 M accepts 1. 4 M loops forever on M accepts 01. Then the enumerator will never output 01. Whereas, 01 L. So, we have to get around this problem. Sarmad Abbasi (Virtual University) Theory of Computation 10 / 39
11 Dovetailing The solution is given by dovetailing: 1 For i = 1, 2, 3,..., 2 For j = 1, 2,..., i 3 Simulate M on x j for i steps only. 4 If M accepts x j output x j. Sarmad Abbasi (Virtual University) Theory of Computation 11 / 39
12 Dovetailing Suppose x t L. Then M accepts x t and it must accept x t is some finite number of steps. Lets say this number is k. Then we claim that when i = max(k, t) the string x t will be outputted. That is because M is simulated for on x 1,..., x i for i steps. Since, i t hence x t {x 1,..., x i } and since i k hence M will accept x t in k steps and x t will be outputted. Sarmad Abbasi (Virtual University) Theory of Computation 12 / 39
13 Dovetailing Hence all strings that are in L are enumerated by this enumerators. To see if x L then E will not enumerate it, we simply observe that E only enumerates strings that are accepted by M. Sarmad Abbasi (Virtual University) Theory of Computation 13 / 39
14 Dovetailing A minor point to notice is that E enumerates a given string many many times. If this bothers you, you can modify E so that it enumerates each string only once. Now, E keeps a list of all the strings it has enumerated and checks the list before enumerating every string if it has been enumerated before. Show that if L is Turing recognizable then there is an enumerator E that enumerates L. Furthermore, each string of L is enumerated by E exactly once. Sarmad Abbasi (Virtual University) Theory of Computation 14 / 39
15 Definition of an algorithm Intuitive notion of algorithms equals Turing machine algorithms Another way to put it: An algorithm is a Turing machine that halts on all inputs. An algorithm is a decider. Sarmad Abbasi (Virtual University) Theory of Computation 15 / 39
16 Church-Turing Thesis The Church-Turing thesis states that the intuitive notion of algorithms is equivalent to the mathematical concept of a Turing machine. It gives the formal definition for answering questions like Hilbert s tenth problem. Sarmad Abbasi (Virtual University) Theory of Computation 16 / 39
17 Encodings Note that we always take inputs to be strings over some alphabet Σ. Suppose Σ = {a, b, c, d} we can map 1 a to 00; that is e(a) = b to 01; that is e(a) = c to 10; that is e(a) = d to 01; that is e(a) = 11. This way we can encode any alphabet to {0, 1}. Note that this maps Σ to {0, 1} in a natural way. e(w 1 w 2... w n ) = e(w 1 )e(w 2 ) e(w n ). Sarmad Abbasi (Virtual University) Theory of Computation 17 / 39
18 Encodings Suppose we can define L Σ L e = {e(w) : w L}. Designing a TM for M or designing a TM for L e is equally difficult or easy. Sarmad Abbasi (Virtual University) Theory of Computation 18 / 39
19 Encodings We want to solve problems where the input is an interesting object such as a graph, or a matrix. However, our definitions only allow us inputs which are strings. But, this is usually not a restriction. Let us look at a few examples: L = {(i, j) : i 2 = j} (1, 1), (2, 4), (3, 9) are in L and (1, 3), (2, 5), (3, 1) are not in L. L is a subset of N N. Sarmad Abbasi (Virtual University) Theory of Computation 19 / 39
20 Encodings What we can do is to encode the pairs into strings. Let us say we reserve 11 to represent a 1, 00 to represent a 0 and 01 will be the separator. Then we can encode (2, 4) to We represent the encoding of a pair (i, j) by < (i, j) >. Then we can solve the following problem This is a language over {0, 1}. L = {< (i, j) >: i 2 = j} Sarmad Abbasi (Virtual University) Theory of Computation 20 / 39
21 Encodings Let us look at another example: D = {A : A is a n n with integer entires and det(a) = 0} Sarmad Abbasi (Virtual University) Theory of Computation 21 / 39
22 Encodings How can we encode this problem so that it becomes a language over {0, 1}. Lets say we have the matrix ( ) Sarmad Abbasi (Virtual University) Theory of Computation 22 / 39
23 Encodings First we can write it as linearly as 2, 5, 3, 6. Now, we can write all the numbers in binary where 00 represents a 0, 11 represents a 1 and 01 represents the separator,. So ( ) 2 5 = Sarmad Abbasi (Virtual University) Theory of Computation 23 / 39
24 Encodings Now, we can define the following language D = { A : A is a n n with integer entires and det(a) = 0} Sarmad Abbasi (Virtual University) Theory of Computation 24 / 39
25 Encodings Similarly we can encode graphs into strings: Let us do an example: Consider the graph shown in the following figure: Sarmad Abbasi (Virtual University) Theory of Computation 25 / 39
26 Encodings This graph can be written as a vertex list followed by an edge list as follows: represents ) represent ( represents, represents represents 1. (1, 2, 3, 4)((1, 2), (2, 3), (3, 1), (1, 4)). and now it is easy to encode this whole graph into a 0/1 string. The encoding starts as which is very long but not conceptually difficult. Sarmad Abbasi (Virtual University) Theory of Computation 26 / 39
27 Encodings Thus suppose we have We can instead look at L = {G : G is connected }. L = { G : G is connected }. This should not be surprising for you. As computer scientist you know that everything inside a computer is represented by 0 s and 1 s. Sarmad Abbasi (Virtual University) Theory of Computation 27 / 39
28 Hilbert s Tenth Problem Recall from the first lecture: Hilbert s tenth problem was about diaphantine equations. Let us cast it in modern language. Devise an algorithm that would decide if a (multi-variate) polynomial has integral roots Here is an example of a multivariate polynomial: 6x 3 yz 2 + 3xy 2 x Sarmad Abbasi (Virtual University) Theory of Computation 28 / 39
29 Hilbert s Tenth Problem Hilbert asked to study the language H = { p : p is a polynomial with integral roots}. Once again mean encodings. Is there a Turing machine M that halts on all inputs and L(M) = H Sarmad Abbasi (Virtual University) Theory of Computation 29 / 39
30 Matijasevič Theorem Theorem (Matijasevič 1970) H is not decidable. There is no Turing machine M that halts on all inputs with L(M) = H. Sarmad Abbasi (Virtual University) Theory of Computation 30 / 39
31 Matijasevič Theorem Let look at a simpler language: H 1 = { p : p is a polynomial in x and has an integral root} Lets see that H 1 is Turing decidable: Sarmad Abbasi (Virtual University) Theory of Computation 31 / 39
32 Matijasevič Theorem Here is the description of a TM 1 On input p. 2 for i = 0, 1, 2,..., 3 evaluate the polynomial on x = i and x = i. If it evaluates to 0 accept. Sarmad Abbasi (Virtual University) Theory of Computation 32 / 39
33 Matijasevič Theorem Note the the above machine is not a decider. It is only a recognizer. Show that H 1 is also Turing decidable. Sarmad Abbasi (Virtual University) Theory of Computation 33 / 39
34 How to describe a Turing machine There are three ways to do it. 1 formal description. 2 implementation description. 3 high-level description. Sarmad Abbasi (Virtual University) Theory of Computation 34 / 39
35 How to describe a Turing machine In a formal description you have to specify the whole TM using the 7-things needed. That is you have to specify (Q, Σ, Γ, q 0, q a, q r, δ). We have seen examples of this in the last two lectures. Sarmad Abbasi (Virtual University) Theory of Computation 35 / 39
36 How to describe a Turing machine Implementation description: In this you refer to the tapes of the Turing machine and explain how it moves and performs its task. Let look at an example A TM can be described as follows: L = {w#w : w {0, 1} }. 1 Scan the input and make sure it is of the form w 1 #w 2 where w 1, w 2 {0, 1}. Or in other words make sure there is only one # in the input. 2 Zigzag over the input matching symbols of w 1 and w 2. 3 If all symbols match then accept. If any symbol fails to match reject. Sarmad Abbasi (Virtual University) Theory of Computation 36 / 39
37 How to describe a Turing machine In a high level description we do not refer to the tapes. We simply describe the Turing machine as an algorithm. We simply give psuedo-code for the algorithm. Suppose we wish to show that L = { j : i 2 = j for some i}. A description of TM can be given as follows: 1 On input j. 2 For i = 1,..., j 3 check if i 2 = j if it is accept. 4 Reject Note that in this case, we are assuming many things. Sarmad Abbasi (Virtual University) Theory of Computation 37 / 39
38 How to describe a Turing machine We are assuming that we can build a machine (subroutine) that can multiply numbers, check for equality etc. Sarmad Abbasi (Virtual University) Theory of Computation 38 / 39
39 How to describe a Turing machine When you give a high-level description you must be convinced that you can convert it into a formal one in principle. Although it will take a very long time to do so. Sarmad Abbasi (Virtual University) Theory of Computation 39 / 39
Theory of Computation (IX) Yijia Chen Fudan University
Theory of Computation (IX) Yijia Chen Fudan University Review The Definition of Algorithm Polynomials and their roots A polynomial is a sum of terms, where each term is a product of certain variables and
More information1 Showing Recognizability
CSCC63 Worksheet Recognizability and Decidability 1 1 Showing Recognizability 1.1 An Example - take 1 Let Σ be an alphabet. L = { M M is a T M and L(M) }, i.e., that M accepts some string from Σ. Prove
More informationHarvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis
Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harry Lewis October 22, 2013 Reading: Sipser, 3.2, 3.3. The Basic Turing Machine The Basic Turing Machine a a b a
More informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 8 January 24, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis So far several models of computation finite automata
More informationTheory of Computation
Theory of Computation Dr. Sarmad Abbasi Dr. Sarmad Abbasi () Theory of Computation 1 / 33 Lecture 20: Overview Incompressible strings Minimal Length Descriptions Descriptive Complexity Dr. Sarmad Abbasi
More informationTheory of Computation
Theory of Computation Lecture #2 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 1 Lecture 2: Overview Recall some basic definitions from Automata Theory.
More informationTuring Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q0, qaccept, qreject), where Q, Σ, Γ are all finite
The Church-Turing Thesis CS60001: Foundations of Computing Science Professor, Dept. of Computer Sc. & Engg., Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q 0, q accept, q reject ), where
More informationCSCE 551 Final Exam, Spring 2004 Answer Key
CSCE 551 Final Exam, Spring 2004 Answer Key 1. (10 points) Using any method you like (including intuition), give the unique minimal DFA equivalent to the following NFA: 0 1 2 0 5 1 3 4 If your answer is
More informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Church-Turing Thesis The definition of the algorithm came in the 1936 papers of Alonzo Church h and Alan
More informationComputability Theory. CS215, Lecture 6,
Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David
More informationFoundations of
91.304 Foundations of (Theoretical) Computer Science Chapter 3 Lecture Notes (Section 3.3: Definition of Algorithm) David Martin dm@cs.uml.edu With modifications by Prof. Karen Daniels, Fall 2012 This
More informationCS151 Complexity Theory. Lecture 1 April 3, 2017
CS151 Complexity Theory Lecture 1 April 3, 2017 Complexity Theory Classify problems according to the computational resources required running time storage space parallelism randomness rounds of interaction,
More informationThe Church-Turing Thesis
The Church-Turing Thesis Huan Long Shanghai Jiao Tong University Acknowledgements Part of the slides comes from a similar course in Fudan University given by Prof. Yijia Chen. http://basics.sjtu.edu.cn/
More informationCSE 2001: Introduction to Theory of Computation Fall Suprakash Datta
CSE 2001: Introduction to Theory of Computation Fall 2012 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cs.yorku.ca/course/2001 11/13/2012 CSE
More informationLecture Notes: The Halting Problem; Reductions
Lecture Notes: The Halting Problem; Reductions COMS W3261 Columbia University 20 Mar 2012 1 Review Key point. Turing machines can be encoded as strings, and other Turing machines can read those strings
More informationTheory of Computation
Theory of Computation Lecture #10 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 43 Lecture 10: Overview Linear Bounded Automata Acceptance Problem for LBAs
More informationDecidability and Undecidability
Decidability and Undecidability Major Ideas from Last Time Every TM can be converted into a string representation of itself. The encoding of M is denoted M. The universal Turing machine U TM accepts an
More informationTheory of Computation
Theory of Computation Lecture #10 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 35 Lecture 10: Overview Undecidability of the Halting Problem Russell s Paradox
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM)? Proposed by Alan Turing in 936 finite-state control + infinitely long tape A
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages
More informationTURING MAHINES
15-453 TURING MAHINES TURING MACHINE FINITE STATE q 10 CONTROL AI N P U T INFINITE TAPE read write move 0 0, R, R q accept, R q reject 0 0, R 0 0, R, L read write move 0 0, R, R q accept, R 0 0, R 0 0,
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Fall 2016 http://cseweb.ucsd.edu/classes/fa16/cse105-abc/ Today's learning goals Sipser Ch 3 Trace the computation of a Turing machine using its transition function and configurations.
More informationTuring Machines. Lecture 8
Turing Machines Lecture 8 1 Course Trajectory We will see algorithms, what can be done. But what cannot be done? 2 Computation Problem: To compute a function F that maps each input (a string) to an output
More informationCSCC63 Worksheet Turing Machines
1 An Example CSCC63 Worksheet Turing Machines Goal. Design a turing machine, M that accepts only strings of the form {w#w w {0, 1} }. Idea. Describe in words how the machine would work. Read first symbol
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM) Proposed by Alan Turing in 936 finite-state control + infinitely long tape A stronger
More informationTuring Machines, diagonalization, the halting problem, reducibility
Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have
More informationUNRESTRICTED GRAMMARS
136 UNRESTRICTED GRAMMARS Context-free grammar allows to substitute only variables with strings In an unrestricted grammar (or a rewriting system) one may substitute any non-empty string (containing variables
More informationFurther discussion of Turing machines
Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turing-recognizable languages that were not mentioned in previous lectures. In particular, we will
More informationTuring Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)
Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) 1 Deterministic Turing Machine (DTM).. B B 0 1 1 0 0 B B.. Finite Control Two-way, infinite tape, broken into
More informationUndecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK
COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines
More informationCS 301. Lecture 17 Church Turing thesis. Stephen Checkoway. March 19, 2018
CS 301 Lecture 17 Church Turing thesis Stephen Checkoway March 19, 2018 1 / 17 An abridged modern history of formalizing algorithms An algorithm is a finite, unambiguous sequence of steps for solving a
More informationDecidability: Church-Turing Thesis
Decidability: Church-Turing Thesis While there are a countably infinite number of languages that are described by TMs over some alphabet Σ, there are an uncountably infinite number that are not Are there
More informationMost General computer?
Turing Machines Most General computer? DFAs are simple model of computation. Accept only the regular languages. Is there a kind of computer that can accept any language, or compute any function? Recall
More informationMore Turing Machines. CS154 Chris Pollett Mar 15, 2006.
More Turing Machines CS154 Chris Pollett Mar 15, 2006. Outline Multitape Turing Machines Nondeterministic Turing Machines Enumerators Introduction There have been many different proposals for what it means
More informationCSCI3390-Assignment 2 Solutions
CSCI3390-Assignment 2 Solutions due February 3, 2016 1 TMs for Deciding Languages Write the specification of a Turing machine recognizing one of the following three languages. Do one of these problems.
More informationCS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018
CS 301 Lecture 18 Decidable languages Stephen Checkoway April 2, 2018 1 / 26 Decidable language Recall, a language A is decidable if there is some TM M that 1 recognizes A (i.e., L(M) = A), and 2 halts
More informationCSCI3390-Lecture 6: An Undecidable Problem
CSCI3390-Lecture 6: An Undecidable Problem September 21, 2018 1 Summary The language L T M recognized by the universal Turing machine is not decidable. Thus there is no algorithm that determines, yes or
More informationTheory of Computation
Theory of Computation Dr. Sarmad Abbasi Dr. Sarmad Abbasi () Theory of Computation 1 / 38 Lecture 21: Overview Big-Oh notation. Little-o notation. Time Complexity Classes Non-deterministic TMs The Class
More informationCSE 2001: Introduction to Theory of Computation Fall Suprakash Datta
CSE 2001: Introduction to Theory of Computation Fall 2013 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/2001 11/7/2013 CSE
More informationDecision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012
Decision Problems with TM s Look at following sets: Lecture 31: Halting Problem CSCI 81 Spring, 2012 Kim Bruce A TM = { M,w M is a TM and w L(M)} H TM = { M,w M is a TM which halts on input w} TOTAL TM
More informationIntroduction to Turing Machines
Introduction to Turing Machines Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 12 November 2015 Outline 1 Turing Machines 2 Formal definitions 3 Computability
More informationComputability and Complexity
Computability and Complexity Lecture 5 Reductions Undecidable problems from language theory Linear bounded automata given by Jiri Srba Lecture 5 Computability and Complexity 1/14 Reduction Informal Definition
More informationNP, polynomial-time mapping reductions, and NP-completeness
NP, polynomial-time mapping reductions, and NP-completeness In the previous lecture we discussed deterministic time complexity, along with the time-hierarchy theorem, and introduced two complexity classes:
More informationTheory of Computation
Theory of Computation Dr. Sarmad Abbasi Dr. Sarmad Abbasi () Theory of Computation / Lecture 3: Overview Decidability of Logical Theories Presburger arithmetic Decidability of Presburger Arithmetic Dr.
More informationCS154, Lecture 10: Rice s Theorem, Oracle Machines
CS154, Lecture 10: Rice s Theorem, Oracle Machines Moral: Analyzing Programs is Really, Really Hard But can we more easily tell when some program analysis problem is undecidable? Problem 1 Undecidable
More informationTuring Machines Part III
Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's
More informationTime-bounded computations
Lecture 18 Time-bounded computations We now begin the final part of the course, which is on complexity theory. We ll have time to only scratch the surface complexity theory is a rich subject, and many
More informationCS 361 Meeting 26 11/10/17
CS 361 Meeting 26 11/10/17 1. Homework 8 due Announcements A Recognizable, but Undecidable Language 1. Last class, I presented a brief, somewhat inscrutable proof that the language A BT M = { M w M is
More information} Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops.
and their languages } Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops. } Some languages are Turing-recognizable, but not
More informationTuring s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine
Turing s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine There is no known model of computation more powerful than Turing Machines Definition of Algorithm:
More informationChapter 3: The Church-Turing Thesis
Chapter 3: The Church-Turing Thesis 1 Turing Machine (TM) Control... Bi-direction Read/Write Turing machine is a much more powerful model, proposed by Alan Turing in 1936. 2 Church/Turing Thesis Anything
More informationCS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression
CS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression Rosencrantz & Guildenstern Are Dead (Tom Stoppard) Rigged Lottery? And the winning numbers are: 1, 2, 3, 4, 5, 6 But is
More informationCpSc 421 Homework 9 Solution
CpSc 421 Homework 9 Solution Attempt any three of the six problems below. The homework is graded on a scale of 100 points, even though you can attempt fewer or more points than that. Your recorded grade
More informationA Note on Turing Machine Design
CS103 Handout 17 Fall 2013 November 11, 2013 Problem Set 7 This problem explores Turing machines, nondeterministic computation, properties of the RE and R languages, and the limits of RE and R languages.
More informationReductions in Computability Theory
Reductions in Computability Theory Prakash Panangaden 9 th November 2015 The concept of reduction is central to computability and complexity theory. The phrase P reduces to Q is often used in a confusing
More informationEquivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman
Equivalence of TMs and Multitape TMs Theorem 3.13 and Corollary 3.15 By: Joseph Lauman Turing Machines First proposed by Alan Turing in 1936 Similar to finite automaton, but with an unlimited and unrestricted
More informationComputational Models Lecture 9, Spring 2009
Slides modified by Benny Chor, based on original slides by Maurice Herlihy, Brown University. p. 1 Computational Models Lecture 9, Spring 2009 Reducibility among languages Mapping reductions More undecidable
More information1 Computational Problems
Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationCS3719 Theory of Computation and Algorithms
CS3719 Theory of Computation and Algorithms Any mechanically (automatically) discretely computation of problem solving contains at least three components: - problem description - computational tool - analysis
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Nachum Dershowitz & Yishay Mansour. Tel Aviv University. May 17 22, 2017 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationMapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement:
Mapping Reducibility 2017/11/16 Chapter 5.3 in Sipser Ø Announcement: q Slides for this lecture are here: http://www.public.asu.edu/~yzhan442/teaching/cse355/lectures/mapping.pdf 1 Last time Reducibility
More informationTheory of Computation Lecture Notes. Problems and Algorithms. Class Information
Theory of Computation Lecture Notes Prof. Yuh-Dauh Lyuu Dept. Computer Science & Information Engineering and Department of Finance National Taiwan University Problems and Algorithms c 2004 Prof. Yuh-Dauh
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. May 11/13, 2015 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationNotes for Lecture Notes 2
Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationCSCE 551 Final Exam, April 28, 2016 Answer Key
CSCE 551 Final Exam, April 28, 2016 Answer Key 1. (15 points) Fix any alphabet Σ containing the symbol a. For any language L Σ, define the language a\l := {w Σ wa L}. Show that if L is regular, then a\l
More information6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch
6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 8 Nancy Lynch Today More undecidable problems: About Turing machines: Emptiness, etc. About
More informationLecture 12: Mapping Reductions
Lecture 12: Mapping Reductions October 18, 2016 CS 1010 Theory of Computation Topics Covered 1. The Language EQ T M 2. Mapping Reducibility 3. The Post Correspondence Problem 1 The Language EQ T M The
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTATION
FORMAL LANGUAGES, AUTOMATA AND COMPUTATION DECIDABILITY ( LECTURE 15) SLIDES FOR 15-453 SPRING 2011 1 / 34 TURING MACHINES-SYNOPSIS The most general model of computation Computations of a TM are described
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 3.3, 4.1 State and use the Church-Turing thesis. Give examples of decidable problems.
More informationTheory of Computation
Theory of Computation Unit 4-6: Turing Machines and Computability Decidability and Encoding Turing Machines Complexity and NP Completeness Syedur Rahman syedurrahman@gmail.com Turing Machines Q The set
More informationTuring Machine Recap
Turing Machine Recap DFA with (infinite) tape. One move: read, write, move, change state. High-level Points Church-Turing thesis: TMs are the most general computing devices. So far no counter example Every
More informationIntroduction to Languages and Computation
Introduction to Languages and Computation George Voutsadakis 1 1 Mathematics and Computer Science Lake Superior State University LSSU Math 400 George Voutsadakis (LSSU) Languages and Computation July 2014
More informationV Honors Theory of Computation
V22.0453-001 Honors Theory of Computation Problem Set 3 Solutions Problem 1 Solution: The class of languages recognized by these machines is the exactly the class of regular languages, thus this TM variant
More informationCS6901: review of Theory of Computation and Algorithms
CS6901: review of Theory of Computation and Algorithms Any mechanically (automatically) discretely computation of problem solving contains at least three components: - problem description - computational
More informationExam Computability and Complexity
Total number of points:... Number of extra sheets of paper:... Exam Computability and Complexity by Jiri Srba, January 2009 Student s full name CPR number Study number Before you start, fill in the three
More informationTuring Machines Part Three
Turing Machines Part Three What problems can we solve with a computer? What kind of computer? Very Important Terminology Let M be a Turing machine. M accepts a string w if it enters an accept state when
More informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Computation History A computation history of a TM M is a sequence of its configurations C 1, C 2,, C l such
More informationCS4026 Formal Models of Computation
CS4026 Formal Models of Computation Turing Machines Turing Machines Abstract but accurate model of computers Proposed by Alan Turing in 1936 There weren t computers back then! Turing s motivation: find
More informationTuring Machine Variants
CS311 Computational Structures Turing Machine Variants Lecture 12 Andrew Black Andrew Tolmach 1 The Church-Turing Thesis The problems that can be decided by an algorithm are exactly those that can be decided
More informationComputability Crib Sheet
Computer Science and Engineering, UCSD Winter 10 CSE 200: Computability and Complexity Instructor: Mihir Bellare Computability Crib Sheet January 3, 2010 Computability Crib Sheet This is a quick reference
More informationLecture 13: Foundations of Math and Kolmogorov Complexity
6.045 Lecture 13: Foundations of Math and Kolmogorov Complexity 1 Self-Reference and the Recursion Theorem 2 Lemma: There is a computable function q : Σ* Σ* such that for every string w, q(w) is the description
More informationDecidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff
Decidability Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff 1 A property P of strings is said to be decidable if the set of all strings having property P is a recursive set; that
More informationComplexity Theory Part II
Complexity Theory Part II Time Complexity The time complexity of a TM M is a function denoting the worst-case number of steps M takes on any input of length n. By convention, n denotes the length of the
More informationComputational Models - Lecture 6
Computational Models - Lecture 6 Turing Machines Alternative Models of Computers Multitape TMs, RAMs, Non Deterministic TMs The Church-Turing Thesis The language classes R = RE core David Hilbert s Tenth
More informationComputational complexity
COMS11700 Computational complexity Department of Computer Science, University of Bristol Bristol, UK 2 May 2014 COMS11700: Computational complexity Slide 1/23 Introduction If we can prove that a language
More informationFriday Four Square! Today at 4:15PM, Outside Gates
P and NP Friday Four Square! Today at 4:15PM, Outside Gates Recap from Last Time Regular Languages DCFLs CFLs Efficiently Decidable Languages R Undecidable Languages Time Complexity A step of a Turing
More informationVariants of Turing Machine (intro)
CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples, Turing-recognizable and Turing-decidable languages Variants of Turing Machine Multi-tape Turing machines, non-deterministic
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION "Winter" 2018 http://cseweb.ucsd.edu/classes/wi18/cse105-ab/ Today's learning goals Sipser Section 4.1 Explain what it means for a problem to be decidable. Justify the use
More informationCOMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages
COMP/MATH 300 Topics for Spring 2017 June 5, 2017 Review and Regular Languages Exam I I. Introductory and review information from Chapter 0 II. Problems and Languages A. Computable problems can be expressed
More information7.1 The Origin of Computer Science
CS125 Lecture 7 Fall 2016 7.1 The Origin of Computer Science Alan Mathison Turing (1912 1954) turing.jpg 170!201 pixels On Computable Numbers, with an Application to the Entscheidungsproblem 1936 1936:
More informationCSCI 2200 Foundations of Computer Science Spring 2018 Quiz 3 (May 2, 2018) SOLUTIONS
CSCI 2200 Foundations of Computer Science Spring 2018 Quiz 3 (May 2, 2018) SOLUTIONS 1. [6 POINTS] For language L 1 = {0 n 1 m n, m 1, m n}, which string is in L 1? ANSWER: 0001111 is in L 1 (with n =
More informationBusch Complexity Lectures: Turing Machines. Prof. Busch - LSU 1
Busch Complexity ectures: Turing Machines Prof. Busch - SU 1 The anguage Hierarchy a n b n c n? ww? Context-Free anguages n b n a ww egular anguages a* a *b* Prof. Busch - SU 2 a n b anguages accepted
More informationUndecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65
Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving
More informationCST Part IB. Computation Theory. Andrew Pitts
Computation Theory, L 1 1/171 CST Part IB Computation Theory Andrew Pitts Corrections to the notes and extra material available from the course web page: www.cl.cam.ac.uk/teaching/0910/comptheory/ Introduction
More informationLecture 16: Time Complexity and P vs NP
6.045 Lecture 16: Time Complexity and P vs NP 1 Time-Bounded Complexity Classes Definition: TIME(t(n)) = { L there is a Turing machine M with time complexity O(t(n)) so that L = L(M) } = { L L is a language
More informationENEE 459E/CMSC 498R In-class exercise February 10, 2015
ENEE 459E/CMSC 498R In-class exercise February 10, 2015 In this in-class exercise, we will explore what it means for a problem to be intractable (i.e. it cannot be solved by an efficient algorithm). There
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 13 CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing
More informationThe Unsolvability of the Halting Problem. Chapter 19
The Unsolvability of the Halting Problem Chapter 19 Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing Machines D and SD A TM M with
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. April 18/ May 2, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationDecidability: Reduction Proofs
Decidability: Reduction Proofs Basic technique for proving a language is (semi)decidable is reduction Based on the following principle: Have problem A that needs to be solved If there exists a problem
More information