15-251 Great Ideas in Theoretical Computer Science

Fall 2019


Welcome to 15-251, Great Ideas in Theoretical Computer Science. This course is about the rigorous study of computation, which can be described as the process of manipulating information. Computation is a fundamental component of minds, civilizations, nature and the universe. Therefore, having the right language and tools to reason about computation is an important goal. This course teaches the mathematical underpinnings of computation and explores some of the central results and questions regarding the nature of computation.

The course uses Diderot to distribute the course content to the students in an interactive setting. If you are a registered student in the course and don't have access to it on Diderot, please email aada@cs.cmu.edu. If you are not a registered student you can visit a previous semester's webpage here.

Course Syllabus

Course Staff