Satisfiability Modulo Abstraction for Separation Logic with Linked Lists
| dc.contributor.author | Thakur, Aditya | |
| dc.contributor.author | Breck, Jason | |
| dc.contributor.author | Reps, Thomas | |
| dc.date.accessioned | 2014-02-19T22:57:16Z | |
| dc.date.available | 2014-02-19T22:57:16Z | |
| dc.date.issued | 2014-02-13 | |
| dc.description.abstract | Separation logic is an expressive logic for reasoning about heap structures in programs. This paper presents a semi-decision procedure for deciding unsatisfiability of formulas in a fragment of separation logic that includes predicates describing points-to assertions (x |-> y), acyclic-list-segment assertions(ls(x,y)), logical-and, logical-or, separating conjunction, and septraction (the DeMorgan-dual of separating implication). The fragment that we consider allows negation at leaves, and includes formulas that lie outside other separation-logic fragments considered in the literature. The semi-decision procedure is designed using concepts from abstract interpretation. The procedure uses an abstract domain of shape graphs to represent a set of heap structures, and computes an abstraction that over-approximates the set of satisfying models of a given formula. If the over-approximation is empty, then the formula is unsatisfiable. We have implemented the method, and evaluated it on a set of formulas taken from the literature. The implementation is able to establish the unsatisfiability of formulas that cannot be handled by other existing approaches. | en |
| dc.identifier.citation | TR1800 | |
| dc.identifier.uri | http://digital.library.wisc.edu/1793/68280 | |
| dc.publisher | University of Wisconsin-Madison Department of Computer Sciences | |
| dc.relation.isreplacedby | TR1800-R1 (http://digital.library.wisc.edu/1793/69567) | |
| dc.subject | abstract interpretation | en |
| dc.subject | separation logic | en |
| dc.subject | canonical abstraction | en |
| dc.subject | semi-decision procedure | en |
| dc.title | Satisfiability Modulo Abstraction for Separation Logic with Linked Lists | en |
| dc.type | Technical Report | en |