University of Nevada Las Vegas
Howard R. Hughes College of Engineering
Department of Computer Science
My Home Page

Computer Science 456/656
Automata and Formal Languages
Spring 2017

Revised January 17, 2017

Check the Assignments and Lecture Topics Page frequently.

Instructor:
Dr. Larmore
Office, TBE B378B. Telephone 702-895-1096. Email: larmore "at" egr "dot" unlv "dot" edu
Office Hours: Subject to Change.
After class, in the classroom or my office: Mondays and Wednesdays.
10:00 - 11:00, 1:00 - 2:00: Mondays and Wednesdays.
Contacting Me:
You may telephone my office. Please do not leave a telephone message.
It's best to send me email. Be sure to write "CS456" (or "CS656") in the subject field so that I know what the message is about. (I delete lots of messages without reading them, based on the subject fields.)
Please, never try to communicate with me by leaving notes on my door, under my door, or in my mailbox in the department office, as those notes get lost, and I can't retrieve them remotely.
If it is necessary to give me something, please leave it with the department staff, and then send me an email message saying that the item has been left for me.
Graduate Assistant:
Ashok Adhikari
Email: adhika1 "at" unlv "dot" nevada "dot" edu
Office Hours: 1:30 - 2:30 Tuesdays and Thursdays
Office: TBE B346
Days of Instruction:
January 18, 2016 - May 3, 2017.
Spring Break:
April 10 and April 12
George Washington's Birthday:
March 20
Time of Instruction:
11:30 - 12:45, Monday and Wednesday.
Place of Instruction:
TBE B176.
Textbook:
Introduction to the Theory of Computation, by Michael Sipser. PWS.
We are using the most recent edition, which is the third. However, if you have the first or second edition, that will be acceptable.
Prerequisites:
CS 302 (Data Structures)
MAT 351 (Discrete Mathematics II).
Click here if you did not take both CSC 302 and MAT 351 at UNLV and receive a grade of "C" or better in each of those two courses.
Graduate Students:
If you want graduate credit, you must enroll in 656, not 456.
Each CSC 656 student must turn in at least one challenge problem and turn it in by the last week of class. CS 456 students are also permitted to work challenge problems, but I will not permit students to improve a poor grade in this manner. The reason for this policy is that I want students who are doing poorly in the course to devote their energy to mastering the regular material.
Compiler Construction:
CS 456/656 is a prerequisite for CS 460/CS 678 (Compiler Construction).
I do not advise you to take that course concurrently.
Written Homework:
will be assigned, collected, and graded. You are permitted to discuss homework.
Examinations:
First Examination: Wednesday, February 15
Second Examination: Wednesday, March 29
Final Examination: 10:10 - 12:10 Wednesday May 10
Grading:
Your grade will be based on:
  • The first examination.
  • The second examination.
  • The homework.
  • The final examination.
Although the homework will take a substantial amount of time to work, and will actually be harder than the examinations, it counts for a smaller part of the grade. The reason for this is that I allow you to work together on homework. If you work the homework regularly, you should do well on the examinations.
Topics to be Covered

This course is arguably the most interesting in the Computer Science core curriculum. During this Semester, you will learn the accurate meanings of a number of terms that you have probably heard. In some cases, you will have to unlearn what you previously believed! For example, you will learn the following concepts:

Detailed description of the CYK algorithm.

Homework and tests from prior semesters are available.