1 / 14

Computability

Computability. Finite State Machine exercises Classwork: do questions as a group and submit to moodle q&a forum. Videos from ArsDigita University: www.aduni.org Theory of Computation: Shai Simonson You can listen to follow-on lectures, just as background.

Download Presentation

Computability

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. Computability Finite State Machine exercises Classwork: do questions as a group and submit to moodle q&a forum. Computabilty jeanine.meyer@purchase.edu

  2. Videos from ArsDigita University: www.aduni.orgTheory of Computation: Shai SimonsonYou can listen to follow-on lectures, just as background. Computabilty jeanine.meyer@purchase.edu

  3. Introduction to course and FSMhttp://www.youtube.com/watch?v=HyUK5RAJg1c Computabilty jeanine.meyer@purchase.edu

  4. Comments • A machine accepts a language if you give it a string in the language and the machine does some calculation and says yes and if you give it a string NOT in the language, the machine does some calculation and it says no. The "saying yes" means: ends up in a state marked yes versus ending up in a state marked no. Turing Machines write on the tape. Pushdown automata and Finite State automata do NOT write anything but end up in a state which may be designated a final/accepting state or a not accepting state. • We also will investigate machines that perform functions: you feed in input on a tape and the machine does calculations and produces something on the tape. • Think of the language accepting machines as a special case of the function machines. Computabilty jeanine.meyer@purchase.edu

  5. Bullseye The speaker's bull's eye idea was great but he was not consistent with some terminology. • Finite state machines accept Regular languages • Push down automata accept Context-free languages • Turing machines accept computable functions Computabilty jeanine.meyer@purchase.edu

  6. Comments • Turing machines accept computable functions is a tautology: this is a definition of computable functions. • We also will prove that TM computable functions are equal to recursive functions. • We will develop a refinement on the last category between languages that are decided (meaning the TM says yes or no for every string) and TM-recognizable meaning it will never give the wrong answer, but may keep going…. Computabilty jeanine.meyer@purchase.edu

  7. Clip 1: Question • Conceptually, how could you put more power into the FSM.? From the introduction last week, what can say that the TMs do that the Finite State Machines can't? Computabilty jeanine.meyer@purchase.edu

  8. Clip 2: Finite State machines http://www.youtube.com/watch?v=jb_H7SGOyyI&feature=related Computabilty jeanine.meyer@purchase.edu

  9. Clip 2 Questions Describe a FSM that accepts all strings • with an even number of 0s, but at least 2. • with an odd number of 1s. • Assume the alphabet of symbols is the English alphabet. Consider the first names of the people in the class. Describe a FSM that accepts the names of the people in the class and rejects every other string. (Hint: you may limit the problem to Noah, Marvin, and Mayra. Hint: there will be more than one final state. That is, you will design something that has many states and there will be one for accepting Noah, another for Marvin, and another for Mayra.) Computabilty jeanine.meyer@purchase.edu

  10. Clip 3: Finite State Machines • http://www.youtube.com/watch?v=JPew2mYGF1E&feature=related Computabilty jeanine.meyer@purchase.edu

  11. Clip 3 Questions • When I was driving for the first time in Sweden, my rented Volvo had an odometer in kilometers/hour and the traffic signs gave the speed limit in kilometers/hour. How do you think I determined if I was traveling too fast? Hint: this is similar to the teacher's 'bad plan' for determining if a number represented in binary was divisible by 4. • Give a FSM for accepting email addresses. Assume the following simplified pattern for email addresses: a valid address is 1 or more letters, followed by a period, followed by 1 or more letters, followed by a @ followed by letters followed by a period and then com, edu or net. Computabilty jeanine.meyer@purchase.edu

  12. Clip 4: Finite State Machines • http://www.youtube.com/watch?v=ORR5MP9yug0&feature=related • This lecture segment builds a FSM that accepts any string that contains as a substring 110110. When he goes back to the start, a good way to describe it is: this is as if we haven't seen anything yet. Computabilty jeanine.meyer@purchase.edu

  13. Clip 4 questions • Design a FSM that accepts strings that contain 001001 as a substring at least once. This is easy! • Design a FSM that accepts strings that contain 11111 at least once. • Design a FSM that accepts strings that contain either 0000 or 1111. Computabilty jeanine.meyer@purchase.edu

  14. Homework • Complete and submit answers. If/when you do it in a group, you each should submit the answers since only then can you see any of my comments. Let me know the names of the members of the group. • Next class (Monday): Nondeterminism! Computabilty jeanine.meyer@purchase.edu

More Related