Biabduction (and Related Problems) in Array Separation Logic.

Lecture Notes in Artificial Intelligence(2017)

引用 25|浏览53
暂无评分
摘要
We investigate array separation logic (ASL), a variant of symbolic-heap separation logic in which the data structures are either pointers or arrays, i.e., contiguous blocks of memory. This logic provides a language for compositional memory safety proofs of array programs. We focus on the biabduction problem for this logic, which has been established as the key to automatic specification inference at the industrial scale. We present an NP decision procedure for biabduction in ASL, and we also show that the problem of finding a consistent solution is NP-hard. Along the way, we study satisfiability and entailment in ASL, giving decision procedures and complexity bounds for both problems. We show satisfiability to be NP-complete, and entailment to be decidable with high complexity. The surprising fact that biabduction is simpler than entailment is due to the fact that, as we show, the element of choice over biabduction solutions enables us to dramatically reduce the search space.
更多
查看译文
关键词
Separation logic,Arrays,Biabduction,Entailment,Complexity
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要