*Automata and Formal Languages* is an introductory
course to automata, formal languages, computability and
computational complexity. In addition to traditional lectures,
weekly homework assignments are to be handed out. Also, there
are a midterm and a final.

- Course Overview
- Syllabus (ps)(pdf)
- Administrative Information (Please find course schedules here)
- Posted Messages (If you have never received these messages, please contact me !)

- P. Linz. An Introduction to Formal Languages and Automata (second edition). DC Heath, 1966.
- Harry R. Lewis and Christos H. Papadimitriou. Elements of the Theory of Computation (second edition). Prentice-Hall, Inc. 1998.

- Some examples of proofs (ps) (pdf)
- A useful lemma and some applications (ps) (pdf)
- GCD is a polynomial time algorithm (ps) (pdf)

- Assignment 1 (ps)(pdf) (due
**Friday, Sep 29, 2000**)

Here are four inputs for M1 and M2 in Exercise 6: (str1) (str2) (str3) (str4)

Please present the results you obtain from running your implementation on these inputs. - Assignment 2 (ps)(pdf) (due
**Monday, Oct 9, 2000**)

Here are some inputs for Exercise 3 in Assignment 2: (word1) (word2) (word3) (word4)

Please present the results you obtain from running your implementation on these inputs.Here are some inputs for Exercise 4 in Assignment 2: (NFA1) (NFA2)

Please present the results you obtain from running your implementation on these inputs. - Assignment 3 (ps)(pdf) (due
**Friday, Oct 13, 2000**) - Assignment 4 (ps)(pdf) (due
**Friday, Oct 20, 2000**) - Assignment 5 (ps)(pdf) (due
**Friday, Oct 27, 2000**) - Midterm (ps)(pdf) (On
**Friday, Oct 30, 2000**) - Assignment 6 (ps)(pdf) (due
**Monday, Nov 13, 2000**)Here is an example of Turing Machine in text representation: (TM01.txt)

This TM is supposed to recognize the language {1^n#2^n#3^n | n > 0}, where we use a^n to mean n a's in a row. - Assignment 7 (ps)(pdf) (due
**Monday, Nov 13, 2000**) - Assignment 8 (ps)(pdf) (due
**Monday, Nov 20, 2000**) - Assignment 9 (ps)(pdf) (due
**Monday, Dec 1, 2000**) - Some problems for final preparation (ps)(pdf)

- Solution 1 (ps)(pdf)

- Solution 2 (C code for Exercise 3 by Sanjiv Pandey)

- Solution 3 (ps)(pdf)

- Solution 4 (ps)(pdf)

- Solution 5 (ps)(pdf)

- Solution to Midterm (ps)(pdf)

- Solution 6 (C code for a Turing Machine Interpreter by Mike Meiner) (C++ code for a Turing Machine Interpreter by Yuemin Wen)

- Solution 7 (ps)(pdf)

- Solution 8 (ps)(pdf)

- Solution 9 (ps)(pdf)

- Solution to Some of the Warm-up Questions (ps)(pdf)

Hongwei Xi Last modified: Tue Mar 27 14:28:07 EST 2001