CS 454, Section 001 | Sonoma State University | Spring, 2024 |
Theory of Computation
|
||
Instructor: Henry M. Walker
Lecturer, Sonoma State University |
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.
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.
Decidability of Whether a Regular Language is Empty: Consider the question of whether a regular language L is empty. The following proof outline claims to prove this question is decidable.
Proof Outline:
Exercise: Is this proof outline valid? That is
Decidability of Whether a Regular Language is Infinite: Consider the question of whether a regular language L is infinite, and consider these claims. Use the same notation (L, R, c) as in the previous problem.
Proof Outline:
Exercise: Is this proof outline valid? That is
Decidability of Whether a Context Free Language is Empty or Infinite:
Pythagorean Triples as Roots of a Polynomial: In number theory, a Pythagorean triple consists of three positive integers (a, b, c), so that a2 + b2 = c2. Also, a polynomial of three variables p(x, y, z) is a sum of terms as described during the discussion of Hilbert's Problems in Section 3.3. In this problem, we consider only polynomials with integer coefficients.
Consider the language Polyint = {p(x, y, z) | p(x, y, z) is a polynomial with integer coefficients, such that there exists a Pythagorean triple (a, b, c) where p(a, b, c) = 0}
Show that Polyint is Turing recognizable.
Reviewing the Halting Problem: The Halting Problem is said to be "unsolvable".
How Far Can Automated Testing/Program Verification Go? A company believes there would be a strong market for a software package that would take the specifications of a problem and the code for a program as input and would prove whether the program meets its specifications in all cases. That is, the software package would prove whether or not a program always meets its specifications.
Although the prospect of such software package might capture one's imagination, such can package cannot be successfully produced. Explain why an error-free version of this software is impossible to develop.
created Fall, 2023 revised Fall, 2023 |
|
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |