Deciding Boolean Separation Logic via Small Models
Loading...
Date
Authors
Dacík, Tomáš
Rogalewicz, Adam
Vojnar, Tomáš
Zuleger, Florian
Advisor
Referee
Mark
Journal Title
Journal ISSN
Volume Title
Publisher
Springer Nature Switzerland AG
Altmetrics
Abstract
We present a novel decision procedure for a fragment of separation logic (SL) with arbitrary nesting of separating conjunctions with boolean conjunctions, disjunctions, and guarded negations together with a support for the most common variants of linked lists. Our method is based on a model-based translation to SMT for which we introduce several optimisations---the most important of them is based on bounding the size of predicate instantiations within models of larger formulae, which leads to a much more efficient translation of SL formulae to SMT. Through a series of experiments, we show that, on the frequently used symbolic heap fragment, our decision procedure is competitive with other existing approaches, and it can outperform them outside the symbolic heap fragment. Moreover, our decision procedure can also handle some formulae for which no decision procedure has been implemented so far. <br>
We present a novel decision procedure for a fragment of separation logic (SL) with arbitrary nesting of separating conjunctions with boolean conjunctions, disjunctions, and guarded negations together with a support for the most common variants of linked lists. Our method is based on a model-based translation to SMT for which we introduce several optimisations---the most important of them is based on bounding the size of predicate instantiations within models of larger formulae, which leads to a much more efficient translation of SL formulae to SMT. Through a series of experiments, we show that, on the frequently used symbolic heap fragment, our decision procedure is competitive with other existing approaches, and it can outperform them outside the symbolic heap fragment. Moreover, our decision procedure can also handle some formulae for which no decision procedure has been implemented so far. <br>
We present a novel decision procedure for a fragment of separation logic (SL) with arbitrary nesting of separating conjunctions with boolean conjunctions, disjunctions, and guarded negations together with a support for the most common variants of linked lists. Our method is based on a model-based translation to SMT for which we introduce several optimisations---the most important of them is based on bounding the size of predicate instantiations within models of larger formulae, which leads to a much more efficient translation of SL formulae to SMT. Through a series of experiments, we show that, on the frequently used symbolic heap fragment, our decision procedure is competitive with other existing approaches, and it can outperform them outside the symbolic heap fragment. Moreover, our decision procedure can also handle some formulae for which no decision procedure has been implemented so far. <br>
Description
Keywords
separation logic , arbitrary combinations of separating conjunctions with boolean conjunctions , disjunctions , and guarded negations , decision procedure , translation to SMT , separation logic , arbitrary combinations of separating conjunctions with boolean conjunctions , disjunctions , and guarded negations , decision procedure , translation to SMT
Citation
Tools and Algorithms for the Construction and Analysis of Systems (TACAS). 2024, vol. 14570, p. 188-206.
https://link.springer.com/chapter/10.1007/978-3-031-57246-3_11
https://link.springer.com/chapter/10.1007/978-3-031-57246-3_11
Document type
Peer-reviewed
Document version
Published version
Date of access to the full text
Language of document
en
Study field
Comittee
Date of acceptance
Defence
Result of defence
Collections
Endorsement
Review
Supplemented By
Referenced By
Creative Commons license
Except where otherwised noted, this item's license is described as Creative Commons Attribution 4.0 International

0000-0003-4083-8943 