CS373: Intro to Theory of Computation
Spring 2010   - Professor Madhusudan Parthasarathy
Skills list for the second midterm

The second midterm will cover material from lecture 9 through lecture 17. The primary focus of the exam will be topics that were not covered on the first midterm. These include suffix languages, minimization of DFAs, proving non-regularity of languages directly (using MNT or pumping lemma) as well as by using closure properties of regular languages, algorithms on DFAs/NFAs/RegExp, Turing machines, designing Turing machines (both low-level and high-level), universal Turing machines, recognizability vs decidability, undecidability, and simple reductions for proving undecidability of languages. You are expected to also remember basic facts from earlier in the course that were covered in Midterm#1, but the exam won't probe for details that are easy to forget.

Here is a summary of the key new skills that will be tested on the midterm:

  • DFA minimization
  • Regular and non-regular languages
  • Turing machines
  • Simulations
  • Encodings
  • Decidable and undecidable problems
  • Proving languages undecidable