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. For example, the Signature Project for this course has satisfied SSU's Upper Division GE Area B Requirement for CS Majors for several years, and satisfying that requirement again this semester. However, details of this project likely vary from instructor to instructor and from semester to semester. Also,

Assignment on Turing Machines

  1. Turing Machine for strings containing a y after every x: Consider an input alphabet Σ = {x, y}, and let L = {strings w over Σ | w contains a y immediately after every x}. For example, strings yyyy and xyyyxy are in L, but xyxxyxy is not.

    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 {x, y}.

  2. Turing Machine to duplicate a string: Design a Turing machine that begins with a string s on the tape and returns the string ss. For example, given the string "abbaab", the Turing machine should halt after "abbaababbaab" (and nothing else) appears 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: 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.

  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 2.34 (Note: This may be somewhat of a review—or maybe not)
    2. Theorem 3.13
    3. Theorem 3.16

    Notes:

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

Copyright © 2011-2026 by Henry M. Walker.
Selected materials copyright by Marge Coahran, Samuel A. Rebelsky, John David Stone, and Henry Walker and used by permission.
This page and other materials developed for this course are under development.
This and all laboratory exercises for this course are licensed under a Creative Commons Attribution-NonCommercial-Share Alike 4.0 International License.