This is an 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.
The prerequisites for the course are 6.001 and 6.042 or equivalent background in Scheme programming and Discrete Mathematics.
Class sessions will be a mixture of mini-lectures by the Instructor and problem solving in student teams of 2 or 3. Students may also present mini-lectures in later weeks.
The class has a comprehensive web site:
http://theory.csail.mit.edu/classes/6.844
All course information such as course notes, problem sets and announcements are available on this website. Course notes, problem sets and solutions, etc., will be posted on the course Handouts page. It is always worth checking the website for corrections and announcements before starting problem sets.
6844-forum@theory.csail.mit.edu
The class mailing list is intended for general course-related communication by class members, who are encouraged to use it to arrange study sessions, discuss homework, and send comments to the entire class. The lecturer also emails anouncements and corrections to this list. Forum messages are archived.
Please subscribe to the class email forum by sending email to
There are no required texts. Course Notes and excerpts from various references and papers will be posted on the website as needed.
There will be several problem sets early in the term, and a few longer problem sets later in the term.
You are encouraged to collaborate on homework as you do on in-class problems. Up to three collaborators may submit jointly, but all collaborators should be prepared to explain in detail all the jointly submitted material. If you do collaborate on homework, even if you do not submit jointly, you must cite all of your collaborators. Also, if you use sources beyond the course materials, e.g., an "expert" consultant, an unassigned text, or material from prior terms, be sure to include a proper scholarly citation of the source.
There will not be a final exam.
Grades for the course will be based on the following approximate weighting:
In-class participation: | 25% |
Problem Sets: | 25% |
Quizzes: | 20% |
Final Project: | 30% |
You can send email to 6844-meyer@theory.csail.mit.edu