CS 410/610: Theoretical Foundations of Computing

Syllabus:  Fall 2009

 

Instructor: Professor Sudkamp

Time: 4:10—5:50 Tuesday, Thursday

Room: 161 Rike

Office Hours: 3:00-4:00 Tuesday, Thursday, and by appointment

Office: 303 Russ Engineering Center

Email: tsudkamp@cs.wright.edu

Phone: 775-5118

 

 

This course is an introduction to one of the fundamental topics in the theory of computer science: computability theory. Computability theory is concerned with determining whether there is an algorithmic solution to a problem.  The study of computability uses the Turing machine as the basic computational model.  A Turing machine is a random access, read-write, finite state automaton.  Although the Turing machine provides a simple computational framework, the Church-Turing thesis asserts that any problem that can be solved in any algorithmic manner can be solved by a Turing machine. 

 

The text for the course is the third edition of Languages and Machines: An Introduction to the Theory of Computer Science. Some material from CS 466/666 and discrete mathematics is a prerequisite for this course.  It is assumed that students are familiar with finite state machines, inductive proofs, regular expressions, and derivation of strings using the rules of a grammar.  The background material may be reviewed in chapters 1, 2, 3, and 5 of the text.

 

 

Topics:  The topics to be covered in this course include

 

·         Review of naive set theory with emphasis on cardinality, diagonalization, and proofs of nonexistence using self-reference.  Countable and uncountable sets. Sections 1.1-1.3.

 

·         Turing machines as language acceptors.  Deterministic and nondeterministic machines.  Multi-track and multi-tape machines. Turing machines as enumerators. Chapter 9.

 

·         Decision problems.  Problem reduction. Church-Turing thesis.  Universal Turing machines.   Chapter 11.

 

·         Undecidability: The Halting Problem and other undecidable problems of algorithmic computation.  The Post correspondence problem.  Rice's theorem.  Chapter 12.

 

·         Functional characterization of computability. Recursive and mu-recursive functions.  Chapters 13.

 

 

Grading:  There will be five exams given during the quarter.  Fifty minutes of class on alternating Thursdays will be used for the first four exams.  The last exam will be given during the scheduled final exam time for this course.   The lowest score of the first four examines will be dropped. All students are required to take the last exam and its score cannot be dropped. The grade for the course will be determined by the scores of the four exams (best three out of the first four and the final).  Each exam that is counted will make up 25% of the course grade.

 

Grades will be assigned using the following scale:

 

   A - 90% or above

   B - 80% - 89%

   C - 70% - 79%

   D - 60% - 69%

   F - below 60%

 

I reserve the right to adjust (lower) the scale to utilize gaps in the distribution, but this will be done minimally if at all. 

 

The exams for graduate students will contain more problems than the undergraduate exam.  These additional problems will be more theoretic in nature, reflecting the added sophistication expected of graduate students.  They will also cover material in the readings that may not be represented in any of the assigned homework.

 

All exams are open book (no notes): it is not the objective of this course to be an exercise in memorization.  However, over reliance on the book is a sure-fire way to do poorly on an exam.  Know the material before and use the book only as a safety net.

 

There are no makeup exams except for documented emergencies. Examples of acceptable documentation are a letter from a doctor (on his/her letterhead) indicating that you were unable to take the exam due to illness or a letter from an employer indicating that you will be out of town on company business at the scheduled exam time.  A missed exam counts as a 0 and may be dropped as the lowest score.

 

Exam Dates:

 

Thursday, September 17

Thursday, October 1

Thursday, October 15

Thursday, October 29

Tuesday, November 18 5:45-7:45 pm

 

 

There will be homework, both reading and exercises, assigned at each class. The homework will not be collected, but is assigned to increase your understanding of the topics and to help you prepare for the exams.  Time will be taken in each class period to discuss homework assigned in the previous class.  I urge you to work together on the homework problems.  This makes the entire process more enjoyable and fruitful.  Sharing your ideas and listening to those of others will increase your understanding and facilitate the solution of the problem.

 

 

Office Hours: My office hours for the fall quarter are given on the first page of this syllabus.  For students who are not free at these times, see me, email me, or call me and we will arrange a time that is convenient for you.    My office is 303 Russ Engineering. 

 

For general questions, you may reach me by email at tsudkamp@cs.wright.edu or call 775-5118.  The e-mail and telephone are for procedural questions such as "when is the exam?" or "what will be covered?" or "what did I miss in the last class when I was kept away by the hurricane?"  For answers to homework, exam problems, or help on course topics see me in person.

 

Attendance: Attendance at classes is strongly recommended.  If you miss a class, it is your responsibility to obtain class notes from other students to be prepared for subsequent topics.   As noted earlier, there will be no make-up exams except for documented emergencies.