Stanford Root

Schedule

Stanford Root

Schedule

CS 154

Introduction to the Theory of Computation

UNITS:3-4
GRADING:Letter or Credit/No Credit
LEVEL:Undergrad
GER:—

This course provides a mathematical introduction to the following questions: What is computation? Given a computational model, what problems can we hope to solve in principle with this model? Besides those solvable in principle, what problems can we hope to efficiently solve? In many cases we can give completely rigorous answers; in other cases, these questions have become major open problems in computer science and mathematics. By the end of this course, students will be able to classify computational problems in terms of their computational complexity (Is the problem regular? Not regular? Decidable? Recognizable? Neither? Solvable in P? NP-complete? PSPACE-complete?, etc.). Students will gain a deeper appreciation for some of the fundamental issues in computing that are independent of trends of technology, such as the Church-Turing Thesis and the P versus NP problem. Prerequisites: CS 103 or CS 103B.

Syllabus for selected term:
View Autumn 2026 Syllabus

Sections

1 Term
Lecture 1Open
ID: 1942
0 / 180 enrolled
DAYS:Tuesday, Thursday
TIME:10:30 AM – 11:50 AM
LOCATION:Skilling Auditorium
INSTRUCTOR:
Tan, Li-Yang, Reingold, Omer
units

CS 154: Introduction to the Theory of Computation

3-4 units · Letter or Credit/No Credit

This course provides a mathematical introduction to the following questions: What is computation? Given a computational model, what problems can we hope to solve in principle with this model? Besides those solvable in principle, what problems can we hope to efficiently solve? In many cases we can give completely rigorous answers; in other cases, these questions have become major open problems in computer science and mathematics. By the end of this course, students will be able to classify computational problems in terms of their computational complexity (Is the problem regular? Not regular? Decidable? Recognizable? Neither? Solvable in P? NP-complete? PSPACE-complete?, etc.). Students will gain a deeper appreciation for some of the fundamental issues in computing that are independent of trends of technology, such as the Church-Turing Thesis and the P versus NP problem. Prerequisites: CS 103 or 103B.

Offered in Autumn 2026 at Stanford University.

Autumn 2026 sections

  • Lecture — Tuesday Thursday 10:30 AM – 11:50 AM — Skilling Auditorium — Tan, Li-Yang, Reingold, Omer (Undergrad)

More CS courses

  • CS 147L: Cross-platform Mobile App Development
  • CS 148: Introduction to Computer Graphics and Imaging
  • CS 149: Parallel Computing
  • CS 151: Logic Programming
  • CS 152: Trust and Safety (COMM 122, INTLPOL 267)
  • CS 153: Frontier Systems
  • CS 155: Computer and Network Security
  • CS 157: Computational Logic
  • CS 161: Design and Analysis of Algorithms
  • CS 161ACE: Problem-Solving Lab for CS161
  • CS 163: The Practice of Theory Research
  • CS 166: Advanced Data Structures

All CS courses · All departments