Fall 2019 - CMPT 710 G100

Computational Complexity (3)

Class Number: 9016

Delivery Method: In Person


  • Course Times + Location:

    Mo, We, Fr 2:30 PM – 3:20 PM
    SECB 1011, Burnaby

  • Exam Times + Location:

    Dec 14, 2019
    12:00 PM – 3:00 PM
    SSCC 9000, Burnaby



This course provides a broad view of theoretical computing science with an emphasis on complexity theory. Topics will include a review of formal models of computation, language classes, and basic complexity theory; design and analysis of efficient algorithms; survey of structural complexity including complexity hierarchies, NP-completeness, and oracles; approximation techniques for discrete problems. Equivalent Courses: CMPT810


Please note this course is cross-listed with CMPT 407

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.


  • 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



To be discussed the first week of classes



Reference Books

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


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


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

Graduate Studies Notes:

Important dates and deadlines for graduate students are found here: http://www.sfu.ca/dean-gradstudies/current/important_dates/guidelines.html. The deadline to drop a course with a 100% refund is the end of week 2. The deadline to drop with no notation on your transcript is the end of week 3.

Registrar Notes:

SFU’s Academic Integrity web site http://www.sfu.ca/students/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University. http://www.sfu.ca/policies/gazette/student/s10-01.html