Course Description
6.844 is a graduate introduction to programming theory, logic of programming, and computability, with the programming language Scheme used to crystallize computability constructions and as an object of study itself. Topics covered include: programming and computability theory based on a term-rewriting, …
6.844 is a graduate introduction to programming theory, logic of programming, and computability, with the programming language Scheme used to crystallize computability constructions and as an object of study itself. Topics covered include: programming and computability theory based on a term-rewriting, “substitution” model of computation by Scheme programs with side-effects; computation as algebraic manipulation: Scheme evaluation as algebraic manipulation and term rewriting theory; paradoxes from self-application and introduction to formal programming semantics; undecidability of the Halting Problem for Scheme; properties of recursively enumerable sets, leading to Incompleteness Theorems for Scheme equivalences; logic for program specification and verification; and Hilbert’s Tenth Problem.
Course Info
Learning Resource Types
assignment
Problem Sets
![A circular seal with Massachusetts Institute of Technology wrapping around a shield with an infinitely nested function.](/courses/6-844-computability-theory-of-and-with-scheme-spring-2003/d7acdb882fa7c571182f8e94d1ce7f43_6-844s03.jpg)
MIT/GNU Scheme Logo. (Image courtesy of Harold Abelson and Gerald Sussman.)