Capabilities of computing systems Numeric and symbolic Computations A look at Computability theory Turing Machines.

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.
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
Class 39: Universality cs1120 Fall 2009 David Evans University of Virginia.
1 Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible.
Applied Computer Science II Chapter 3 : Turing Machines Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines 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.
CS5371 Theory of Computation Lecture 11: Computability Theory II (TM Variants, Church-Turing Thesis)
CS 310 – Fall 2006 Pacific University CS310 Turing Machines Section 3.1 November 6, 2006.
CHAPTER 3 The Church-Turing Thesis
Homework #9 Solutions.
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?
Computability and Complexity 3-1 Turing Machine Computability and Complexity Andrei Bulatov.
Turing Machines CS 105: Introduction to Computer Science.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
Design and Analysis of Algorithms
1 Turing Machines. 2 A Turing Machine Tape Read-Write head Control Unit.
More Theory of Computing
1 CO Games Development 2 Week 21 Turing Machines & Computability Gareth Bellaby.
The Recursion Theorem Pages 217– ADVANCED TOPICS IN C O M P U T A B I L I T Y THEORY.
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
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.
Alan Turing WWII code-breaker mathematical proof of ‘Turing machines’ …in particular, “Universal Turing machine” laid foundations of computer science father.
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.
Turing Machines. Intro to Turing Machines A Turing Machine (TM) has finite-state control (like PDA), and an infinite read-write tape. The tape serves.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
©Brooks/Cole, 2003 Chapter 17 Theory of Computation.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
TM Design Macro Language D and SD MA/CSSE 474 Theory of Computation.
Fundamentals of Informatics Lecture 13 Reduction Bas Luttik.
Computer Theory Michael J. Watts
Fundamentals of Informatics Lecture 12 The Halting Problem Bas Luttik.
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
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Theory of Computation Foundations of Computer Science  Cengage Learning.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 5 Reducibility Some slides are in courtesy.
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:
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis (Winter 2016, these slides were also used for Day 33)
Universal Turing Machine
CS 154 Formal Languages and Computability April 5 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
Introduction to Computing Science and Programming I
Computable Functions.
CSE 105 theory of computation
Ch. 11 Theory of Computation
Chapter 9 TURING MACHINES.
Chapter 3: The CHURCH-Turing thesis
Jaya Krishna, M.Tech, Assistant Professor
فصل سوم The Church-Turing Thesis
Jaya Krishna, M.Tech, Assistant Professor
Recall last lecture and Nondeterministic TMs
P.V.G’s College of Engineering, Nashik
CSE S. Tanimoto Turing Completeness
Presentation transcript:

Capabilities of computing systems Numeric and symbolic Computations A look at Computability theory Turing Machines

Objectives What is numeric computation Popularity, applications Limitations What is symbolic computation Is is theoretically possible to solve all mathematical problems by computers? An intoduction to the study of this problem?

Numeric computation The earliest and most important application – number cruching Virtually all applications that we come across are numeric. Eg virtual reality.- High resolution, very fast graphics with multimedia and specialized input output devices. Encryption, decryption/ Data bases

Need for more than numeric computing Many mathematical tasks are dealt with in a symbolic way by human beings. eg. Simplify a polynomial Solve equations factorize polynomials Similarly, computing pi to a large number of decimal places, factorials of large numbers would not fall within the range of numeric data handled by a computer.

Symbolic Computing Area dealing with a new type use of computers in mathematics, science and engineering. Can enhance significantly the types of problems humans can use computers for.

What is symbolic computing Solving problems expressed in terms of `symbols’ or variables like x and y instead of numeric values is called symbolic computing Laborious tasks like expanding (1 + x + 3y) 4 or solving (x 10 –1) can be given to computers

Mathematica It is a symbolic computing package. Wolfram Research Inc. Some commands N[expr,I] eg N[pi,250] Factorial example: 200! Simplify[expr], Factor[expr], Solve[equation,unknown] (systems) Expand[expr], D[expr,x], Integrate[expr,x]

Implementation Some of these tasks are simple, and have a simple interface to a numeric version of the problem and its solution Some tasks are more difficult and require techniques from artificial intelligence, using symbolic logic and complicated searches.

An example User Interface Curve fitting Equation Solver Plotting Linear equation Quadratic equation Cubic equation Solve[x 2 – 3 = 0] Display Results on screen x 2 – 3 = 0 a=1,b=0,c=3 Compute the two roots

A model of a computing agent 1.Accepts input 2.Store and retrieve information 3.Can take actions according to algorithmic instructions; actions depend on present state of the computing agent and the input 4. Produce output

Theory of computation Early studies on formalizing proofs, before modern computers. Study of the nature of proofs. Formalizing, validating and mechanizing proofs. Many statements cannot be proved using a system.Led to a study of the nature of computation itself. Different models of computation and computing agents. Turing’s model – ingenious - captures the essence of computing

A Turing machine A conceptual model An infinite tape, extending in both the directions left and right. Tape divided into cells, each can contain a symbol, from a finite set of symbols called the alphabet. Special symbol b – blank, 1, 0 and other symbols, placeholders or markers.

The Turing Machine (cont’d) At any time only a finite number of cells contain nonblank symbols. Tape holds input to a TM/ input must be a finite string of nonblank symbols from the alphabet (a finite set of symbols). TM writes its output to tape using same set of symbols. Tape also serves as memory

TM (cont’d) The TM has a `state’ at any time, which is one of a finite set of states of a TM, labeled 1,2, ….k. Also, at a time, its `head’ is on a particular cell and it can read that cell. Based on state and input read, it does three things. a.Writes a symbol to the cell (replacing if needed) b.Go to new state c.Move one cell left or right

Transitions or instructions A typical TM transition rule or instruction says: If you are in state i and read symbol j then Write symbol k on tape, and go to state s, and move in direction d. It is of the form (i,j,k,s,d) (current state, input symbol, next symbol, next state, move) A set of such instructions defines a TM.

TM TM starts from state 1. Finds an instruction to apply, for present sate and input and applies the instruction. Repeats the above. If there is no instruction applicable, TM halts. Assumption: For one state input pair, there is at most one instruction applicable.

An example A TM for converting 011 to 100 (1,0,1,2,R) (1,1,1,2,R) (2,0,1,2,R) (2,1,0,2,R) (2,b,b,3,L) s1….bb011bb…. s2…bb111bb…. s2….bb101bb…. s2…bb100bb…. s3….bb100bb….

Tm as a computing agent Satisfies all criteria. Can be built for all computable problems - see later. Can solve more than real or practical computers, as infinite memory is there.

TM as an algorithm An algorithm: 1. Well ordered collection. 2. contains unambiguous and effectively computable operations. 3. Halt in finite amount of time. (Problem) For `correct input’ halts. 4. Produce an output.

TM TM starts from state 1. Finds an instruction to apply, for present sate and input and applies the instruction. Repeats the above. If there is no instruction applicable, TM halts. Assumption: For one state input pair, there is at most one instruction applicable.

An example A TM for converting 011 to 100 (1,0,1,2,R) (1,1,1,2,R) (2,0,1,2,R) (2,1,0,2,R) (2,b,b,3,L) s1….bb011bb…. s2…bb111bb…. s2….bb101bb…. s2…bb100bb…. s3….bb100bb….

Tm as a computing agent Satisfies all criteria. Can be built for all computable problems - see later. Can solve more than real or practical computers, as infinite memory is there.

TM as an algorithm An algorithm: 1. Well ordered collection. 2. contains unambiguous and effectively computable operations. 3. Halt in finite amount of time. (Problem) For `correct input’ halts. 4. Produce an output.

Examples Bit inverter: (1,0,1,1,R) (1,1,0,1,R) A parity bit machine: (1,1,1,2,R) (1,0,0,1,R) (2,1,1,1,R) (2,0,0,2,R) (1,b,1,3,R) (2,b,0,3,R) An extra bit called odd parity bit is attached to each string such that the number of 1’s in each string becomes odd.

Turing machines and algorithms Church Turing Thesis Church (Lambda calculus) Turing (Turing machines) Showed that algorithms are equivalent And unsolvability of problems.

TMs Popularity For describing algorithms For showing unsolvabilities

The Halting Problem of TMs Given a Turing machine M (encoded) and an input I can it be decided whether the Turing machine accepts or does not accept (Special states accept) (Special states reject) Else loops

Not decidable If it is, T is a TM to do this task. Construct H to read and run T on. Reject if T accepts, accept if T rejects. Run H with as input Contradiction – accepts if reject and reject if accepts Hence no T exists.

Problems Find the output of the TM (1,1,1,2,R) (1,0,0,2,R) (1,b,1,2,R) (2,0,0,2,R) (2,1,0,1,R) When run on the tape…. bbb1001bbbb… Describe the behaviour of a TM (1,1,1,1,R) (1,0,0,2,L) (2,1,0,2,L) (2,b,1,3,L) (3,b,b,1,R) on the input bbb101bbb

Solutions and halts Prints successively 1001, 10001, , and so on without halting

Problem Write a TM that begins on a tape containing a single 1 and never halts but successively displays the strings..b1b… …010… 00100…. And so on