A Separation Logic for Heap Space under Garbage Collection
summary
A separation logic (called SLgc in the paper) models heap space under tracing GC by treating allocation budget as space credits consumed on allocation and regained by a ghost logical de-allocation when a block or group is provably unreachable; reachability is tracked locally with pointed-by assertions recording predecessors. The authors formalize a low-level calculus SpaceLang, prove soundness on top of Iris with a fixed heap bound S, and support bulk de-allocation of cyclic groups; artifacts are available.
AI-written summary · about
chapters (21)
- 0:00Introduction
- 0:13Verify Heap Space Usage
- 0:43Heap Space as a Resource
- 2:35Reason in the Presence of GC
- 3:01Logical Deallocation
- 4:16Update Axiom
- 4:57The Problem
- 5:40Example
- 6:36Solution
- 7:23Problem
- 9:06The System
- 11:33SpaceLang
- 12:13Operational semantics
- 13:04Reasoning rules
- 14:21Deallocation
- 15:08Soundness Theorem
- 15:52Stack
- 16:52POPL
- 17:06Logically Deallocate
- 17:34Conclusion
- 17:59Future work
