1 / 11

Computer Theory Michael J. Watts mike.watts.nz

Computer Theory Michael J. Watts http://mike.watts.net.nz. Lecture Outline. Turing machines Computability Representation issues. Turing Machines. Simple theoretical model computability Basis of modern computers Finite state machines Equivalent to a digital computer

Download Presentation

Computer Theory Michael J. Watts mike.watts.nz

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Theory Michael J. Watts http://mike.watts.net.nz

  2. Lecture Outline • Turing machines • Computability • Representation issues

  3. Turing Machines • Simple theoretical model • computability • Basis of modern computers • Finite state machines • Equivalent to a digital computer • Deal with an infinitely long tape • Tape has a finite number of non-blank squares

  4. Turing Machines • Each square has a symbol from a finite alphabet • A datum • Has a read-write head • Reads a symbol • Symbol + current state • Writes a new symbol • Moves left or right on the tape

  5. Turing Machines • Continues until it reaches an unknown condition • All computer languages and architectures are equivalent to Turing machines • Universal Turing machine • Generalisation • Reads instructions off of tape

  6. Turing Machines • Nondeterministic Turing machine • Adds a write-only head • Writes a guess at the solution • Based on internal “rule”

  7. Computability • “A function is computable if can be computed with a Turing machine” • http://www.ams.org/new-in-math/cover/turing.html • Valid input -> algorithm -> correct output • Some problems are not computable • Halting problem

  8. Computability • Polynomial time • NP-Complete • Non-deterministic polynomial time • NP-Hard • Many optimisation problems are NP-complete or NP-hard • Hamilton path • Travelling salesman

  9. Computability • Exponential time • Number of steps is an exponential function of complexity • Encryption breaking • Factorial complexity • Don't bother

  10. Representation • Numbers in computers are represented in binary • Base two numbers • Integers / floating point • Floating point • Single / double precision • Problems • Recurring digits • Accuracy

  11. Summary • Turing machines are the basis of computer theory • Any function that can be computed by a Turing machine in computable • Some problems are not computable • Some problems are infeasible • Problems with representation of numbers in computers

More Related