Computer Science 310
- Fall 2015
Automata,
Languages and Computation
Instructor: Bob Lingard
Office: JD 4401
Office
Phone: 677-3825
Email
Address: rlingard@csun.edu
Web
URL: http://www.ecs.csun.edu/~rlingard
Office
Hours: Monday and Wednesday 4:30
– 6:00 PM, and by appointment
Prerequisites: COMP 333 and COMP 256/L
Text: Introduction to Formal Languages and
Automata (Fifth Edition),
by
Peter Linz, Jones and Bartlett, Inc. 2012
Ticket#
15672 Meets Wednesday
7:00 – 9:45 PM in JD 3508
Course
Description
Study of the relation of
languages (i.e. sets of strings) and machines for processing these languages,
with emphasis on classes of languages and corresponding classes of machines. Phrase structure languages and
grammar. Types of grammar and classes of languages.
Regular languages and finite state automata. Context-free languages and pushdown automata. Unrestricted languages and Turing Machines. Computability
models of Turing, Church, Markov, and McCarthy. Applications
to programming languages, compiler design, and program design and testing.
Course
Objectives
Upon
successful completion of the course students will be able to:
1.
Write
regular expressions, draw finite automata, and draw nondeterministic finite
automata for regular languages.
2.
Convert
from any of the three representations for regular languages to any of the
others.
3.
Prove
when a language is not regular.
4.
Write
context-free grammars and draw push-down automata for context-free languages.
5.
Prove
when a language is not context-free.
6.
Understand
the ability of Turing machines to describe any algorithm.
7.
Have
an appreciation for undecidability and the notions
needed to prove it.
Grading
An
absolute grading system will be used, where 90% is required for an A, 80% for a
B, 70% for a C, 60% for a D, and anything below 60% is failing. Pluses and minuses will be given for grades
within 3 percentage points of the dividing marks. For example, a final total which is 80% or
more but less than 83% would correspond to a letter grade of B-, a total of 77%
or more but less than 80% would correspond to a C+, etc. The final grade will be based on the
following:
Homework 30%
Weekly Quizzes (12) 10%
Midterm Exam 20%
Final Exam 40%
Late
work will be accepted without penalty only if some compelling reason is
provided (preferably in advance) justifying the lateness. Without such a justifiable excuse, late work
will be penalized 5% for each calendar day that it is late (with a
maximum penalty of 50%).
Plagiarism
(intentionally or knowingly representing the words, ideas, or work of another
as one’s own) or any other form of academic dishonesty will not be
tolerated. Students who are guilty of
such dishonesty will receive no credit for the given assignment or exam and
will not be allowed the opportunity to redo the work in question. In addition, incidents of academic dishonesty
may be reported to the University and further disciplinary actions are
possible.
Quizzes will consist of several multiple choice questions on the reading material. There will be a quiz each week except for the first week, the last week and the week of the mid term exam. The two lowest quiz grades will be dropped.
The exams may be “take home” exams or “in class” exams. They may be open book or closed book, but, in any case, they must be individual efforts. Discussing the questions on the exam with an individual, other than the instructor, is not permitted.
Discussion
and collaboration with other class members on individual assignments is
permitted, and even encouraged, to the extent that said collaboration is a fair
and equitable exchange of ideas. That
is, one individual should not be doing all the work and sharing it with
others. It is permissible to ask other
students for help, but it is not permissible to copy the results of
others. If several students collectively
solve a problem, each should write up the results in his or her own words.
Tentative
Schedule by week
1
Preliminaries,
Basic Concepts
Reading: Chapter 1
2
DFAs
and NFAs
Reading: Chapter 2
3
Regular
Expressions, Regular Grammars
Reading: Chapters 3
4
Closure
Properties of Regular Languages
Reading: Chapters 4, pp. 99-113
5
Pumping
Lemma for Regular Languages
Reading: Chapters 4, pp. 114-124
6
Context-Free
Grammars
Reading: Chapters 5
7
Simplifying
Grammars, CFG and Normal Forms
Reading: Chapters 6
8
Mid
Term Exam
9
Pushdown
Automata
Reading: Chapter 7, pp. 175-195
10
Pushdown
Automata (cont’d)
Reading: Chapter 7, pp. 196-204
11
Closure
Properties of CFL, Pumping Lemma for CFL
Reading: Chapter 8
12
Turing
Machines
Reading: Chapter 9
13
Other
Models of Turing Machines
Reading: Chapter 10
14
A
Hierarchy of Formal Languages and Automata
Reading: Chapter 11
15
Computability
and Decidability
Reading: Chapter 12