CS138, Winter 2007:

Automata and Formal Languages

Wim van Dam



Announcements

  • [March 20] Answers to some of the questions of last year's Final posted.
  • [March 16] Final of last year posted.
  • [March 16] Qingqing Yuan will have an additional office hour on Monday, March 19, between 1:30 and 2:30.
  • [March 16] Slides of Week 10 have been posted.
  • [March 12] Slides of Week 9 have been posted.
  • [March 12] There will be no more homework for the course.
  • [March 5] Here is the link to the Turing machine simulator that I showed in class.
  • [March 4] Homework 7 posted, which is due Monday March 12, 11:30 am.
  • [March 4] Slides of Week 8 posted.
  • [March 1] Please note the following correction to Question 2a in Homework 6, the third production rule of Exercise 10 on page 92 in the Reader should read: "δ(q1,a,1)={(q3,λ)}"
  • [March 1] Please note the following correction to Question 1a in Homework 6, the description of the language should read: "{anbm : n ≤ m ≤ 2n}"
  • [Feb 25] Homework 6 posted, which is due Monday March 5, 11:30 am.
  • [Feb 25] Slides of Week 7 posted.
  • [Feb 22] Question 2 of Homework 5 was not phrased properly. Please answer the new, improved of Homework 5.
  • [Feb 18] Homework 5 posted, which is due Monday February 26, 11:30 am.
  • [Feb 18] Slides of Week 6 posted.
  • [Feb 12] Homework 4 posted, which is due Tuesday February 20, 11:30 am.
  • [Feb 10] Regarding the Midterm of Monday February 12: The material is all what we have discussed about the first two chapter in the Reader: "Automata" and "Regular Languages". Its place and time are the same as regular class meetings. No electronics are allowed; the only notes that are allowed is a letter-sized, double sided cheat sheet, nothing else.
  • [Feb 10] Slides of Week 4 and Week 5 have been posted. The slides of Week 4 is the last set of slides relevant for the Midterm; the last few slides give a brief overview of its material. The slides of Week 5 are about context free languages and do not have to be studied for the Midterm.
  • [Feb 7] To help you prepare for the Midterm, an older Midterm on the same material (and its answers) has been posted in Week 5.
  • [Feb 4] Note that there is no homework assignment this week. Instead you are supposed to prepare for next Monday's Midterm
  • [Feb 4] All the slides of Week 4 have been posted.
  • [Jan 31] The slides of Monday and Wednesday Week 4 have been posted. You might want to try to do the exercices on the last slide.
  • [Jan 29] The Midterm on the first two chapters of the reader is scheduled for Monday February 12 (Week 6).
  • [Jan 28] Homework of Week 3 posted, which is due Monday February 5, 11:30 am.
  • [Jan 27] Slides of Week 3 posted.
  • [Jan 21] Homework of Week 2 posted; due Monday January 29, 11:30 am.
  • [Jan 21] Slides of Week 2 posted.
  • [Jan 18] Regarding Question 2 on the homework of Week 1: Note that the computation of the ismorphism is supposed to be efficient, so the machine is only allowed to make a polynomial in |V| number of queries to the GI decision problem.
  • [Jan 15] Homework 1 has been posted; it is due Monday, January 22, 11:30 am.
  • [Jan 15] Homework will be posted later today during this extended weekend.
  • [Jan 12] Slides of Week 1 posted.
  • [Jan 9] There will be no discussion session this Friday the 12th.
  • [Jan 3] Note that classes are in 387 101, not 380 as was stated earlier.
  • [January 2, 2007] Updated information on weekly schedule.
  • [August 10, 2006] Installment of the CS138 web site of Winter 2007.

Course Info

Professor:

  • Wim van Dam
    vandam@cs.____.___
    Harold Frank Hall, Room 5109

Teaching Assistant:

Description:

  • Formal languages; finite automata and regular expressions; properties of regular languages; pushdown automata and context-free grammars; properties of context-free languages; introduction to computability and unsolvability (Turing machines) and computational complexity.

Required Textbook:

Prerequisites:

  • Prerequisite: Computer Science 40; open to computer science and computer engineering majors only.
  • Not open for credit to students who have completed Computer Science 136.

Grading/Exams:

  • Homework + Midterm + Final = 40% + 20% + 40%

Weekly Schedule:

  • Monday 11:30: Homework due (typically); homework boxes are in room 2108
  • Monday 12:00-12:50: Class in 387 101
  • Tuesday 12:30-13:30: WvD's office hours
  • Wednesday 12:00-12:50: Class in 387 101
  • Thursday 14:00-15:00: QQY's office hours in 2106
  • Friday 9:00-9:50: Discussion in Phelps 3519
  • Friday 12:00-12:50: Class in 387 101
  • Weekend: Announcement of new homework

Contacting/Questions:

  • I prefer that you use my office hours for your questions, rather than doing a lengthy Q&A exchange via email. When emailing me: make it clear that it is regarding CS138, sign off with your name, use your shift key, the works. Thanks.

Schedule and Slides

  • Week 1 [January 8 - January 14]
    Monday Jan 8: Class starts
    Wednesday Jan 10:
    Friday Jan 12: (No Discussion Session today)
    Topics: Formalities, overview of course, notion of computability and complexity, automata theory, computational problems as language decision problems, mathematical techniques, mathematics of formal languages; finite automata [pp. 1-24, Reader]
    Slides Week 1
    Homework Week 1, due Monday January 22, 11:30 am.

  • Week 2 [January 15 - January 21]
    Monday Jan 15: No class (Birthday of Martin Luther King, Jr.)
    Wednesday Jan 18:
    Friday Jan 20:
    Topics: Finite automata, regular languages, some closure properties, More closure properties, Nondeterministic Finite Automata, NFA=DFA [pp. 22-38, Reader]
    Slides Week 2
    Homework 2, due Monday January 29, 11:30 am.

  • Week 3 [January 22 - January 28]
    Monday Jan 22: Homework 1 due
    Wednesday Jan 24:
    Friday Jan 26:
    Topics: NFA=DFA, closure of RL under regular operations, applications and properties of regular expressions, Generalized Nondeterministic Finite Automata, RL=RE, nonregular languages [pp. 34-45, Reader]
    Slides Week 3
    Homework 3, due Monday February 5, 11:30 am.

  • Week 4 [January 29 - February 4]
    Monday Jan 29: Homework 2 due
    Wednesday Jan 31:
    Friday Feb 2:
    Topics: nonregular languages, pumping lemma; information on Midterm [pp. 45-56, Reader]
    Slides Week 4
    No homework this week

  • Week 5 [February 5 - February 11]
    Monday Feb 5: Homework 3 due
    Wednesday Feb 7:
    Friday Feb 9:
    Topics: Context free languages, linear grammars, derivation trees, parsing, exhaustive parsing, simple grammars, ambiguity, substitution of porduction rules, useless rules (removing of), empty string production rules (removing of)
    Slides Week 5
    Old CS138 Midterm / Answers to old CS138 Midterm
    Homework 4, due Tuesday February 20, 11:30 am.

  • Week 6 [February 12 - February 18]
    Monday Feb 12: Scheduled Midterm on formal languages, finite automata and regular languages
    Wednesday Feb 14:
    Friday Feb 16:
    Topics: simplifying CFGs, Chomsky and other normal forms, CYK algorithm, pushdown automata
    Slides Week 6
    Homework 5 (improved), due Monday February 26, 11:30 am.

  • Week 7 [February 19 - February 25]
    Monday Feb 19: No class (Washington's Birthday)
    Tuesday Feb 20: Homework 4 due
    Wednesday Feb 21:
    Friday Feb 23:
    Topics: pushdown automata
    Slides Week 7
    Homework 6 (improved), due Monday March 5, 11:30 am.

  • Week 8 [February 26 - March 4]
    Monday Feb 26: Homework 5 due
    Wednesday Feb 28:
    Friday Mar 2:
    Topics: Pumping lemma for context free languages; Turing machines
    Slides Week 8
    Homework 7, due Monday March 12, 11:30 am.

  • Week 9 [March 5 - March 11]
    Monday Mar 5: Homework 6 due
    Wednesday Mar 7:
    Friday Mar 9:
    Topics: Turing machines, accepting versus rejecting versus looping, Turing recognizable languages, Turing decdiable languages, TMs simulating other TMs, multitape TMs, nondeterministic TMs, Church Turing thesis
    Slides Week 9

  • Week 10 [March 12 - March 18]
    Monday Mar 12: Homework 7 due
    Wednesday Mar 14:
    Friday Mar 16: review session, Q&A
    Topics: computability theory theory
    Slides MW Week 10
    Slides F Week 10 (review)
    old Final / Answers to Questions 1-8 of old Final

  • Finals Week [March 19 - March 24]
    Wednesday March 21, 12-3pm: Final examination on all material


This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.
Created August 10, 2006 / last updated March 20, 2007 by vandam@cs