# CS
525, Theory of Computation, Evening Section, Winter 2014

## Instructor: Krzysztof Nowak

Office: University Crossings 109

Office Hours: Monday, Wednesday, Friday 1:00 pm -
1:50 pm

e-mail: kn33@drexel.edu

Class meetings: **Wednesday 6:00 pm - 8:50 pm,
University Crossings 153**

**Course Prerequisites**

Data Structures, Discrete Mathematics

**Course
Description**

The course covers the fundamentals of automata theory, formal languages, Turing
machines, computability and computational complexity. It emphasizes theoretical
aspects of the field. Numerous illustrating examples provide intuitive
understanding of formal definitions and proofs. Graphical representations are
frequently used to facilitate the understanding of concepts. A strong stress is
put on developing a thorough understanding of fundamental results.

**Required Text**

Michael Sipser, Introduction to the Theory of Computation, Cengage Learning
2013 (Third Edition, most of the material is also available inside the Second
Edition).

**Reference Texts**

John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, *Introduction to
Automata Theory, Languages, and Computation*, Addison-Wesley, Boston, 2006
(Third Edition), available for reading in University Crossings 147

Stephen Simpson, *Mathematical Logic*, Lecture notes at PSU:

http://www.math.psu.edu/simpson/courses/math557/logic.pdf

Herbert S. Wilf, *Algorithms and Complexity*, A K Peters, Ltd., 2002
(Second Edition), Downloadable First Edition:

http://www.math.upenn.edu/%7Ewilf/AlgoComp.pdf

**Syllabus**

Week 1: Chapters 1.1-1.3

Week 2: Homework 1 due in class, Quiz 1 during the third hour, Chapters
1.4, 2.1-2.2

**Week 3:** Homework 2 due in class, Quiz 2 during the third hour, Chapters
2.3-2.4

Week 4: Homework 3 due in class, Quiz 3 during the third hour, Chapters
3.1-3.3 without Nondeterministic Turing Machines (NTMs)

**Week 5:** Take home Quiz 4 due in class, Test 1 during the first hour,
NTMs, Chapters 4.1-4.2

**Week 6:** Homework 4 due in class, Quiz 5 during the third hour, Chapters
5.1-5.3

Week 7: Homework 5 due in class, Quiz 6 during the third hour, Chapters
6.1-6.3

Week 8: Take home Quiz 7 due in class, Test 2 during the first hour,
Chapters 7.1-7.2

Week 9: Homework 6 due in class, Quiz 8 during the third hour, Chapters
7.3-7.4 without Cook-Levin (C-L)

**Week 10:** Homework 7 due in class, Quiz 9 during the third hour, C-L,
Chapters 7.5

**Week 11:** Take home Quiz 10 due with the final exam, final exam on
Wednesday from 6 pm till 9 pm in UC 153

**Course Objectives**

Gain proficiency with mathematical tools and formal methods

Understand automata and Turing machines

Understand various equivalent descriptions of regular and context free
languages

Understand fundamental results of computability and complexity theories

Course Grade and Exams

We will have seven group quizzes with individual submission (weeks 2-4, 6-7,
9-10), three individual take home quizzes (weeks 5,8,11), seven individual
homework assignments, two individual tests (weeks 5,8), and an individual final
exam (week 11). The final grade will be computed as follows: quizzes count for
20%, homework for 25%, tests for 25%, final exam for 25%, and class attendance
for 5%.8de19939-0312-4d49-8e41-7e842db8eb0cY2:8de19939-0312-4d49-8e41-7e842db8eb0c