More Theory of Computing

Slides:



Advertisements
Similar presentations
Chapter 11: Models of Computation
Advertisements

Turing Machines Memory = an infinitely long tape Persistent storage A read/write tape head that can move around the tape Initially, the tape contains only.
Introduction to Computability Theory
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Variants of Turing machines
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
1 Theory: Models of Computation  Readings:  Chapter 11 & Chapter 3.6 of [SG]  Content:  What is a Model  Model of Computation  Model of a Computing.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Variants.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
CS605 – The Mathematics and Theory of Computer Science Turing Machines.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Chapter 10 Models of Computation. What is a model? Captures the essence – the important properties – of the real thing Captures the essence – the important.
CS 310 – Fall 2006 Pacific University CS310 Turing Machines Section 3.1 November 6, 2006.
Lecture 5 Turing Machines
Computation Theory Introduction to Turing Machine.
CS1001 Lecture 23. Overview Incompleteness and the Halting Problem Incompleteness and the Halting Problem Methods in Artificial Intelligence Methods in.
CIS 197 Computers in Society Professor John Peterson Philosophy Week!
November 3, 2009Introduction to Cognitive Science Lecture 15: Theory of Computation II 1 Languages Accepted by Turing Machines Example 2: Language L =
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
1 Foundations of Software Design Fall 2002 Marti Hearst Lecture 29: Computability, Turing Machines, Can Computers Think?
1 Lecture 13 Turing machine model of computation –Sequential access memory (tape) –Limited data types and instructions –Formal Definition –Equivalence.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
 Computability Theory Turing Machines Professor MSc. Ivan A. Escobar
The Recursion Theorem Pages 217– ADVANCED TOPICS IN C O M P U T A B I L I T Y THEORY.
Finite State Automata / Machines and Turing Machines.
1 The Halting Problem and Decidability How powerful is a TM? Any program in a high level language can be simulated by a TM. Any algorithmic procedure carried.
Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Models of Computation - Turing Machines Dale Roberts, Lecturer.
Halting Problem Introduction to Computing Science and Programming I.
1 Theory: Models of Computation  Readings:  Chapter 11 & Chapter 3.6 of [SG]  Content:  What is a Model  Model of Computation  Model of a Computing.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
The Church-Turing Thesis Chapter 3 Giorgi Japaridze Theory of Computability.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
CSCI 2670 Introduction to Theory of Computing October 12, 2005.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Computation Motivating questions: What does “computation” mean? What are the similarities and differences between computation in computers and in natural.
Fundamentals of Informatics Lecture 13 Reduction Bas Luttik.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich
Capabilities of computing systems Numeric and symbolic Computations A look at Computability theory Turing Machines.
1 Section 13.1 Turing Machines A Turing machine (TM) is a simple computer that has an infinite amount of storage in the form of cells on an infinite tape.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
 2004 SDU 1 Algorithm Informally speaking, an algorithm is a collection of simple instructions for carrying out a task. Example:  Elementary arithmetic.
1 Introduction to Turing Machines
Umans Complexity Theory Lectures Lecture 1b: Turing Machines & Halting Problem.
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
Recall last lecture and Nondeterministic TMs Ola Svensson.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
FORMAL LANGUAGES, AUTOMATA, AND COMPUTABILITY * Read chapter 4 of the book for next time * Lecture9x.ppt.
Theory of Computation Automata Theory Dr. Ayman Srour.
Fall 2013 Lecture 27: Turing machines and decidability CSE 311: Foundations of Computing.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
The Halting Problem.
Time complexity Here we will consider elements of computational complexity theory – an investigation of the time (or other resources) required for solving.
ماشین های تورینگ، تشخیص پذیری و تصمیم پذیری زبان ها
Turing Machines Space bounds Reductions Complexity classes
Reductions Costas Busch - LSU.
CSE 105 theory of computation
Theory of Computation Lecture 22: Turing Machines III
CSE 105 theory of computation
Chapter 9 TURING MACHINES.
فصل سوم The Church-Turing Thesis
Theory of Computation Turing Machines.
Recall last lecture and Nondeterministic TMs
CSE 105 theory of computation
Theory of Computation Lecture 23: Turing Machines III
CSE 105 theory of computation
Presentation transcript:

More Theory of Computing Computer Science 101 More Theory of Computing

Another Example: Odd Parity A parity bit is added to the right end of a string of bits if it makes the total number of 1’s odd; otherwise, add a 0 100011 -> 100010 -> 000000 ->

Design Strategy Three states Even parity: if we read a blank here, we have an even number of 1s, so we write a 1 and goto the halt state Odd parity: if we read a blank here, we have an odd number of 1s, so we write a 0 and goto the halt state Halt

Design Strategy Even parity Odd parity We stay here while we keep reading 0s Otherwise, we goto odd parity Odd parity Otherwise, we goto even parity

State Diagram for Odd Parity TM Even parity Odd parity Halt

Tuples for Transitions The Turing machine program (1,1,1,2,R) Even parity state reading 1, change state (1,0,0,1,R) Even parity state reading 0, don’t change state (2,1,1,1,R) Odd parity state reading 1, change state (2,0,0,2,R) Odd parity state reading 0, don’t change state (1,b,1,3,R) End of string in even parity state, write 1 and go to state 3 (2,b,0,3,R) End of string in odd parity state, write 0 and go to state 3

The Church-Turing Thesis If there exists an algorithm to do a symbol manipulation task, then there exists a Turing machine to do that task Thesis Statement advanced for consideration and maintained by argument Theorem Ideas that can be proved in a formal, mathematical way

Emulating an Algorithm on a TM

A Universal TM Represent the algorithm as symbols on the tape Put the algorithm’s inputs on the tape as well Run the universal TM to run the algorithm The universal TM is like a stored program computer (von Neumann machine)

Unsolvable Problems Problem to investigate Decide, given any collection of Turing machine instructions together with any initial tape contents, whether that Turing machine will ever halt if started on that tape

The Proposed Solution T* = TM being tested t = T’s input P = The testing TM

A Proposed Counterexample T* = TM being tested t = T’s input Q = The testing TM

An Actual Counterexample S* = TM being tested S*bS* = S’s input S = The testing TM

Other Unsolvable Problems Unsolvable problems, related to the halting problem, have the following consequences No program can be written to decide whether any given program always stops eventually, no matter what the input No program can be written to decide whether any two programs are equivalent No program can be written to decide whether any given program run on any given input will ever produce some specific output