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 and Exams

 

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.

 

 

Homework

 

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