A Separation Logic for Heap Space under Garbage Collection

PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL(2022)

引用 5|浏览2
暂无评分
摘要
We present SL lozenge, a Separation Logic that allows controlling the heap space consumption of a program in the presence of dynamic memory allocation and garbage collection. A user of the logic works with space credits, a resource that is consumed when an object is allocated and produced when a group of objects is logically deallocated, that is, when the user is able to prove that it has become unreachable and therefore can be collected. To prove such a fact, the user maintains pointed-by assertions that record the immediate predecessors of every object. Our calculus, SpaceLang, has mutable state, shared-memory concurrency, and code pointers. We prove that SL lozenge is sound and present several simple examples of its use.
更多
查看译文
关键词
separation logic, tracing garbage collection, live data, program verification
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要