CS 454, Section 001 Sonoma State University Spring, 2024
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, the SSU CS faculty recently have approved an updated course description. Also, the required SSU Signature Project for SSU's Upper Division GE Area B Requirement for CS Majors has been rethought for this course. Currently, the Web site is reasonably stable, but modest refinements are likely. Check these pages regularly for adjustments.

Contract Negotiations Have Yielded a Tentative Agreement

Since May, 2024, the California Faculty Association (CFA) – the labor union of professors, lecturers, librarians, counselors, and coaches across the 23 California State University campuses – has been in negotiations with the management of the California State University System. After a one-day strike on Monday, January 22, the two sides have reached a tentative agreement, and the strike has been called off. Effective Tuesday, January 23, SSU classes (including CS 454) will be held as scheduled.

  Course Descriptions:  Overview  Goals and Objectives  Signature Project  Anticipated Work Load
  Course Elements:  Class Schedule  C/C++ Style Guide.  Class Format  Course Work
  Course Details  Deadlines, Emergencies, and Illness  Collaboration and Academic Honesty  Cell Phones  Grading
  Course Support
  and Policies:
 Instructor  Resources  SSU Recommended Statements  Accommodations


In Summer-Fall 2023, Computer Science faculty approved the following updated course description for CS 454, Theory of Computation.

Course Description (updated Summer-Fall, 2023):

This course studies abstract models of computation, including their formal definition, corresponding languages, computing power, and capabilities. Models studied will include finite automata, push-automata/regular expressions, and Turing machines. Related topics will include regular languages, context-free languages, time and space complexity, Classes P and NP, intractable problems and unsolvable problems.

This description brings together at least two recent catalog statements and highlights the primary topics within the field.

In addition, the SSU CS faculty have designated CS 454 as the course that will meet SSU's Upper Division GE Area B Requirement for CS Majors.. Thus, in addition to providing a solid background related to the "Theory of Computation", the course also includes a Signature Project that involves multiple assignments with current, computing-related news events, a paper integrating several key theory-oriented topics, and a self-reflection exercise.

Course Meeting Information:

Goals and Objectives

Expanding on the course description, CS 454 has these high-level goals and objectives related to the Theory of Computation:

SSU's Upper Division GE Area B Requirement and the Signature Project and SSU's expectations for a Signature Project have additional goals and objectives: For CS 454, these are adapted to include the following:

Since each component of the Signature Project involves writing a paper, and since students will receive feedback on their papers from the instructor and sometimes from their peers, students will receive guidance to improve their technical writing and enhance its effectiveness.

Anticipated Work Load

This course incorporates a variety of activities, From past experience, the time required for these activities will likely vary substantially from student to student and from one part of the course to another. For example, a student may need to devote considerable time and effort when starting a new or different topic, but the workload may drop noticeably when that material is mastered. Similarly, students may have markedly different experiences with technical writing, and the work required for developing a paper may vary substantially.

Such variation in student experiences complicates any estimation of the time individual students may need to devote to homework for this course. However, from past experience, students working steadily on the course likely should expect to allocate 10-15 hours per week to homework. Some students may require additional time for some weeks; some students may complete work in less time for some weeks. Conversations with computer science faculty and others suggest this time allocation is consistent with expectations for many courses at Grinnell College and Sonoma State University.


While the schedule for this course is expected to evolve, a detailed Tentative Class Schedule is posted with readings, labs and worksheets, in-class quizzes and tests, etc. This schedule will be updated as the course evolves.

Class Format

For variety, this course will utilize a variety of activities, including.

Course Work

Course Work will involve a combination of several activities.

Deadlines, Emergencies, and Illness


Worksheets and labs are due at the start of class, two class days after they appear on the Tentative Class Schedule. A penalty of 30% per class meeting will be assessed for any assignment turned in late, even work submitted at the end of a class.

Emergencies and Illness

Although dates for assignments, quizzes, tests, and the final exam are firm, I understand that circumstances arise when you are not able to attend class.

Absolute Deadline: All homework must be turned in by Thursday, May 9, at 4:00 pm;
assignments received after that time will not be counted in the grading of the course.

Collaboration and Academic Honesty

AI-sourced Materials: Use of ChatGPT (or other similar tools or software that generate suggested text) is not permitted in this class for any assignments. This course assumes that work submitted by students – all process work, drafts, brainstorming artifacts, final works – will be generated by the students themselves, perhaps with consultation with non-AI-produced materials. Thus, use of AI tools in this course will be considered a violation of SSU’s Cheating and Plagiarism policy and could result in failure of the assignment or failure of the course.

Written assignments (including written exercises and programs): All work is to be done individually. Further, as noted above, any use of AI-generated materials is explicitly prohibited for this class and will be considered a violation of SSU’s Cheating and Plagiarism policy. However, in preparing answers, students may utilize non-AI-sourced, outside sources (including consultation of in-class slides or the course textbook), provided students follow university-wide rules for quotation and citation.

Although non-AI-based, outside sources may be used (if properly cited), you are still responsible for the accuracy/correctness of what you submit. This foundational principle leads to several notes:

Quizzes and tests: All quizzes, tests, and the final exam are closed book and closed notes, and collaboration is not allowed. Students may ask questions of the instructor, but communication with any other person is not allowed.

Signature Assignments (papers comprising the overall Signature Project): Papers are to be written individually; organization and clear/concise writing are essential. Some signature assignments require direct quotation of a news story. Addition use of non-AI-generated, outside references may be useful, provided clear citation is given. Most of the writing, however, must be done by each student. AI-sourced materials may not be used.

Other Graded Work: Should other work be assigned during this class, rules regarding collaboration and citation will be included as part of the activity. AI-based tools, however, will never be allowed!

Citations and References: Following basic principles of academic honesty:

Further, all citations and references must specify actual sources. Fabricated citations or references will be considered evidence of academic dishonesty and subject to disciplinary action.

Procedures: Throughout the course, any hint of academic dishonesty will be investigated and handled following the SSU Policies on Cheating and Plagiarism.

Following a common practice in the Computer Science Department at Sonoma State University, the standard outcome in CS 454 for the first occurence of a student found responsible for cheating and/or plagiarism is:

A second offence typically would yield a semester grade of F for the course. Since all offenses are reported to SSU's Student Conduct Administrator, the student also may be subject to additional outcomes from the University. (At some schools, a second offence may lead to suspension or dismissal.)

Cell Phones, Text Messaging, and E-Community Devices

Cell phones, text-messaging devices, and other social-networking connections may not be used in this class. If you bring such equipment to the classroom, it must be turned off before the class starts and stay off throughout the class period. Use of such equipment is distracting to those nearby and will not be tolerated.



As an upper-level course, answers to assignments must demonstrate care in organization and presentation.

Semester Grades

This instructor's grading philosophy dictates that the final grade should ultimately be based upon each student's demonstration of her or his understanding of the material, not on the performance of the class as a whole nor on a strict percentile basis.

The following scheme is proposed as a base for how the various assignments and tests will be counted in the final grade.

Assignments: 35% Quizzes: 20% (4% each quiz–lowest quiz dropped)
Tests: 20% (10% each test)       Signature Assignments: 25% (current event 6%; NP-completeness 13%; self-reflection 6%)


Henry M. Walker

Office: Darwin 116B
Telephone: extension 707-664-4408
E-mail: henry.walker@sonoma.edu and walker@cs.grinnell.edu

Office hours are available with a combination of in-person and Zoom-based sessions, unless announced otherwise in class.

Monday: noon – 1:00 pm via Zoom (URL available on CS 454.001 Home Page on Canvas)
Tuesday: 3:00 pm – 4:00 pm in Darwin 116B (or the meeting area by Darwin's main entrance)
Wednesday: 7:00 pm – 8:30 pm via Zoom (URL available on CS 454.001 Home Page on Canvas)
Thursday: 3:00 pm – 4:00 pm in Darwin 116B (or the meeting area by Darwin's main entrance)
Friday: No office hours scheduled

During office hours, I will try to accommodate all students who want to talk with me, largely following a first-come, first-served strategy.

Additional office hours may be scheduled, in response to student demand.


The primary reference for this course is the book, Introduction to the Theory of Computation by Michael Sipser. Currently, both the second and third editions of this book are widely available, and either is acceptable. (The Third edition contains an extra section at the end of Chapter 2, but this section will not be used during the course. Otherwise the books seem to be nearly identical.) Overall any version of this book (paperback, hard cover, international edition) is fine, as long as the version specifies either the second or the third edition.

Current events for the Signature Project in this course may be found at either ACM News or Computer Weekly.

Discussions of NP-complete problems may be found through Web searches or from Computers and Intractability: A Guide to the Theory of NP-Completeness by Michael R. Garey and David S. Johnson, W. H. Freeman and Company, Jan 15, 1979, which is available free from academia.edu and can be ordered from from amazon.com.

SSU Recommended Statements

Statements in this section are quoted from language recommended by SSU.

Fires and/or Power Outages

Sonoma County has seen an increase in fire activity and public safety power outages that have had an impact on campus operations intermittently since 2017. In the event that we experience a similar disruption to our course this semester, I will communicate with class via email within 24 hours of the disruption around potential changes to assignments, due dates, or readings. If the disruption continues for more than one week of our regular class meetings, I will subsequently follow up on a weekly basis. Please sign up to receive university emergency alerts by texting SSUALERTS to 67283.

Religious Observance

The observance of religious holidays (activities observed by a religious group of which a student is a member) and cultural practices are an important reflection of diversity. As your instructor, I am committed to providing equivalent educational opportunities to students of all belief systems. At the beginning of the semester, you should review the course requirements to identify foreseeable conflicts with assignments, exams, or other required attendance. If at all possible, please contact me (your course coordinator/s) within the first two weeks of the first class meeting to allow time for us to discuss and make fair and reasonable adjustments to the schedule and/or tasks.

Flexibility versus Accommodations

I have designed the course to provide some flexibility for students who experience hardships related to COVID-19 and other illnesses, mental health challenges and family concerns. These include reasonable extensions on assignments, and opportunities to make-up exams. It is important to note that any flexibility that I provide is something that I would offer any student without compromising the learning outcomes or modalities of the course. For instance, I cannot change the course modality to online for a student, nor can I allow a student to use notes in a traditionally closed notes exam. The most important thing that you can do is communicate with me. I can work with you to determine what options there are for you to succeed.
This flexibility should not be confused with the term "accommodations" which is reserved for students referred to me by Disability Services for Students (DSS).


If you are a student with a disability, and think you may need academic accommodations, please contact Disability Services for Students (DSS), located in Schulz 1014A, Voice: (707) 664-2677, TTY/TDD: (707) 664-2958, as early as possible in order to avoid a delay in receiving accommodation services. Use of DSS services, including testing accommodations, requires prior authorization by DSS in compliance with university policies and procedures. See SSU's policy on Disability Access for Students

Counseling and Psychological Services (CAPS)

If you feel stressed or otherwise worried about your circumstances, you are encouraged to contact SSU's Counseling and Psychological Services. In summary, CAPS offers short-term individual and group counseling, workshops, crisis intervention services, consultation, referral, training, and outreach.

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

Copyright © 2011-2022 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.