Document URL: http://www.cs.arizona.edu/classes/cs473/fall11/


The University of Arizona

University of Arizona, Department of Computer Science Seal of The University of Arizona

Fall 2011

C SC 473

Automata, Grammars and Languages


Class Meetings: This course is available in traditional lecture format, meeting twice a week. It is also available for on-line registration. The choices are:
  • Traditional Lecture section: Students who attend in-person register for C SC473 Section 001, meeting Tue & Thu 2:00-3:15, in the Education (EDUC) Building (just east of the 2nd St Parking Garage), in Room 353
  • On-line section: On-line students must register for C SC473 Section 910 through the Outreach College at outreachcollege.arizona.edu. Interaction with--and materials for--Section 910 are provided via the University's D2L (``Desire To Learn") course management system. To access this course on-line:
    • go to the D2L login page at d2l.arizona.edu.
    • Enter your UA NetID and password.
    • On the resulting ``My Home" page will be a link to your ``Course Home" page for C SC 473.
    See the section below on D2L to learn more about how to access this course on-line.
Web Page The Web site for C SC473 is: www.cs.arizona.edu/classes/cs473/fall11. This document is the one you are reading now, and contains general information about the course, policies, notes, assignments, schedule information, etc. There is also a link to it on your D2L ``Course Home" page.
D2L Both the course Web page and the D2L pages for the course are accessible to all students, whether in-person or on-line. It is worth familiarizing yourself with the D2L pages for this course. Changes will occur throughout the semester, and you are expected to visit your ``D2L Course Home" page regularly.
  • Start here: D2L Tip Sheet
  • Your D2L ``Course Home" page is accessible via d2l.arizona.edu. You must be registered for C SC 473 to gain access. After entering your UA NetID and password, you will be connected with your D2L ``My Home'' page, which was initialized for you at registration. The ``My Home" page contains a link to your ``Course Home" page for C SC473.
  • The D2L ``Course Home" page will have lecture notes, in paper form and video ``podcast" form, as well as homework assignments and any other handouts.
  • To learn more about how to use D2L, see the ``Desire2Learn Help" pages at help.d2l.arizona.edu. There are useful video tutorials at help.d2l.arizona.edu/students/home
About Video Lectures are not broadcast in real time. Instead lectures will be recorded, processed and available for viewing through D2L a few hours after class. These video recordings are available to both on-line and in-person students, and will remain accessible for review throughout the semester.

Lectures will be available in the following form:

  • Screen Capture (Screencast): an application (Podcast Capture) records whatever is showing on the classroom projection screen (including the cursor), and simultaneously records audio. This allows lecture slides to be recorded along with audio of explanations and discussion. Video of the general classroom and video of the instructor are not included in a screencast. Each day's screencast (a.k.a. podcast) will be available, after 8-12 hours of delay, on the D2L site. On the ``Course Home" page, click ``Content" on the navigation bar. Scroll down to ``Screencasts" in the outline of topics, and choose the lecture for the desired date. The link naming convention for screencasts is classNN-473-MM-DD giving the class number, the month and date. (For example, the screencast of the first class will appear as class01-473-08-23.) The file that opens contains a link http://fosters ...-800kbps.mov that will in turn open a window for streaming video.
Depending upon the number of on-line registrants, full video of the class lectures may be available as follows:
  • Class Camera Videos: An HD digital camcorder, positioned at the rear of the classroom, will capture image and audio of the podium, stage, instructor, screen and student interactions. Each day's video will be available, after some hours of processing delay, on the D2L site. On the ``Course Home" page, click ``Content" on the navigation bar. Scroll down to ``Class Camera Videos" in the outline of topics, and choose the lecture video for the desired date. The link naming convention for class camera videos is CSC473_MM_DD_a for the first part and CSC473_MM_DD_b for the second part. (For example, the class camera videos of the first class will appear as CSC473_08_23_a and CSC473_08_23_b). Each file that opens will in turn contain a link http://fosters ...-800kbps.mov that will open a window for streaming video.
Besides being accessible via the class D2L page, both the screencasts and (if provided) class camera videos are available through UA's iTunes U site.
    • Go to the page http://itunes.arizona.edu/private/private.jsp
    • Click the blue button "Professors and Students"
    • Scroll down several frames to a frame with the title ``Computer Science Courses"
    • Select ``Computer Science Fall 2011 Courses"
    • Select ``CSC473 Automata, Grammars and Languages"
    • In the page for CSC473, there are two tabs marked ``Screen Captures" and ``Class Camera". Pushing a tab displays a list of streaming video files. The file name format for screencasts is classNN-473-MM-DD giving the class number, the month and date. (For example, the screencast of the first class will be class01-473-08-23.) The file name format for class camera videos is CSC473_MM_DD_a and CSC473_MM_DD_b (Each lecture video is in two parts labeled _a and _b).
    • Double-click the file wanted to play it.

    If you have difficulty viewing any of these videos, please contact the 24/7 Support Center at http://the247.arizona.edu/ or 520-626-TECH.

Prerequisite C SC 345: Analysis of Discrete Structures is a crucial prerequisite. If you have not taken 345 or an equivalent course from elsewhere (typically entitled "Discrete Mathematics for Computer Science") the likelihood of success in this course is small. We will need specific material and facts from the prerequisite course, experience with mathematical techniques and methods of thought introduced there, and the ability to use standard language and notation. It is assumed you are familiar with the following topics: trees, graphs, elementary algorithm analysis, induction, recurrence relations, and combinatorics.
Instructor Peter J. Downey
pete at cs dot arizona dot edu
(520) 621-2207
Gould-Simpson 739
Office Hour: TR 12:00-1:15 or by email appointment.
Teaching Assistants Assistant TBA
Teaching Assistant
xxxx at cs dot arizona dot edu
(520) 621-xxxx
Gould-Simpson 7xx
Office Hour: TBA or by appointment

Assistant TBA
Teaching Assistant
xxxx at cs dot arizona dot edu
(520) 621-xxxx
Gould-Simpson 7xx
Office Hour: TBA or by appointment

Frank Capra
Videographer
xxxx at email dot arizona dot edu
Communication
  • Office hours for the instructor and teaching assistants are given above, as soon as can be scheduled. These are ``walk-in" office hours, requiring no prior appointment. These hours are subject to change during the semester. We will update this web page when changes have to be made.

    If you cannot attend scheduled office hours, do not let this keep you from seeking help by connecting with course staff. Mail a member of the course staff to make an appointment outside the regular ``walk-in" office hours--in person, via telephone or via email.

  • Email questions should always include an informative subject line. The subject line must begin with 473: and indicate the nature of the question. Examples of non-informative subject lines are "473: help on homework 5", "473: a question". Examples of informative subject lines are "473: hw 5, question 1 on unsolvability", "473: help understanding reduction". A good subject line helps us in getting back to you in a timely manner.

    Your message should include a minimum of relevant information, yet describe the matter at issue. Use complete sentences and write as clear a message as possible. Remove all irrelevant information before sending. It is usually not necessary to include all prior mail correspondence with your mail. Include only what is relevant from earlier exchanges.

Text
  • Required: Michael Sipser, Introduction to the Theory of Computation, 2nd Edition
    PWS Publishing, Boston, MA, 2006. ISBN 978-0-534-95097-3
    • Prices at UofA Bookstores and its affiliated site uofabookstores.com/amazon range from $133.25 (used) - $177.50 (new)
    • Prices at amazon.com range as follows
      • Used $34.99 - $144.16
    • Be sure to get the Second Edition (2006)
    • See list of Errata for the 2nd Edition on the web. Get these errata and mark corrections in your text.
  • Recommended: Susan H. Rodger and Thomas W. Finley, JFlap: An Interactive Formal Languages and Automata Package, Jones & Bartlett, Sudbury, MA, 2006. ISBN 978-0-7637-3834-1
    • Prices at UofA Bookstores range from $48.75 (used) - $65.00 (new)
    • Prices at Amazon.com range from $17.40 (used) - $65.95 (new)
Course Schedule
date event
Tue Aug 23 First class
Mon Aug 29 Last UAccess add/change
Mon Sep 5 Labor Day recess
Mon Sep 12 Census Day: last day to add units without penalty
Sun Sep 18 Last drop via UAccess (no record on transcript)
Thu Oct 13 Midterm I
Fri Oct 14 Last drop/audit (W grade)
Last day to change to audit
Fri Nov 11 Veterans' Day recess
Tue 22 Nov Midterm II
Thu Nov 24 - Sun Nov 27 Thanksgiving Recess
Tue Dec 6 Last C SC 473 class
Thu Dec 8 Dead Day
Fri Dec 9 Final Exam, 1-3 pm, EDUC 353
Sat Dec 17 Winter Commencement


Further University-wide calendar information can be found at:
Course Description & Outline This course is an introduction to the fundamental models of computation used throughout computer science: finite automata, pushdown automata, and Turing machines. The hierarchical relationships among these models, their relative power and limitations, and their variants are studied. Student skills are developed in understanding and using rigorous definition and proof to attack precisely formulated questions about computability and computation. The only successful method known for learning these skills is by working challenging problems, therefore, heavy emphasis is laid upon student problem assignments. The course aims at improving students written communication skills, and serves as a writing emphasis course. The course explores models for and fundamental limitations of the computational process. Proof techniques, major results and computing applications of the results will all be stressed. The material in this course is used in later, more advanced computer science courses. For example, regular expressions and context free grammars are essential in the design of software such as compilers and text processors; and closure properties and nondeterminism are needed to explore inherent intractability (NP-complete problems). Thus every effort is made to (1) motivate concepts with example applications, (2) build a standard vocabulary of concepts and techniques the student will later use frequently, and (3) emphasize the algorithmic and constructive basis of the proofs of results (e.g., regular expression to finite automaton conversion; problem reductions). Topics covered include: finite automata and regular expressions, turing machines, properties of regular sets, Church's thesis, context-free grammars and pushdown automata, decidable and Turing-recognizable sets, properties of context-free languages, universal machines, parsing applications, undecidable problems and reducibility.

  1. Introduction: Overview of the course. Reasons to study theory of computation.
  2. Mathematical Background: Sets, relations, functions. Graphs and trees. Transitive closure and relational calculus. Boolean (switching) logic. Alphabets, words, and languages. Expressing computations and problems in terms of languages. Proof techniques. Mathematical induction.
  3. Finite Automata and Regular Expressions: Finite memory devices. Definition of finite automaton. Non-determinism and the Rabin-Scott Theorem. Regular Expressions, their conversion into finite automata, and vice versa. State minimization. Moore and Mealy transducers. Applications. Closure properties. Non-regular languages and the Regular Pumping Lemma
  4. Context-Free Grammars and Pushdown Automata: Grammars, derivation relations, and derivation trees. Ambiguity. Simplifying CFGs. Chomsky and Greibach normal forms. PDAs and DPDAs. PDAs and CFLs. Applications. Right-linear grammars and finite automata. Closure properties. Non-CF languages and the CF Pumping Lemma.
  5. Turing Machines: Definitions. Turing-decidable(Recursive) and Turing-recognizable (Recursively Enumerable) languages. Computable functions and partial computable functions. Programming the TM. Robustness. Church's hypothesis (Church-Turing thesis). Universal Turing machines. Algorithms. Closure properties.
  6. Hierarchical relationships: Pumping lemmas. Regular sets and right-linear grammars. The Chomsky hierarchy.
  7. Decision Problems: Decidable languages. Membership, cardinality, and equivalence testing of finite automata, context-free languages, and deterministic TMs. Reductions between problems. Halting Problem. Diagonalization. Turing un-recognizable languages. Undecidable problems. Reducibility.
Grading Policies Grades for this course will be based in the following items:
weight item
30% Homework (5-6 problem sets)
20% Midterm I
20% Midterm II
30% Final Comprehensive Exam

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 then normalized to a ``traditional" scale in which 90 - 100 is an A, 80 - 89 is a B and 70 - 79 is a C. Both this normalized score and raw score appear on the report returned with each graded item. 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 above. At the end of the course, the resulting weighted average is converted to a final letter grade using the ``traditional" scale. Decisions on whether borderline scores (such as 79) 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.

The instructor reserves the right to fail for the course any student who fails the final comprehensive examination, irrespective of their earlier grades or their final weighted average.

Other Policies Attendance is not enforced, but you are responsible for all material covered in lecture or assigned as reading or homework.

Without prior arrangements with course staff, missed exams result in a grade of zero. Homework is due--in paper form--at the start time of class on the due date, using the envelope (provided later) labeled with your name. Students in the On-Line section (C SC 473 Section 910) may submit by sending email with a PDF file attached, before the end of the class on the due date. Late homework is not accepted.

Exceptions to these deadline rules can be granted only in dire circumstances.

If homework or exam grading seems incorrect, unfair or inconsistent, you may appeal for a re-grade. Prepare a brief memo that explains which problems are of concern to you, and why you think they should be reviewed. Submit your memo, and the original homework paper and grading sheet to the course TA or instructor during office hours, or during an appointment, and explain (and defend) your re-grading request. To obtain such a grade review, contact a member of the course staff for an appointment within 48 hours after the graded item was returned to you. After this 48 hour window, the grade will stand as originally awarded.

If you do not obtain satisfaction on a grading appeal from your instructor, you have a right to appeal a grade to the Department Head, and thence to the Dean. For the procedure to be followed, see the University's website at Grade Appeal.

All other academic policies of the University are adhered to in this course. A comprehensive list may be found by selecting ``Academic Policies" in the University of Arizona General Catalog 2011-12.

It is assumed that: you have the prerequisites for this course, and their prerequisites, etc., recursively.

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, taken from solutions obtained from an earlier offering of this course, taken from the files of a student who took this course earlier, or taken from the Internet.

The Department of Computer Science Course Policy on Collaboration is found at http://www.cs.arizona.edu/policies/collaboration.html This Policy applies to the present course; please read it so that no future confusion arises.

A video entitled ``Academic Integrity Podcast" is available for viewing on the Dean of Students web page http://deanofstudents.arizona.edu.

C SC Computer Account Obtaining a C SC Computer Account:

Computer accounts for C SC Department machines are available to any course registrant, either in-person or on-line. The account can be used on any machine in the Department's open labs, or through the Internet via ssh or other virtual terminal connection (e.g., PuTTY, iTerm). An account on the Department machines will be generated automatically upon your registration for the course (allow 48 hours for initialization). Read about account services at http://www.cs.arizona.edu/computing/services. You can find out more information about your account at http://faq.cs.arizona.edu/idx.php/0/269/article/What-should-I-know-about-my-account-.html.

Login Name and Password:

Your C SC login name (userid, username) will match your current UA NetId. This NetID is the name of your UA email account, as in Your_NetID@email.arizona.edu. This login name is used for remote ssh access to lectura.cs.arizona.edu, and for login to lab workstations in Gould-Simpson 228 or 930.

Your initial password for C SC Department machines will be sent to your email.arizona.edu address at the beginning of the semester. For this reason, you must have an active email.arizona.edu account in order to receive a C SC account. Obtain a University NetID and email account at http://uits.arizona.edu/services/3_easy_steps

When you log in to lectura.cs.arizona.edu for the first time you will be forced to change your initial password to a more secure password. See Rules for Acceptable Passwords for information on choosing strong passwords.

Access to Gould Simpson and Labs:

On the first day of classes all students who have registered for C SC classes, whether in-person or on-line, will be able to use their CatCards for access to the Gould-Simpson Building, and to the C SC computer labs in Gould-Simpson Rooms 228 and 930. Access will continue around the clock until the end of the semester.

Computer Science ID (CSID):

You will need to know your Computer Science ID (CSID), which is different from your Student ID (SID). 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.

For any account problems, send email to lab@cs.arizona.edu.

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 the instructor listing accommodations to be made. This letter should be submitted by the student directly to the instructor as soon as possible during the first week of classes. The student should meet as soon as possible with the instructor by appointment or during office hour to discuss accommodations and how course requirements and activities may impact their ability to fully participate in the course.

Lecture Notes

The lecture notes for this class, in PowerPoint form, are divided into sections; each section is called a ``Discourse". A Discourse typically covers 5-10 separate class lectures. PDF and PPT versions of these Discourses will be placed here in advance of the lecture that discusses them. On-line students should print a copy of the relevant Discourse for taking notes while running the screencast or video of the lectures.

Homework Standards

All written work submitted for credit must be prepared using a program that produces typeset output with the appropriate type faces, symbols and notation used in the theory of computation (e.g., TeX, LaTeX, Word + MathType, etc). Figures can be rendered using a drawing tool like xfig, Word, paint, PowerPoint, etc. Do not submit scanned images of handwritten work. The final product should be a PDF file that can be emailed or retrieved for review. That PDF should be printed on paper and submitted on the due date.

Rules for submitted work:

Start each solution on a new page, repeat the problem statement, and number each page. Write on one side of the paper only. Write concise and clear solutions, since failure to communicate clearly will cost points whether or not the conclusion is correct. Remember that this is a Writing Emphasis Course, and work will be graded in part on the quality of your writing and ability to communicate. The grade will not depend only upon technical content.

All homework solutions are due before the end of class lecture on the due date.

  • If you are an in-person student attending lectures, submit your homework solutions in class on the due date using the labeled envelopes that will be provided.
  • If you are an on-line student, submit your solutions as a PDF attachment via email. The email should be sent to me by the end of class on the due date.

All good writing is based upon revision. It is essential to revise your work before submission, and to consider whether your argument will be understandable to the reader. For example, it is never a waste of effort to explain the strategy you intend to use in a proof or construction, before beginning to present the work in technical detail. Think of the reader. Explain as if teaching a colleague in your class. Revise. Revise again.

Homework Assignments

Reading assignments must be completed before the relevant lecture on the subjects covered. A schedule of readings from the text will be given here, and updated as the semester progresses.

Exams Exams are administered in different ways, depending upon whether you are an in-person or on-line student:
  • In-person Section:
    • Each of the two midterm exams will be handed out at 2:00 pm on the designated exam day. They will be collected after the full 75 minutes, at 3:15 pm. Late arrivals will not be granted extra time.
    • The final exam will be handed out at the designated time on the day designated in the Course Schedule above, and collected after 120 minutes. Late arrivals will not be granted extra time.
  • On-line Section:
    • On-line (Distance Learning) students must arrange for a proctor who will administer the midterm and final exams in an appropriate testing environment.
    • It is the responsibility of the on-line student to find a suitable proctor ahead of time, and to obtain their agreement to serve.
    • The Outreach College provides a proctor form for such an agreement at:
      outreachcollege.arizona.edu/pdf/dist/proctor_agreement.pdf.
      This form, to be signed by your proctor, provides a definition of ``suitable proctor" (e.g., not your mother), contains a list of proctor responsibilities, and describes where to send the completed form. The form must be submitted before October 1, 2011.
    • Proctored exams must be administered simultaneously with the scheduled in-class exam, in so far as this is possible. Exceptions must be arranged with the instructor ahead of time.
    • If you are nearby and prefer to take any of the midterms or the final exam by attending an in-person class meeting at the scheduled testing time, you are welcome to do so. In such an event, please let the instructor know ahead of time so that an exam can be generated.
The two midterms are tentatively scheduled for the two dates given in the Course Schedule above. These dates are subject to change, with adequate lead time. The date and time of the Final Comprehensive Examination is fixed at the date and hour given above in the Course Schedule.

Information about forthcoming examinations (e.g., topics, example questions, rules for taking the exam) will appear here prior to the examination event.



http://www.cs.arizona.edu/classes/cs473/fall11/
Last updated 25 Jul 2011