Separation Logic (II) Acknowledgment: slides taken from Reynolds’ mini-course CS 818A3
Specifications Partial correctness: Total correctness: Note the spec now requires c does not abort.
Examples
The Frame Rule (O’Hearn) (FR)
Why the Frame Rule is Sound
Inference Rules for Mutation One rule implies another.
Inference Rules for Deallocation
Inference Rules for Allocation
Rules for Nonoverwriting Allocation
Rules for General Allocation
Rules for General Allocation (2)
An Inadequate Local Rule by taking r to be emp
An Inadequate Local Rule (2)
An Adequate Local Rule
Rules for Nonoverwriting Lookup
Rules for General Lookup
Rules for General Lookup (2)
From (LKL) to (LKG)
From (LKG) to (LKL)
Example: Gluing Records
Another Example: Relative Pointers