Detail publikace

Compositional Entailment Checking for a Fragment of Separation Logic

ENEA, C. LENGÁL, O. SIGHIREANU, M. VOJNAR, T.

Originální název

Compositional Entailment Checking for a Fragment of Separation Logic

Anglický název

Compositional Entailment Checking for a Fragment of Separation Logic

Jazyk

en

Originální abstrakt

We present a (semi-)decision procedure for checking entailment between separation logic formulas with inductive predicates specifying complex data structures corresponding to finite nesting of various kinds of linked lists: acyclic or cyclic, singly or doubly linked, 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. We implemented this decision procedure and tested it successfully on verification conditions obtained from programs using singly and doubly linked nested lists as well as skip lists.

Anglický abstrakt

We present a (semi-)decision procedure for checking entailment between separation logic formulas with inductive predicates specifying complex data structures corresponding to finite nesting of various kinds of linked lists: acyclic or cyclic, singly or doubly linked, 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. We implemented this decision procedure and tested it successfully on verification conditions obtained from programs using singly and doubly linked nested lists as well as skip lists.

Dokumenty

BibTex


@inproceedings{BUT111608,
  author="Constantin {Enea} and Ondřej {Lengál} and Mihaela {Sighireanu} and Tomáš {Vojnar}",
  title="Compositional Entailment Checking for a Fragment of Separation Logic",
  annote="We present a (semi-)decision procedure for checking entailment between separation
logic formulas with inductive predicates specifying complex data structures
corresponding to finite nesting of various kinds of linked lists: acyclic or
cyclic, singly or doubly linked, 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. We implemented this
decision procedure and tested it successfully on verification conditions obtained
from programs using singly and doubly linked nested lists as well as skip lists.",
  address="Springer Verlag",
  booktitle="Proceedings of APLAS'14",
  chapter="111608",
  edition="Lecture Notes in Computer Science",
  howpublished="print",
  institution="Springer Verlag",
  year="2014",
  month="august",
  pages="314--333",
  publisher="Springer Verlag",
  type="conference paper"
}