CMPS 396T — Special Topics in Theoretical Computer Science

CMPS 396T — Special Topics in Theoretical Computer Science
Fall 2015–16
1
Description
A course that covers the foundations of theoretical computer science. The course will (1) introduce
mathematical logic, set theory, recursive function theory, probability theory, and (2) will cover the
theoretical foundations of computer science (complexity theory, computability theory) and will
briefly introduce some topics that have significant overlap with the foundations of computer science
(information theory, game theory, number theory). A major goal of the course is to equip students
with the mathematical material that they need to be able to read and understand current research
papers in computer science (3 cr).
2
Resources
Selected survey papers, tutorials, and excerpts from textbooks..
3
Learning Outcomes
At the end of the course you will be able to:
• Read a research paper competently
• Determine roughly where a given problem lies in the complexity/computability hierarchy
• Apply foundational and mathematical material to your own research
4
Format
The reading material that accompanies the lectures consists of research papers and excerpted
chapters from reference books. We will cover many of the classic results of the field. Coursework will
consist mostly of paper assignments, readings, and a term paper. Some programming exercises, using
state-of-the-art tools, may also be given.
1
5
Grading (tentative)
computing/paper assignments:
50% midterm: 20% final: 30%
Late homeworks will be assessed a penalty of 10% percent per day late. No homework that is more
than 5 days late will be accepted. I will take attendance every period after add/drop.
6
Exams
All exams are cumulative, i.e., they will cover all class material to date. Exams are open book and open
notes.
7
Academic Honesty
I will enforce AUB’s academic honesty policy. Please see http://www.aub.edu.lb/sao/Documents/
RevisedStudentCodeofConduct(ApprovedMay2009).doc.
8
Syllabus
The syllabus is tentative and subject to change as the course progresses. Material may be omitted or
added, depending on the pace of progress.
The general pace of the course will be fairly rapid, and you are expected to do a significant amount of
reading, as indicated below.
1. Mathematical Logic
Proof theory: Deductive systems, models, satisfiability, validity. Soundness, consistency, and
completeness. Model theory: isomorphisms, homomorphisms, and substructures. Godels
completeness and incompleteness theorems. Models of arithmetic. The Peano axioms.
2. Complexity theory
The complexity classes: P, NP, coNP, and polynomial-time reductions (review). Completeness
and complete problems. Further complexity classes, including PSPACE, EXPTIME, and their
complete problems. The polynomial hierarchy. Classes inside P: logspace, nondeterministic
logspace, NC, RNC. P-complete problems. Logspace-reductions. Randomized computation and
randomized complexity classes. Approximation algorithms and approximability.
2
3. Recursive function theory and computability theory
The Chomsky hierarchy (review). Primitive recursive and recursive functions. Recursive and
recursively enumerable sets. The halting problem and other unsolvable problems.
Reducibilities. The arithmetic and analytic hierarchies.
4. Set theory
Naive set theory: basic operations on sets (review). Axioms, rules of inference, and deductive
systems. Axioms of ZF set theory. Countable and uncountable sets. Diagonalization. The axiom
of choice. Ordinals and cardinals. The recursion principle. The Borel hierarchy. Non-wellfounded set theory. Co-induction.
5. Probability theory
Events, probabilities, random variables and sample spaces (review). Axioms of probability.
Conditional probability. Distributions. Markov chains.
6. Overview of other topics as time permits
(a) Information theory: entropy, channel capacity.
(b) Game theory: strategies, Nash equilibrium.
(c) Number theory and number-theoretic algorithms.
(d) Advanced topics in complexity theory: interactive proof systems and zeroknowledgeproofs
Subjects will be covered roughly in the order given above.
3