15-818A3 Introduction to Separation Logic (6 units) Spring 2007

John C. Reynolds

First Half of Spring Semester 2007

University Units: 6 (minicourse)

Time: MW 1:30-2:50 WeH 4615A

Course Description

Separation logic is an extension of Hoare logic for reasoning about programs that use shared mutable data structures. We will survey the current development of this logic, including extensions that permit unrestricted address arithmetic, dynamically allocated arrays, recursive procedures, shared-variable concurrency, and read-only sharing. We will also discuss promising future directions.

PREREQUISITES: Some knowledge of predicate logic and Hoare logic.

TEXTS: Papers and notes to be distributed in class.

METHOD OF EVALUATION: Grading will be based on homework and examinations.

For an overview survey of separation logic (in postscript), click here.