CS180
Automata Theory
Instructor
Frederic Green, Mathematics/Computer Science, BP334, ext. 7410. E-mail:
fgreen <at-sign> clarku <period> edu.
Text
Introduction to the
Theory of Computation, by Michael Sipser (Cengage Learning).
Purchase
or rental information.
Lectures
Tuesdays and Thursdays, 9-10:15am, BP326.
Office Hours
Tuesdays and Thursdays 10:15-11am, 1:30-4.
Or contact me for an appointment.
Teaching Assistants
Nathan Dang, nadang <at-sign> clarku <period> edu. Consultation hours: Monday and Wednesday 7-9pm, in S122.
Course Goals
To understand the nature of computation and formal languages by studying
the underlying theory. We will explore the notion of a "language recognized
by a machine", progressing to languages of higher complexity and machines
of greater power: that is, regular languages (with their machine equivalents,
finite automata), context-free languages (pushdown automata), and unrestricted
languages (Turing machines). Finally, the Turing machine will be used to
begin building the general theory of computation and we will encounter the
notion of unsolvable problems.
Course Work and Grading Policies
Your attendance in class is expected; attendance and participation counts 10%.
There will be a number of written homework assignments, to be lightly graded,
worth a total of 20%. We will have 7 to 9 in-class quizzes (10-25 minutes), worth a total of
40% (there is otherwise no midterm). Finally, there will be a final exam worth
30%. Almost all work in this course will
deal with mathematical proofs.
Lateness Policy: Unless otherwise noted, all assignments are due at 9am on the due date, in lecture. Late work is not accepted.
Academic Integrity
This course is conducted in accordance with Clark University's rules
on academic integrity, which you should read
here.
It applies in this course, in particular, to quizzes, the final, and certain
homework assignments. Naturally, no collaboration of any kind is tolerated on
quizzes or the final. On designated assignments, open collaboration will
be allowed. However, even on these assignments,
in any solutions you obtained in collaboration with another student, even if you wrote them up in your own
words, you must write down, in the assignment, with whom you worked. In other designated assignments,
you will be expected to
work completely on your own.
Breaches of academic integrity will be dealt with severely.
Course Outline
Topics will closely follow those in the text [we are covering chapters
and/or sections that have the same numberings in the second and third editions]. This is subject to change:
- Mathematical Preliminaries [0]
- Finite Automata [1.1, 1.2]
- Regular Expressions [1.3]
- The Pumping Lemma for Regular Languages [1.4]
- Context-Free Grammars [2.1]
- Pushdown Automata [2.2]
- The Pumping Lemma for Context-Free Languages [2.3]
- Turing Machines and the Church-Turing Thesis [3]
- Decidable Languages [4.1]
- Undecidable Languages [4.2, 5.1, 5.2]
- Introduction to Complexity Theory (time permitting)
[7.1-7.3]
Back to Fred Green's Home
Page