ComputerScienceFoundationsTuring Machine EditionJason DewGeezeo / Catamorphic Labs
AlanTuring
Entscheidungsproblem             David            Hilbert
Alphabetany set of symbolsexamples:● {a, b, c, d, ..., z}● {0, 1, 2, 3, ..., 9}● {0, 1}
Stringsequence of symbols from the alphabetexamples:● foobar● 0101001● (empty string)
Formal Languageany set of strings over an alphabetexamples:● {foo, bar, baz}● {00, 01, 10, 11}● {b, ab, aab, aaab, aaaab, ...
DeterministicFinite Automata    http://15mmvsf.bagofmice.com/vsf/prev_robot.htm
Formal Definition● an alphabet● a set of states   ○ one denoted as a "starting state"   ○ one or more denoted as "acceptin...
DFA acceptingmultiples of 3
NondeterministicFinite Automata
Formal Definition● an alphabet● a set of states   ○ one denoted as a "starting state"   ○ one or more denoted as "acceptin...
Example NFA
Theorem Any NFA can be converted  into an equivalent DFA.
Regular Language    Any language which   can be recognized by  some finite automaton.
Regular Expressions
Theorem  A language is regular       if and only if some regular expression       describes it.
Turing machines
Formal Definition                      (slightly simplified)● two alphabets  ○ one for reading, the input alphabet  ○ one ...
Example TMLets call it MIt accepts strings whose length is a power of 2Accepted strings: "0", "00", "0000"Rejected strings...
A description of M                     Attribution: Sipser, Figure 3.8
Running on "00"                  tape   state                  .00_   q1                  _.0_   q2                  _x._ ...
Running on "0000"tape     state.0000_   q1      tape     state_.000_   q2      _.x0x_   q2_x.00_   q3      _x.0x_   q2_x0....
Wrapping upWhy do we care about Turing machines?
ReferencesDeterministic finite automaton. (2012, March 11). Retrieved from http://en.wikipedia.org/wiki/Deterministic_fini...
Come work with me!
Upcoming SlideShare
Loading in...5
×

Computer Science Fundamentals - Turing Machines

1,166
-1

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,166
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
45
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Computer Science Fundamentals - Turing Machines

  1. 1. ComputerScienceFoundationsTuring Machine EditionJason DewGeezeo / Catamorphic Labs
  2. 2. AlanTuring
  3. 3. Entscheidungsproblem David Hilbert
  4. 4. Alphabetany set of symbolsexamples:● {a, b, c, d, ..., z}● {0, 1, 2, 3, ..., 9}● {0, 1}
  5. 5. Stringsequence of symbols from the alphabetexamples:● foobar● 0101001● (empty string)
  6. 6. Formal Languageany set of strings over an alphabetexamples:● {foo, bar, baz}● {00, 01, 10, 11}● {b, ab, aab, aaab, aaaab, ... }
  7. 7. DeterministicFinite Automata http://15mmvsf.bagofmice.com/vsf/prev_robot.htm
  8. 8. Formal Definition● an alphabet● a set of states ○ one denoted as a "starting state" ○ one or more denoted as "accepting states"● a transition function ○ takes a symbol and a state and returns a new state
  9. 9. DFA acceptingmultiples of 3
  10. 10. NondeterministicFinite Automata
  11. 11. Formal Definition● an alphabet● a set of states ○ one denoted as a "starting state" ○ one or more denoted as "accepting states"● a transition function ○ takes a symbol and a state and returns zero or more states
  12. 12. Example NFA
  13. 13. Theorem Any NFA can be converted into an equivalent DFA.
  14. 14. Regular Language Any language which can be recognized by some finite automaton.
  15. 15. Regular Expressions
  16. 16. Theorem A language is regular if and only if some regular expression describes it.
  17. 17. Turing machines
  18. 18. Formal Definition (slightly simplified)● two alphabets ○ one for reading, the input alphabet ○ one for writing, the output (or tape) alphabet● a set of states ○ one starting state ○ one accepting state ○ one rejecting state● a transition function takes a symbol and a state and returns a new state, a symbol to write, and Left or Right
  19. 19. Example TMLets call it MIt accepts strings whose length is a power of 2Accepted strings: "0", "00", "0000"Rejected strings: "", "000", "000000"
  20. 20. A description of M Attribution: Sipser, Figure 3.8
  21. 21. Running on "00" tape state .00_ q1 _.0_ q2 _x._ q3 _.x_ q5 ._x_ q5 _.x_ q2 _x._ q2 _x_. qaccept
  22. 22. Running on "0000"tape state.0000_ q1 tape state_.000_ q2 _.x0x_ q2_x.00_ q3 _x.0x_ q2_x0.0_ q4 _xx.x_ q3 tape state_x0x._ q3 _xxx._ q3 _.xxx_ q2_x0.x_ q5 _xx.x_ q5 _x.xx_ q2_x.0x_ q5 _x.xx_ q5 _xx.x_ q2_.x0x_ q5 _.xxx_ q5 _xxx._ q2._x0x_ q5 ._xxx_ q5 _xxx_. qaccept
  23. 23. Wrapping upWhy do we care about Turing machines?
  24. 24. ReferencesDeterministic finite automaton. (2012, March 11). Retrieved from http://en.wikipedia.org/wiki/Deterministic_finite_automatonNondeterministic finite automaton. (2012, April 20). Retrieved from http://en.wikipedia.org/wiki/Nondeterministic_finite_automatonPetzold, C. (2008). The annotated turing. Indianapolis: Wiley Publishing, Inc.Sipser, M. (2006). Introduction to the theory of computation. (2nd ed.). Boston:Thompson Course Technology.Turing machine. (2012, April 17). Retrieved from http://en.wikipedia.org/wiki/Turing_machine
  25. 25. Come work with me!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×