CSCI 491/595 Syllabus Fall 2011 CSCI 491/595: Theory of Computation Fall 2011 Syllabus This course is all about formally reasoning about abstract mathematical models of computation. “Formal reasoning” means that we will develop an understanding of computation based on mathematical definitions and proofs. “Abstract models” means that the computations we discuss may not bear an obvious resemblance to those carried out on modern computers. By taking this approach, I hope you can develop your abstract reasoning skills, gain an understanding of computation that is divorced from computing technology, and appreciate that computation is an objective part of reality. Administrivia Instructor: Mike Rosulek / <mikero@cs.umt.edu> / SS 404 Office hours: TBA Prerequisites: M 225 or M 307. Textbook: Introduction to the Theory of Computation by Sipser (a classic). Website: Moodle (http://umonline.umt.edu) Tentative Schedule (by week) 1. Deterministic finite automata & regular languages 2. Nondeterministic finite automata 3. Regular expressions 4. Closure properties of regular langauges, string homomorphisms 5. Limits of regular languages: pumping lemma & Myhill-Nerode theorem 6. Context-free grammars 7. Pushdown automata 8. Normal forms and their applications 9. Pumping lemma for context-free languages 10. Turing machines 11. The halting problem & undecidability 12. Rice’s theorem & enumeration 13. Turing reductions and meta-computational decision problems 14. Beyond undecidability: arithmetic hierarchy & computational complexity 1 CSCI 491/595 Syllabus Fall 2011 Evaluation & Grading 50%: Homework: There will be bi-weekly homework sets. The problems on these homeworks will involve formal proofs, constructions, and applications of techniques used in class. 50%: Exams: There will be one midterm exam and one final exam. The final exam will be longer and somewhat cumulative, but with more emphasis given to the second half of the material. Each will count for 25% of the final grade. Graduate Students Graduate students taking this course at the 595 level will be required to solve extra problems on the homework sets and exams. These problems will involve a more nuanced understanding of the material, and also require additional advanced readings beyond those covered in class. Other Policies Cheating: It should go without saying that academic dishonesty (including plagiarism and cheating) will not be tolerated. Consult the university’s student conduct code for more details. I will follow the guidelines given there. I will seek out the maximum allowable penalty for any academic dishonesty that occurs in this course. If you have questions about which behaviors are acceptable, please ask me. Late homeworks: Unless an exception has been arranged agreed upon well in advance with me (as early as possible), I will not accept late homeworks. Really, I won’t. Other accommodations: early as possible. If you require any additional accommodations, please let me know as 2