Subject Offering: Spring 2008

Adventures in Advanced Symbolic Programming


Officially: Large-scale Symbolic Systems

6.945


3-0-9, Grad H Level, AI Concentration

Chris Hanson, Gerald Jay Sussman


Concepts and techniques for the design and implementation of large software systems that can be adapted to uses not anticipated by the designer. Applications include compilers, computer-algebra systems, deductive systems, and some artificial intelligence applications. Means for decoupling goals from strategy. Mechanisms for implementing additive data-directed invocation. Working with partially-specified entities. Managing multiple viewpoints. Topics include combinators, generic operations, pattern matching, pattern-directed invocation, rule systems, backtracking, dependencies, indeterminacy, memoization, constraint propagation, and incremental refinement. Substantial weekly programming assignments are an integral part of the subject.

There will be extensive programming assignments, using MIT/GNU Scheme. Students should have significant programming experience in Scheme or Common Lisp.

This subject awards H-LEVEL Graduate Credit, applicable to the AI Engineering Concentration. However, the subject is appropriate for undergraduates who have taken the prerequisites. Undergraduates are welcome.


Prerequisites: 6.001 and 6.034, or comparable programming experience.
Time: MWF 2:00PM - 3:00PM
Room: 36-156
Supplemental Discussion: T 7:00PM in 32-397


Class materials:


Reference documentation:


Copyright © 2008 Massachusetts Institute of Technology
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Last Modified: 2008-05-05T23:09:27-0400