University of Nevada Las Vegas
Howard R. Hughes
College of Engineering
School of Computer Science
My Home Page
Course Page
Computer Science 456/656
Automata and Formal Languages
Spring 2009
Assignments and Lecture Topics
Revised April 30, 2009
-
Tuesday, January 13, 2009
-
Today we will overview the course.
The two most important key words of the course are
language and computable.
We will start by discussing languages.
-
English, Spanish, Chinese, and other
natural languages, are not part of this course.
Programming languages are, however.
-
Thursday, January 15, 2009
-
Today we will discuss the operations of union,
concatenation, and Kleene closure on languages.
The class of regular languages is
closed under those three operations.
-
We will introduce regular expressions and
non-deterministic finite automata (NFAs).
-
We state the Equivalence Theorem of Kleene, Rabin, and Scott.
-
Tuesday, January 20, 2009
-
We will give formal definitions of DFA and NFA today.
-
Today we will get started in proving the Equivalence Theorem.
We will show
how to construct a DFA equivalent to a given NFA.
An NFA with n states is equivalent to a DFA with
2n states, although that number can usually
be reduced by minimization.
-
Thursday, January 22, 2009
-
Turn in Assignment 1 at the beginning of class today.
-
Tuesday, January 27, 2009
-
Today we will discuss the
pumping lemma.
-
If time permits, we will start discussing
context-free languages.
-
Thursday, January 29, 2009
-
Turn in Assignment 2 at the beginning of class today.
-
Tuesday, February 3, 2009
-
Today we will discuss parsing.
-
Thursday, February 5, 2009
-
You will be held responsible for the content of today's lecture on reduction.
-
Tuesday, February 10, 2009
-
Turn in Assignment 3 at the beginning of class today.
-
Thursday, February 12, 2009
-
Examination today.
-
First exam, Fall 2007:
in
postscript form
pdf form
-
First exam, Fall 2008:
in
postscript form
pdf form
-
Please do not
hesitate to send me email if you
have a question about the material on the exam.
-
Tuesday, February 17, 2009
- Our new GA is Akshat Pampanwar.
-
Thank you, Mr. Pampanwar, for stepping into this job with such short notice.
-
Thursday, February 19, 2009
-
Tuesday, February 24, 2009
-
Turn in Assignment 4 at the beginning of class today.
-
Thursday, February 26, 2009
-
Today we will begin the discussion of undecidability.
-
Tuesday, March 3, 2009
-
Today, I will introduce the pumping lemma for context-free languages,
and compare it to the pumping lemma for regular languages.
-
I will give the complete proof that the halting problem is undecidable.
This is by far the most important single thing you need to learn in the
course, so I will repeat this proof at least two more times before the
end of the semester.
In preparation for this lecture, it would be helpful to read about
binary encoding of Turing machines.
Also, to get into the right mood for the
diagonization
proof of the undecidability of the halting problem, read about the
Guardian of the Bridge who was
"
doomed to guard this bridge until truth and lies are one."
(Thanks to Emily Rodda.)
-
Thursday, March 5, 2009
-
Today, we will get into the "nitty-gritty" of Turing machines.
We will show various Turing machines that compute simple functions, such
as reversing a string or incementing a binary numeral.
-
If time permits, I will introduce the concept of an enumerator.
When I was young,
I learned that "enumerable" means "countable," and that
every subset of an enumerable set is enumerable.
That's true. But can you actually find the enumeration?
Suppose I ask you to list all the positive integers in order. Can you do it?
Well, you might complain that it would take forever, but you could certainly
design a machine that would do it. The machine would run forever, of course,
but it would correctly print all the positive integers, and in canonical order.
(Well, really, it would print the numerals for the positive
integers.)
But what if you wanted to enumerate some subset of the positive integers?
For example, the odd numbers? No problem. The prime numbers? Of course,
you could do it, but your machine would be a bit more complex. Some other
set of positive integers? Why not?
-
Tuesday, March 10, 2009
-
Today we will continue to discuss enumerators.
-
We will then consider the membership and equivalence problems for
context-free grammars.
-
If time permits we will consider context-sentsitive and general grammars.
-
Thursday, March 12, 2009
-
Turn in Assignment 5 at the beginning of class today.
-
Tuesday, March 17, 2009
-
I will go over the proof that the halting problem is undecidable.
This will be a beginning-to-end lecture, and is thus a repetition of
the first lecture I gave on the subject.
-
I will repeat my introduction to the polynomial time and non-deterministic
polynomial time classes. It is my experience that no amount of repitition
of these concepts is too much.
-
In particular, I will talk about
certificates.
-
Thursday, March 26, 2009
-
Examination today.
-
Tuesday, April 21, 2009
-
Today I will prove that 3-satisfiability is NP-complete.
-
If there is enough time, I will redo the proof that the halting problem
is undecidable.
-
If there is time remaining, I will redo the proofs of both pumping lemmas.
-
-
Thursday, April 23, 2009
Turn in Assignment 6 at the beginning of class today.
-
Today, we will start reviewing the semester's material.
We will emphasize the most important material for each of the major topics.
-
Tuesday, April 28, 2009
-
We will continue reviewing the semester's material.
Today's review topic will be context-free grammars and languages.
-
Thursday, April 30, 2009
-
Today, we continue reviewing the semester's material.
-
Tuesday, May 5, 2009
- Final Examination, 3:10 to 5:10.
-
Practice final in postscript form.
-
Practice final in pdf form.
Back to
Course Page