|
C SC 573/ MATH 573 |
Theory of Computation |
| Time and Place | TR 2:00-3:15, Gould-Simpson 701 | ||||||||||||||||||||||
| Description |
The course begins by reviewing properties of major language classes in the
Chomsky Hierarchy. Universal computation models besides Turing machines,
such as general recursive functions, are examined to amplify the significance
of Church's thesis. Unsolvable problems and reducibility are studied.
The bulk of the course then focuses on what every student should know about
machine-specific complexity theory, the interrelationships among complexity
classes, and the study of both NP complete and provably intractable problems.
Topics covered include Church's thesis, undecidability, complexity theory
and intractable problems.
The course stresses methods for formal reasoning and modeling of general computation. The emphasis will be on written problem sets containing challenging problems. The key techniques to be learned are those of simulation of one computational model by another, reduction of one problem to another, and methods for classifying problem complexity. |
||||||||||||||||||||||
| Prerequisite |
C SC 473: Automata,
Grammars and Languages
is a mandatory prerequisite.
Without 473 or an
equivalent from elsewhere (typically entitled "Languages and Automata")
the likelihood of success in this course
is small.
We will need specific material and facts from the prerequisite course
and, more importantly, the mathematical maturity and methods of thought
introduced there,
and the ability to use standard language and notation.
The prerequisite material needed from C SC 473 is represented by Chapters 0-2 of the text used there: Michael Sipser, Introduction to the Theory of Computation, Boston: PWS Publishing Co., 1997. It is assumed you are familiar with the following topics: strings and sets (languages), DFAs, PDAs, regular sets, CFLs, nondeterminism, definitions of machine acceptance and the language accepted by a machine, the connection between types of grammars and types of machines, operations on languages such as union and star closure, and closure properties of the regular sets and CFLs. |
||||||||||||||||||||||
| Instructor |
Peter J.
Downey
pete at cs.arizona.edu (520) 621-2207 Gould-Simpson 739 Office Hour: TR 3:15 - 4:30 or by appointment via email outside these times. |
||||||||||||||||||||||
| Text | Available at UofA Bookstores. | ||||||||||||||||||||||
| Course Schedule |
|
||||||||||||||||||||||
| Course Format |
Grades for this course will be based in the following items:
|
||||||||||||||||||||||
| C SC Computer Lab Account |
For Everybody: All students are required to fill out the web page entitled Account Service Request at URL www.cs.arizona.edu/~apply. Do so whether or not you already have an account, and whether you are a Computer Science major or not. (This updates a Department database with your course selections, and you can be assigned a correct Computer Science ID (CSID) number). Here is how to proceed: For a student with a currently active account in C SC: At the web page, under Select the Action Desired, select UPDATE an OPEN account for new classes. Fill in other requested information. Read the Appropriate Use Guidelines at www.cs.arizona.edu/policies/computing.html before pushing ACCEPT. For a student without a currently active account in C SC: To obtain a new account on the Department's instructional processor lectura, or to re-activate an existing account, use any machine to go to URL www.cs.arizona.edu/~apply. (During the first week of classes, the Department provides machines for this purpose in Room 930 Gould-Simpson Bldg.) At the web page, under Select the Action Desired, select either NEW account on CS systems, or RE-activate an EXISTING closed CS account. Read the Appropriate Use Guidelines at www.cs.arizona.edu/policies/computing.html before pushing ACCEPT. Your registration information will be verified within a few minutes, and an account will be created for you, along with a keycard allowing round-the-clock lab access. The keycard will be available in Room 930 while the account registration machines are set up there, and at the Reception Desk in Room 917 thereafter. For Everybody: You will need to know your CSID. To find your CSID at any time, go to www.cs.arizona.edu/computing/services/csid.html. Enter your 9-digit Student ID (SID) without any hyphens, and push the submit button. Record your CSID for future reference. Grades will be posted using your CSID. |
||||||||||||||||||||||
| Policies |
Each graded item, such as a homework or examination, is first awarded a raw score; raw scores vary with the number of questions, their difficulty, and their length. For each graded item, the raw score is normalized to a ``traditional'' scale in which 90 - 100 is an A, 80 - 89 is a B and 70 - 79 is a C. For each graded item, only the normalized score is recorded. The final cumulative course grade is computed as a weighted average of these normalized scores, using the weights described under Course Format above. The resulting weighted average is then converted to a letter grade using the ``traditional'' scale. Decisions on whether borderline scores (such as 89) will be recorded as the next highest letter grade will be made using (a) performance on the final examination and (b) evidence of accomplishment in the subject that is cumulative over the term. Attendance is not enforced, but you are responsible for all material covered in lecture or assigned as reading. Arriving late to class is rude and disruptive; if you cannot arrive on time, don't bother to come. Without prior arrangements, missed exams result in a grade of zero. Homework is due at the start of class on the due date; late homework is not accepted. It is assumed that: you have the prerequisites for this course, and their prerequisites, etc., recursively. The instructor reserves the right to fail for the course any student failing the final comprehensive examination. The content of this syllabus is subject to change at the discretion of the instructor. |
||||||||||||||||||||||
| Academic Integrity |
Assignments in this course require individual attention and effort to be of any benefit. All work is expected to be that of each student alone, without consultation with others, without reference to borrowed solutions and not the product of team efforts or collaboration with other authors. Plagiarism is the incorporation of someone else's words or ideas without proper attribution, whether taken from another student, an author, the instructor's published solutions or the Internet. Plagiarism constitutes theft of intellectual property, and those who engage in it will receive the failing grade of ``E''. These and other provisions are governed by the University's Code of Academic Integrity which applies to all those in this course. It is a violation of the Code to use another person's solutions as your own, whether those solutions are taken from a student in this course, or taken from solutions obtained from an earlier offering of this course, or taken from the files of a student who took this course earlier. A synopsis of the Code of Academic Integrity is attached as part of this syllabus. |
Assignment Format |
All written work submitted for credit must be prepared using a program capable of producing typeset output with the appropriate type faces, symbols and notation used in the theory of computation (e.g., TeX, LaTeX, troff, Microsoft Word + Equation). Do not submit handwritten work. Diagrams should be prepared with drawing tools like xfig, picasso, PowerPoint, etc. Start each solution on a new page, repeat the problem statement, and number each page. Write on one side of the paper only. Submit answers in the labeled manila envelope (provided in class) on or before the due date. Do not seal the envelope (in order that it may be reused.) Write concise and limpid solutions, as failure to communicate clearly will cost points whether or not the conclusion is correct. It is highly advisable to revise your work before submission, and to consider whether your argument will be understandable to the reader. It is never a waste of effort to explain the strategy of what you intend to do in a proof or construction, before beginning the work in detail. |
||||||||||||||||||||
| Accommodation |
Students with disabilities, who may require academic adjustments or reasonable accommodations in order to participate fully in course activities or to meet course requirements, must first register with the Disability Resource Center, 1540 E 2nd St, 621-3268, email drc@w3.arizona.edu, URL http://drc.arizona.edu. DRC staff will qualify students for services, and provide a letter to be submitted directly to the instructor during the first week of classes. |
||||||||||||||||||||||
| Syllabus |
Other Course Information
|
|
Lecture Slides
|
|
PDF versions of lecture slides are placed here.
Homework, Reading & Exams
|
|
Final Exam Grades
|
|
Exam grades are posted here. Grades are posted by the last six digits of your "Computer Science ID" (CSID). To find your CSID at any time, go to www.cs.arizona.edu/computing/services/csid.html.
|