Spring 2026 - CMPT 407 D100

Computational Complexity (3)

Class Number: 5466

Delivery Method: In Person

Overview

  • Course Times + Location:

    Jan 5 – Apr 10, 2026: Tue, 2:30–4:20 p.m.
    Burnaby

    Jan 5 – Apr 10, 2026: Thu, 2:30–3:20 p.m.
    Burnaby

  • Prerequisites:

    CMPT 307 with a minimum grade of C-. CMPT 308 is recommended.

Description

CALENDAR DESCRIPTION:

Study of what is, and is not, efficiently computable with limited resources (time, space, randomness, parallelism, nondeterminism, interaction, and quantum). Complexity classes and connections among them. Interplay between complexity and algorithm design.

COURSE DETAILS:

Please note this course is cross-listed with CMPT 710

The main goal of Complexity Theory is to answer the question: What can be efficiently computed given limited resources? This is a more "practical" version of the main question of Computability Theory: What can be computed? In this course, we will see a rich landscape of complexity classes that are used to characterize problems according to the required resources (such as time, space, randomness, parallelism). We will discuss some known and conjectured relationships among these classes, obtaining a detailed map of the complexity world. Proving the correctness of this map would involve solving some of the deepest open problems in computer science, including the famous "P vs NP" question.

Topics

  • Time and Space Complexity Classes, Nondeterminism
  • Nonuniformity and Circuit Complexity
  • Randomness
  • Alternation and the Polynomial-Time Hierarchy
  • Interactive Proofs
  • Counting Classes
  • Relativization and Natural Proofs
  • Probabilistically Checkable Proofs
  • Current frontiers in Complexity Theory
  • Quantum Computing

Grading

NOTES:

To be discussed in the first week of classes.

Materials

MATERIALS + SUPPLIES:

Reference Books

  • Computational Complexity, Christos H. Papadimitriou, Addison Wesley, 1995, 9780201530827

REQUIRED READING:

Computational Complexity: A Modern Approach
S. Arora and B. Barak
Cambridge
ISBN: 9780521424264

RECOMMENDED READING:

Introduction to the Theory of Computation
Mike Sipser
Cengage Learning, 2012, 3rd Edition
ISBN: 9781133187790

REQUIRED READING NOTES:

Your personalized Course Material list, including digital and physical textbooks, are available through the SFU Bookstore website by simply entering your Computing ID at: shop.sfu.ca/course-materials/my-personalized-course-materials.

Department Undergraduate Notes:

The following are default policies in the School of Computing Science. Please check your course syllabus whether the instructor has chosen a different policy for your class, otherwise the following policies apply.
 
  • Students must attain an overall passing grade on the weighted average of exams in the course in order to get a C- or higher.
  • All student requests for accommodations for their religious practices must be made in writing by the end of the first week of classes, or no later than one week after a student adds a course. After considering a request, an instructor may provide a concession or may decline to do so. Students requiring accommodations as a result of a disability can contact the Centre for Accessible Learning (caladmin@sfu.ca).

Registrar Notes:

ACADEMIC INTEGRITY: YOUR WORK, YOUR SUCCESS

At SFU, you are expected to act honestly and responsibly in all your academic work. Cheating, plagiarism, or any other form of academic dishonesty harms your own learning, undermines the efforts of your classmates who pursue their studies honestly, and goes against the core values of the university.

To learn more about the academic disciplinary process and relevant academic supports, visit: 


RELIGIOUS ACCOMMODATION

Students with a faith background who may need accommodations during the term are encouraged to assess their needs as soon as possible and review the Multifaith religious accommodations website. The page outlines ways they begin working toward an accommodation and ensure solutions can be reached in a timely fashion.