Le, Quang Loc;
Le, Xuan-Bach D;
(2023)
An Efficient Cyclic Entailment Procedure in a Fragment of Separation Logic.
In:
International Conference on Foundations of Software Science and Computation Structures FoSSaCS 2023: Foundations of Software Science and Computation Structures.
(pp. pp. 477-497).
Springer, Cham
Text
Le_978-3-031-30829-1.pdf Download (0B) |
Abstract
An efficient entailment proof system is essential to compositional verification using separation logic. Unfortunately, existing decision procedures are either inexpressive or inefficient. For example, Smallfoot is an efficient procedure but only works with hardwired lists and trees. Other procedures that can support general inductive predicates run exponentially in time as their proof search requires back-tracking to deal with a disjunction in the consequent. This paper presents a decision procedure to derive cyclic entailment proofs for general inductive predicates in polynomial time. Our procedure is efficient and does not require back-tracking; it uses normalisation rules that help avoid the introduction of disjunction in the consequent. Moreover, our decidable fragment is sufficiently expressive: It is based on compositional predicates and can capture a wide range of data structures, including sorted and nested list segments, skip lists with fast-forward pointers, and binary search trees. We implemented the proposal in a prototype tool, called S2SLin , and evaluated it over challenging problems from a recent separation logic competition. The experimental results confirm the efficiency of the proposed system.
Type: | Proceedings paper |
---|---|
Title: | An Efficient Cyclic Entailment Procedure in a Fragment of Separation Logic |
Event: | Foundations of Software Science and Computation Structures |
ISBN-13: | 9783031308284 |
Open access status: | An open access version is available from UCL Discovery |
DOI: | 10.1007/978-3-031-30829-1_23 |
Publisher version: | https://doi.org/10.1007/978-3-031-30829-1_23 |
Language: | English |
Additional information: | © 2023 The Author(s). This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made. |
Keywords: | Cyclic Proofs, Entailment Procedure, Separation Logic |
UCL classification: | UCL UCL > Provost and Vice Provost Offices > UCL BEAMS UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science |
URI: | https://discovery.ucl.ac.uk/id/eprint/10171273 |
Archive Staff Only
View Item |