CSC365H Standard Course Description

Enriched Computational Complexity and Computability


Owner

Faith Fich fich@cs.toronto.edu

Course Description

Introduction to the theory of computability: Turing machines, Church's thesis, computable and noncomputable functions, recursive and recursively enumerable sets, many-one reducibility. Introduction to complexity theory: models of computation, P, NP, polynomial time reducibility, NP-completeness, heuristics and approximation algorithms, lower bounds. Emphasis is placed on conceptual understanding, proofs, and problem solving.

Background

This is an enriched version of CSC363H. It will cover the topics in CSC363H, but at a faster pace and in more depth. Certain topics which are only mentioned in CSC363H will be covered in detail in this course. Additional topics will also be covered.

Prerequisistes

Exclusions

Follow-On Courses

Learning Objectives

Topics (not necessarily in this order)

Suggested Texts

  1. REQUIRED

    Introduction to the Theory of Computation
    Michael Sipser, PWS Publishing Company, 1997
    ISBN 0-534-94728-X

Sample Evaluation

type weight description
assignments 40% 4-5 assignments
midterm tests 15-20% 1-2 tests
final exam 40-45%