Académique Documents
Professionnel Documents
Culture Documents
Document prepared by assistant professor Jeff Kinne on August 12, 2010. For further questions
about the exam, contact Jeff (at jkinne@indstate.edu or in his office, RO 156 Root Hall).
Background The course description for CS 620 Advanced Theory of Computation states that
taking 420/520 (the undergraduate version of the course) is a prerequisite. We experimented
with allowing courses at other universities to count for this prerequisite, and the results were not
desirable. The students did not in fact have the necessary background, and 620 degenerated into
being essentially the same as 420/520. This is a disservice to our students and to our program.
Thus, we have amended the prerequisite requirement. A student taking 420/520 at ISU and
obtaining a sufficient grade can take 620. Otherwise, we will offer an entrance exam into the
course. The exam is designed to (i) ensure that the student has the necessary background to
succeed in an advanced, graduate-level theory course, and (ii) ensure the student has knowledge of
the fundamental material covered in 420/520.
Exam format and syllabus The Michael Sipser text Introduction to the Theory of Computation
serves as the syllabus for the test. 420/520 generally covers chapters on background, regular
languages, context-free languages, the Church-Turing thesis, decidability, reducibility, and time
complexity (these are chapters 0-5, 7 in the text).
The exam consists of a number of questions, testing basic knowledge of this material. The
difficulty of these questions is at the level of the basic examples, exercises, and problems from the
Sipser text. We do not expect the student to remember every detail from a course that may have
been taken a few years ago, so we will be somewhat lenient in grading and the questions on this
exam will be easier than those that would be given to students taking the 420/520 course. For
example, the student should give reasonably correct answers to at least half of the questions to
pass this exam.
The student will be given a few hours to take the exam in the presence of a faculty member.
A student who has recently taken 420/520 and done well would likely finish the exam in 30-60
minutes.
On the next page is a sample exam.
1
1. Regular languages.
a) Give a deterministic finite automata for the set of binary strings corresponding to even
numbers. Leading zeros in the binary string are allowed, so 0010 is a valid binary string
representing the number 2.
b) Give a regular expression for the set of binary strings corresponding to odd numbers.
Leading zeros in the binary string are allowed, so 0011 is a valid binary string representing
the number 3.
2. Context-Free Languages.
a) Give an example of a problem that is not regular (there is no deterministic finite au-
tomata for the problem) but that can be decided by a deterministic pushdown automata
(a deterministic finite automata that also has access to a stack).
b) Give the pushdown automata for the problem.
c) Prove the problem is not regular.
3. Turing Machines.
4. Decidability.
5. Time Complexity.