Publication Details
Compositional Entailment Checking for a Fragment of Separation Logic
Lengál Ondřej, Ing., Ph.D. (DITS FIT BUT)
Sighireanu Mihaela (LIAFA UP7/CNRS)
Vojnar Tomáš, prof. Ing., Ph.D. (DITS FIT BUT)
program analysis, separation logic, decision procedure, tree automata
We present a decision procedure for checking entailment between separation logic formulas with inductive predicates specifying complex data structures corresponding to finite nesting of various kinds of singly linked lists: acyclic or cyclic, nested lists, skip lists, etc. The decision procedure is compositional in the sense that it reduces the problem of checking entailment between two arbitrary formulas to the problem of checking entailment between a formula and an atom. Subsequently, in case the atom is a predicate, we reduce the entailment to testing membership of a tree derived from the formula in the language of a tree automaton derived from the predicate. The procedure is later also extended to doubly linked lists. We implemented this decision procedure and tested it successfully on verification conditions obtained from programs using both singly and doubly linked nested lists as well as skip lists.
@ARTICLE{FITPUB11504, author = "Constantin Enea and Ond\v{r}ej Leng\'{a}l and Mihaela Sighireanu and Tom\'{a}\v{s} Vojnar", title = "Compositional Entailment Checking for a Fragment of Separation Logic", pages = "575--607", journal = "Formal Methods in System Design", volume = 2017, number = 51, year = 2017, ISSN = "0925-9856", doi = "10.1007/s10703-017-0289-4", language = "english", url = "https://www.fit.vut.cz/research/publication/11504" }