550 likes | 695 Views
IDT Open Seminar ALAN TURING AND HIS LEGACY 100 Years Turing celebration Gordana Dodig Crnkovic, Computer Science and Network Department Mälardalen University March 8 th 2012. http://www.mrtc.mdh.se/~gdc/work/TuringCentenary.pdf http://www.mrtc.mdh.se/~gdc/work/TuringMachine.pdf.
E N D
IDT Open Seminar ALAN TURING AND HIS LEGACY 100 Years Turing celebration Gordana Dodig Crnkovic, Computer Science and Network Department Mälardalen University March 8th 2012 http://www.mrtc.mdh.se/~gdc/work/TuringCentenary.pdf http://www.mrtc.mdh.se/~gdc/work/TuringMachine.pdf
Chomsky Language Hyerarchy Turing Machines Push-down Automata Finite Automata
TURING MACHINES “Turing’s "Machines". These machines are humans who calculate.” (Wittgenstein) “A man provided with paper, pencil, and rubber, and subject to strict discipline, is in effect a universal machine.” (Turing)
Turing Machine Tape ...... ...... Read-Write head Control Unit
The Tape No boundaries -- infinite length ...... ...... Read-Write head The head moves Left or Right
...... ...... Read-Write head The head at each time step: 1. Reads a symbol 2. Writes a symbol 3. Moves Left or Right
The Input String Input string Blank symbol ...... ...... head Head starts at the leftmost position of the input string
Determinism Turing Machines are deterministic Not Allowed Allowed No lambda transitions allowed in TM!
Determinism Note the difference between stateindeterminismwhen not even possible future states are known in advance. and choice indeterminismwhen possible future states are known,but we do not know which state will be taken.
Halting The machine halts if there are no possible transitions to follow
Example ...... ...... No possible transition HALT!
Allowed Not Allowed Final States • Final states have no outgoing transitions • In a final state the machine halts
Acceptance If machine halts in a final state Accept Input If machine halts in a non-final state or If machine enters an infinite loop Reject Input
Turing Machine Input alphabet Tape alphabet States Final states Transition function Initial state blank
The Accepted Language For any Turing Machine Initial state Final state
Standard Turing Machine The machine we described is the standard: • Deterministic • Infinite tape in both directions • Tape is the input/output file
A function is computable if there is a Turing Machine such that Initial Configuration Final Configuration For all Domain
is computable The function are integers Example (Addition) Turing Machine: Input string: unary Output string: unary
Start initial state Finish final state
Execution Example: Time 0 (2) (2) Final Result
Time 12 HALT & accept
Turing Machines are “hardwired” they execute only one program A limitation of Turing Machines:
Solution: Universal Turing Machine Characteristics: • Reprogrammable machine • Simulates any other Turing Machine
Universal Turing Machine simulates any other Turing Machine Input to Universal Turing Machine: • Description of transitions of • Initial tape contents of
Tape 1 Three tapes Description of Tape 2 Universal Turing Machine Tape Contents of Tape 3 State of
Tape 1 Description of We describe Turing machine as a string of symbols: We encode as a string of symbols
Alphabet Encoding Symbols: Encoding:
States: Encoding: Move: Encoding: State Encoding Head Move Encoding
Transition Encoding Transition: Encoding: separator
Machine Encoding Transitions: Encoding: separator
Tape 1 contents of Universal Turing Machine: encoding of the simulated machine as a binary string of 0’s and 1’s
As 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.