CS 454, Section 001 Sonoma State University Spring, 2026
 
Theory of Computation
Instructor: Henry M. Walker

Lecturer, Sonoma State University
Professor Emeritus of Computer Science and Mathematics, Grinnell College

Although much of this course has been well developed in recent semesters, some details may be adjusted from semester to semester.
In particular, the Signature Project for this course satisfies SSU's Upper Division GE Area B Requirement for CS Majors, but details of this project likely vary from instructor to instructor and from semester to semester.
In particular,

Assignment on Turing Machines

  1. Turing Machine for 2 a's: Consider an input alphabet Σ = {a, b}, and let L = {strings w over Σ | w contains two consecutive a's}. Design a Turing machine that accepts the language L. Write out your machine in full, both using a complete transition table and using a state diagram.

    Consider the input alphabet for this problem to be {a, b}.

  2. Turing Machine for Palindromes: Design a Turing machine that reads a string s and returns the string ssR, where sR is the reverse of the string s. For example, given the string "abbaa", the Turing machine should halt after "abbaaaabba" is printed on the tape. As in Problem 1, write out your machine in full, both using a complete transition table and using a state diagram, and consider the input alphabet to be {a, b}.

  3. Derivations of Context Free Grammars in Chomsky Normal Form:

    1. Suppose G is a context free grammar in Chomsky Normal Form, and suppose s is a string of length k that is generated by G. Show that the derivation of s will require exactly 2k-1 steps.
    2. Give an example to illustrate why a proof of part a by mathematical induction might be extremely difficult, if not impossible.
  4. Proof Summaries: Behind the proof of each theorem lies an idea. The details of a proof may require extensive exposition, but the underlying idea often can be explained in several sentences. For each of the following theorems, write an explanation (in your own words) of why the result is true; what is/are the main idea(s) of the proof.

    1. Theorem 3.13
    2. Theorem 3.16

    Notes:

created Fall, 2023
revised Fall, 2023
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.