6.822 Formal Reasoning About Programs


Class Info

Surveys techniques for rigorous mathematical reasoning about correctness of software, emphasizing commonalities across approaches. Introduces interactive computer theorem proving with the Coq proof assistant, which is used for all assignments, providing immediate feedback on soundness of logical arguments. Covers common program-proof techniques, including operational semantics, model checking, abstract interpretation, type systems, program logics, and their applications to functional, imperative, and concurrent programs. Develops a common conceptual framework based on invariants, abstraction, and modularity applied to state and labeled transition systems.

This class has 6.031, and 6.042 as prerequisites.

6.822 will not be offered this semester. It will be available in the Spring semester, and will be instructed by A. Chlipala.

Lecture occurs 2:30 PM to 4:00 PM on Mondays and Wednesdays in 32-155.

This class counts for a total of 12 credits.

You can find more information at the MIT + 6.822 - Google Search site.

MIT 6.822 Formal Reasoning About Programs Related Textbooks
MIT 6.822 Formal Reasoning About Programs On The Web

© Copyright 2015