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.

CS 454 Signature Project

This discussion of an evolving approach for a CS 454 Signature Project is organized into three sections:

Motivations

This approach for a CS 454 Signature Project has at least three motivations:

Computing and Current Events

In recent years, news reports have focused on the impact of` technology on contemporary life. For example, many stories discuss the use of computing and algoritms on policing, the justice system, the approval of personal loans and mortgages, job hiring and promotions, salaries, etc.— all raising issues of bias, diversity, and equity.

In contrast, many STEM courses focus on technical issues, problem-solving approaches and techniques; and many STEM students may be unaware of the consequences of technology.

A Signature Project can help connect technical aspects of computing with social and ethical impacts. In an upper-level course, students already have developed theoretical and practical perspectives within a technical context, and direct engagement with current events can provide additional insights and understandings of how computing can impact a variety of stakeholders.

Although a project within a single course is unlikely to transform student thinking about the role of computing in society, an engaged activity may plant seeds for future thought.

Written Technical Communication Skills

Professional work within computing requires computing people to work within teams, communicate with clients, and collaborate with professionals with other specialties. For the most part, today's projects are far too large and complex to be created by people working alone. Individuals may have wonderful ideas, but potential advances do not gain traction if the creators cannot communicate effectively with both small and large groups.

As a result, national curricular recommendations for undergraduate computer science highlight the need for students to develop strong communication skills. Further, SSU as a liberal arts institution expects students to to sharpen their communication skills through a variety of courses.

Altogether, computing students are well served if they can practice technical writing at the upper level, obtaining guidance on how to organize and present material and receiving constructive feedback on their own work.

Within the limits of a one-semester course, CS 454 will focus on technical writing, rather than oral communication.

SSU's Gen. Ed. Area B Requirement

SSU's Upper Division GE Area B: Scientific Inquiry and Quantitative Reasoning is described as follows in the SSU Catalog,

Upon completion of the Upper Division GE Area B requirement, students will be able to:
  • Interpret, evaluate, and employ quantitative analysis and arguments
  • Synthesize and apply theoretical and practical perspectives from multiple disciplines to develop and understanding of complex issues
  • Apply knowledge, skills, and multiple perspectives in new situations to analyze and formulate solutions to complex problems with confidence and creativity

SSU specifies that "Every GE course must include a Signature Assignment", which in turn must include a self-reflection.

Over the years, the SSU CS faculty have decided that CS 454 is an appropriate course through which students can meet this General Education requirement.

Project Overview

The Signature Project for this section of CS 454 has three components, with a fourth component available for extra credit.

Reminder Concerning 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.

For each of the papers described below, submitted work must be typed (e.g., using a word processing package) with 1" margins and using at least 12-point font.


Required 2-3 Page Paper Reporting a Current Event

Summary: Select an approved news story related to computing (but not involving gaming or video games), and write a 2-3 page paper describing multiple components of the story.

Due Dates (all materials due at the start of class):

Target Audience: Students with only modest CS background, such as those taking CS 215. (Thus, relatively little technical jargon should be used.)

Assignment Details: Write a 2-3 page report, based on a news story, integrating technical components behind the story with potential impacts on the developers, users, and/or outside groups.

Sample Current Event Reports: Although both the content and form expected for this assignment will be discussed in class, the following samples illustrate appropriate responses to tis assignment.


3-4 Page Paper Describing an NP-complete Problem

Summary: Select an approved NP-complete problem, and write a 3-4 page page that includes four components:

Due Dates (except as noted, all materials due at the start of class):

Target Audience: Students with modest knowledge of the concept of NP-completeness, but without a knowledge of specific NP-complete problems.

Assignment Details: Write a 3-4 page report identifying an NP complete problem, including a careful statement of the problem, an example of the problem and its solution, a discussion of why the problem is in Class NP, and a proof outline that shows the problem is NP Hard.


Required Self Reflection

Summary: Write a self reflection that connects work done in this course with other course work in computer science and with the application and/or use of computing in contemporary life.

Due Date (at the start of class): Thursday, May 9

Target Audience: This paper will be shared with the SSU General Education Committee and possibly CS faculty and some SSU administrators. As the SSU GE Committee and SSU administrators include people from a variety of disciplines, one should not assume readers will have substantial background in computing. (Pending instruction to the contrary from the SSU Committee or CS faculty it is not intended that this paper will be distributed to students.)

Assignment Details: Since this course has been designated to meet SSU's Upper Division GE Area B: Scientific Inquiry and Quantitative Reasoning, including a Signature Assignment with a self reflection, this course requires that you write about what you have learned from this course, and how it carries over into your broader studies and experiences at sSSU and beyond. To meet this requirement, please include answers to the following:

In particular, you should devote at least one paragraph (each with 6 sentences) addressing each question, yielding at least a full page,


Optional 2-3 Page Paper Reporting a Current Event for Extra Credit

Summary: For extra credit, select a second approved news story related to computing (but not gaming or video games), and write a 2-3 page paper describing multiple components of the story.

Due Dates (all materials due at the start of class):

Target Audience: Students with only modest CS background, such as those taking CS 215. (Thus, relatively little technical jargon should be used.)

Assignment Details: This extra-credit opportunity involves writing a 2-3 page report, based on a current event, following a somewhat simplified process than used for the required current event paper.


Some Additional Details

This section should be considered incomplete and under development!

Formats for Citations and Reference Sections

Formats and details for in-text citations and References Sections in journals and other publications vary by discipline, and different computing venues may vary somewhat in their specifications. However, most computing-related publications agree on several principles which also are mandated for this course.

Additional guidance regarding formating may be found in the instructions for authors for the computing-publication ACM Inroads from the Association for Computing Machinery (ACM).
created May 6, 2023
revised May 10, 31, 2023
revised Fall, 2023
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.
ccbyncsa.png

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.