CS 454, Section 001 | Sonoma State University | Spring, 2026 |
Theory of Computation
|
||
Instructor: Henry M. Walker
Lecturer, Sonoma State University |
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,
As you know, the purpose of a formal proof is to provide a logical and convincing argument to the reader concerning the validity of a statement. Altogether, a proof serves as a careful communication between the proof's author and its reader.
Note: This assignment buildings upon the handout, 3 Inductive Proofs and an Alternative Proof for Theorem: n odd implies n2 odd, discussed in class.
Characteristics of well-structured and clear proofs have been discussed in class! See the instructor, should you have questions or comments.
Some key elements include logical structure, clarity, and the target audience.
As with any communication, an argument must be logically structured—the reader should be led through steps piece-by-piece. For example, a proof should start with statements known to be true plus any initial hypotheses that are explicitly asserted. Each subsequent assertion must be justified based on earlier established truths. Throughout, claims should be clearly written, and reasons behind each claim must be included.
In addition, at Sonoma State, academic work is communicated in English (except for foreign language courses). Thus, rules of English grammar, syntax, etc. must be followed. For example, discussions should not contain sentence fragments, pronouns must have proper antecedents, etc.
Further, to be effective, any communication must take into account the background and experience of the person(s) in a designated target audience. Examples:
As another example, within economics, a discussion of marginal revenue and marginal cost simple can identify these functions as the derivatives of revenue and cost functions, if a targeted reader knows calculus. However, a much more descriptive discussion likely would be needed for readers who lack a calculus background.
For CS 454, we will assume students are comfortable with background from the prerequisite courses, particularly CS 242, Discrete Structures, and CS 315, Data Structures, which in turn requires CS 215, Programming II (including basics of Object-oriented Programming), and CS 242, Discrete Structures. However, for CS 454, background in computer architecture, operating systems, or databases cannot be assumed.
All of this suggests that a formal proof should include sufficient detail to guide the reader through the logical steps, but the proof can (and likely should) omit detail that the reader is already comfortable with.
To highlight qualities that yield effective proofs for the CS 454 target audience, consider file proof-samples.pdf, which presents six different proofs of a standard result in set theory that also can be quite useful within computer science:
Theorem: Let S be a set with n elements. Then S has 2n subsets.
In this assignment, you are to review each proof and consider to what extent the proof is correct, logically organized, clear, and complete for students in the target CS 454 audience.
Notes:
Consider Proofs 1 and 2, as presented in proof-samples.pdf.
For each Proof, answer the following questions—being as specific as you can in each answer. (For example, rather than stating that a part of the proof is not clear, indicate what part(s) need attention and outline how those part(s) could be made clearer.)
Compare Proofs 1 and 2 regarding their effectiveness in presenting a logical argument.
For each Proof, answer the following questions—being as specific as you can in each answer. (For example, rather than stating that a part of the proof is not clear, indicate what part(s) need attention and outline how those part(s) could be made clearer.)
Comparing Proofs 1, 2, 3 and 4 regarding their effectiveness in presenting a logical argument.
Consider Proofs 5 and 6, as presented in proof-samples.pdf.
For each Proof, answer the following questions—being as specific as you can in each answer. (For example, rather than stating that a part of the proof is not clear, indicate what part(s) need attention and outline how those part(s) could be made clearer.)
Comparing Proofs 1 – 6 regarding their effectiveness in presenting a logical argument.
created Fall, 2023 revised Fall, 2023 |
![]() ![]() |
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |