1 / 18

Welcome to CptS 317

Welcome to CptS 317. Background Course Outline Textbook Syllabus (see class web site to important information on disabilities, cheating and safety) Grades. Nuts and Bolts. CptS 317 Automata Theory, Languages and Computation Fall 2014 Instructor: John Miller, West 134E

Download Presentation

Welcome to CptS 317

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. Welcome to CptS 317 Background Course Outline Textbook Syllabus (see class web site to important information on disabilities, cheating and safety) Grades

  2. Nuts and Bolts CptS 317 Automata Theory, Languages and Computation Fall 2014 Instructor: John Miller, West 134E jhmiller@tricity.wsu.edu Class web page can be found at http://www/tricity.wsu.edu/~jhmiller

  3. Background In 1930s A.Turing studied abstract machines (Turing machine) with properties like modern computers. His objective was to discover what computers could and could not do. This subject now called “deciability” If problem can be solved by computer, it is “decidable” 3

  4. Background (2) In 40s and 50s, simple machines called “finite automata” were studied as models of brain function. Although not good brain models, they turned out to be useful for other reasons. In 1950s, N. Chomsky introduced the concept of “grammars” that is closely related to finite automata. 4

  5. Background (3) In 1969 S. Cook extended Turingwork. He devised ways to separate computer problems into those that could be solved efficiently (tractable) from those that took so much time that computers are useless (intractable or NP-hard). CptS 317 is about these classical issues in the theory of computing. 5

  6. Course Outline Regular Languages and their descriptors: Finite automata, nondeterministic finite automata, regular expressions. Algorithms to decide questions about regular languages, e.g., is it empty? Closure properties of regular languages. 6

  7. Course Outline – (2) Context-free languages and their descriptors: Context-free grammars, pushdown automata. Decision and closure properties. 7

  8. Course Outline – (3) Recursive and recursively enumerable languages. Turing machines, decidability of problems. The limit of what can be computed. Intractable problems. Problems that (appear to) require exponential time. NP-completeness and beyond. 8

  9. Text Introduction to Automata Theory, Languages, and Computation 3rd Edition, Hopcroft, Motwani, Ullman, 9

  10. Likely course content Chapter 1: Introduction Chapter 2: Finite Automata Chapter 3: Regular Expressions and Languages Chapter 4: Properties of Regular Languages Midterm exam Chapter 5: Context-Free Grammars and Languages Chapter 6: Pushdown Automata Chapter 7: Properties of Context-Free Languages Chapter 8: Introduction to Turing Machines Final exam 10

  11. Grades Homework 25% Weekly quizzes 25%: Midterm exam 25% Final exam 25% 11

  12. Comments About Homework The intent is that everyone will get homework 100% correct. You are allowed to try as many times as you like. Only the last try counts. Don’t be afraid to guess and try again. You’ll get some advice if you make a mistake. 12

  13. Quizzes: when and why • End of class on Fridays • Questions about the material covered in during that week • Open textbook and lecture slides • Reward students who come to class, read text and review lecture slides

  14. Why Study Automata? • Finite automata are models for protocols, electronic circuits, etc. • Regular expressions are essential for all types of computing • Context-free grammars are used to describe the syntax of almost every programming language.

  15. Why? – (2) • When developing solutions to real problems, we often confront the limitations of what software can do. • Undecidable things no program can do • Intractable things programs can do but but no fast programs exist.

  16. Practical Application • “Intractable” problems should not be addressed “head on” (i.e. write code based on rigorous step-by-step method) • Look for an approximate method • Try “heuristic” approach (likely to give the correct answer by no guarantee)

  17. Gradiance Problems The “class token” is 8E58F2FF. Register it at www.gradiance.com/service See Texts p35 for discussion and 1st set of problems Pearson no longer supports Gradiance Jeffery Ullman offers service free of charge Find Ullman’s online course at infolab.stanford.edu/~ullman/ialc.html My lecture slides were developed from his 18

More Related