Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
8/31/15, 4:19 PM
COMS W3261
Computer Science Theory
Fall 2015
Announcements
Class meets 1:10-2:25pm, Mondays and Wednesdays, room TBA.
First lecture is Wednesday, September 9, 2015.
Teaching Staff
Name
email
Office hours
Location
Prof. Al Aho aho@cs.columbia.edu Mondays and Wednesdays 3:00-4:00pm 513 CSB
Course Overview
In Computer Science Theory you will learn computational thinking and get to know the
fundamental models of computation that underlie modern computer hardware, software, and
programming languages. You will also discover that there are limits on how quickly computers can
solve some problems and that there are some problems that no computer can solve.
The course will cover the important formal languages in the Chomsky hierarchy -- the regular sets,
the context-free languages, and the recursively enumerable sets -- as well as the formalisms that
generate these languages and the machines that recognize them. The course will introduce the basic
concepts of computability and complexity theory by focusing on the question, "What are the
fundamental capabilities and limitations of computers?" The course will also introduce the untyped
lambda calculus, the model of computation underlying functional programming languages.
The concepts covered in this course will be amply illustrated by applications to current
programming languages, algorithms, natural language processing, and hardware and software
design. The topics covered in Computer Science Theory are required background background to
many Computer Science upper division courses in programming languages, compilers, natural
language processing, computer hardware and logic design, analysis of algorithms, computational
complexity, learning theory, and cryptography.
http://www.cs.columbia.edu/~aho/cs3261/
Page 1 of 3
8/31/15, 4:19 PM
Pre- or Corequisites
COMS W3137 Data Structures and Algorithms
COMS W3203 Discrete Mathematics
Schedule 2015
Date
Lecture
Reading
Sep 9
1. Introduction to CS Theory
HMU, Ch. 1
Sep 14
HMU, Ch. 2
Sep 16
3. Regular Expressions
Sep 16
Homework Assignment #1
Due Sep 28
Sep 21
Sep 23
Sep 28
HMU, Ch. 4
Sep 30
7. Context-Free Grammars
HMU, Ch. 5
Sep 30
Homework Assignment #2
Due Oct 12
Oct 5
8. Pushdown Automata
HMU Ch. 6
Oct 7
Oct 12
HMU, Ch. 7
Oct 14
HMU, Ch. 7
Oct 14
Homework Assignment #3
Due Oct 26
Oct 19
HMU, Ch. 8
Oct 21
HMU, Ch. 8
Oct 26
HMU, Ch. 8
Oct 28
Nov 2
Academic Holiday
Nov 4
Midterm
Lectures 1-15
Nov 9
HMU, Ch. 9
Nov 11
Nov 11
Homework Assignment #4
Due Nov 23
Nov 16
Nov 18
19. Satisfiability
Nov 23
Nov 25
Recitation
http://www.cs.columbia.edu/~aho/cs3261/
Page 2 of 3
Nov 30
Nov 30
Homework Assignment #5
Dec 2
Dec 7
Dec 9
Final Review
Dec 14
Final Exam
8/31/15, 4:19 PM
Due Dec 9
Lectures 1-23
Required Text
John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman
Introduction to Automata Theory, Languages, and Computation, Third Edition
Pearson/Addison-Wesley, 2007, ISBN 0-321-45536-3
Additional References
Michael Sipser
Introduction to the Theory of Computation, Third Edition
Cengage Learning, 2013
Alfred V. Aho and Jeffrey D. Ullman
Foundations of Computer Science, C Edition
W. H. Freeman, 1995
An online version of this book is available here.
Class Policies
Grading
aho@cs.columbia.edu
http://www.cs.columbia.edu/~aho/cs3261/
Page 3 of 3