CS 422 - Automata Theory

K. Subramani LDCSEE, West Virginia University, Morgantown, WV ksmani@csee.wvu.edu

1 General Information

(a) Instructor: K. Subramani

(b) Meeting Times: Tu-Th 08:00 am - 9:15 am Location: 207 ESB

(c) Contact Information: 749 ESB, ksmani@csee.wvu.edu

(d) Office Hours: Mon, Tu - 10:00 am - 11:00 am

(e) Textbook - [HMU01]

(f) URL - http://www.csee.wvu.edu/˜ ksmani/courses/fa04/at/at.html

(g) Assessment:

(a) Homework Assignment (2) - You will be handed a homework on September 7, due on September 14 and a second homework on October 19, due on October 26. Each homework is worth 10%, for a total of 20% of your grade.

(b) Quizzes (2) - The first quiz will be held on September 21, while the second quiz will be held on November 9. Each quiz is worth 10% (for a total of 20%) of your grade and is closed-book.

(c) Midterm - The midterm will be held on October 7 (in-class, closed book) and is worth 30% of your grade.

(d) Final - The final will be held on December 13 (in-class, closed book, 03 : 00 − 5 : 00 pm) and is worth 30% of

your grade.

(h) Grade Boundaries (a) A: 75 and up

(b) B: 65 − 74

(c) C: 50 − 64

(d) D: 45 − 49

(e) F: 0 − 44

(i) Grading policy - If you have any questions about the grading, you must contact the instructor within two days of your paper being returned.

(j) Makeup Policy - If for some reason, you are unable to attend a test or an exam, please meet me at the earliest and I will set an alternate date.

(k) Course Objectives - The objectives of this course are as follows:

(a) Present the theory of finite automata, as the first step towards learning advanced topics, such as compiler design.

(b) Apply the concepts learned in fundamental courses such as Discrete Mathematics, in a theoretical setting; in particular, the application of proof techniques.

(c) Discussing the applications of finite automata towards text processing.

(d) Develop an understanding of computation through Turing Machines.

(l) Expected Learning Outcomes - Upon successful completion of this course, students will be able to:

(i) Apply a number of proof techniques to theorems in language design.

(ii) Develop a clear understanding of undecidability.

(iii) Understand the equivalence between Non-deterministic Finite State Automata and Deterministic Finite State Automata.

(iv) Understand the equivalence between Context-Free Grammars and Non-deterministic Pushdown Automata.

(v) Appreciate the power of the Turing Machine, as an abstract automaton, that describes computation, effectively and efficiently.

2 Syllabus Sketch and Weekly Schedule

2.1 Introduction to Automata

Formal Proofs, Additional Forms of Proofs, Inductive Proofs, Central Concepts. These topics will be covered from Chapter 1 of [HMU01] (3 Lectures).

2.2 Finite Automata

An Informal picture, Deterministic Finite Automata, Nondeterministic Finite Automata, Finite Automata with ϵ-transitions. These topics will be covered from Chapter 2 of [HMU01] (5 Lectures).

2.3 Regular Expressions and Languages

Regular Expressions, Finite Automata and Regular Expressions, Applications of Regular Expressions, Algebraic Laws for Regular Expressions. These topics will be covered from Chapter 3 of [HMU01] (4 Lectures).

2.4 Properties of Regular Languages

Proving Languages not to be Regular, Closure Properties of Regular Languages, Decision Properties of Regular Languages, Equivalence and Minimization of Automata. These topics will be covered from Chapter 4 of [HMU01] (5 Lectures).

2.5 Context-Free Grammars and Languages

Context-Free Grammars, Parsers, Ambiguity in Grammars and Languages. These topics will be covered from Chapter 5 of [HMU01] (5 Lectures).

2.6 Pushdown Automata

Definition of the Pushdown Automaton, The Languages of a PDA, Equivalence of PDAs and CFGs, Deterministic Pushdown Automata. These topics will be covered from Chapter 6 of [HMU01] (5 Lectures).

2.7 Turing Machines and Undecidability (Optional)

Problems that computers cannot solve, The Basic Turing Machine, Extensions to Turing Machines, Restricted Turing Machines, Turing Machines and Computers, Undecidability. These topics will be covered from Chapters 8 and 9 of [HMU01] (4 Lectures).

I would like to reiterate that this is a sketch of the topics that we will be covering. For various reasons, I may choose to drop a mentioned topic or cover a new topic. In such cases, advance notice will be given.

3 Social Justice Statement

West Virginia University is committed to social justice. I concur with that commitment and expect to foster a nurturing learning environment, based upon open communication, mutual respect and non-discrimination. Our University does not discriminate on the basis of race, sex, age, disability, veteran status, religion, sexual orientation, color or national origin. Any suggestions to further such a positive and open environment in this class will be appreciated and given serious consideration. If you are a person with a disability and anticipate needing any type accommodation, in order to participate in this class, please advise me of the same and make appropriate arrangements with Disability Services (293 − 6700).

If you feel that you are being treated inappropriately or unfairly in any way, please feel free to bring your concerns to my attention; rest assured that doing so will not prejudice the grading process. In return, I expect you to behave professionally and ethically.

References

[HMU01] J. E. Hopcroft, R. Motwani, and J. D. Ullman. “Introduction to Automata Theory, Language, and Computation”. Addison–Wesley, 2nd edition edition, 2001.