Spring 2022 - CMPT 981 G100

Special Topics in Theoretical Computing Science (3)

Theory of constraint problems

Class Number: 5547

Delivery Method: In Person


  • Course Times + Location:

    Tu 2:30 PM – 4:20 PM
    AQ 5019, Burnaby

    Th 2:30 PM – 3:20 PM
    AQ 5046, Burnaby



The Constraint Satisfaction Problem (CSP) in its various incarnations is ubiquitous throughout theoretical computer science, artificial intelligence, and discrete mathematics. The propositional satisfiability and unique games in complexity theory, conjunctive queries in databases, primitive-positive sentences in logic, homomorphisms of graphs or relational structures in graph theory and finite model theory are forms and cases of the CSP. It serves as a benchmark for multiple algorithmic and complexity theoretic approaches. Over the last several decades several approaches to the problem have been developed and multiple variations of the CSP have been proposed. The purpose of this course is to introduce the basics of the CSP and the main approaches to the problem. The course is based on multiple papers and surveys.


  • The multiple definitions of the CSP
  • Structural restrictions: logic games and bounded (tree) width
  • Fixed template: universal algebra
  • Algorithmic techniques: bounded width and few subpowers
  • The CSP complexity dichotomy
  • Counting and optimization
  • Promise CSP



Will be discussed in the beginning of the course

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


Teaching at SFU in spring 2022 will involve primarily in-person instruction, with safety plans in place.  Some courses will still be offered through remote methods, and if so, this will be clearly identified in the schedule of classes.  You will also know at enrollment whether remote course components will be “live” (synchronous) or at your own pace (asynchronous).

Enrolling in a course acknowledges that you are able to attend in whatever format is required.  You should not enroll in a course that is in-person if you are not able to return to campus, and should be aware that remote study may entail different modes of learning, interaction with your instructor, and ways of getting feedback on your work than may be the case for in-person classes.

Students with hidden or visible disabilities who may need class or exam accommodations, including in the context of remote learning, are advised to register with the SFU Centre for Accessible Learning (caladmin@sfu.ca or 778-782-3112) as early as possible in order to prepare for the spring 2022 term.