Model checking for symbolic-heap separation logic with inductive predicates

5Citations
Citations of this article
8Readers
Mendeley users who have this article in their library.

Abstract

We investigate the model checking problem for symbolic-heap separation logic with user-defined inductive predicates, i.e., the problem of checking that a given stack-heap memory state satisfies a given formula in this language, as arises e.g. in software testing or runtime verification. First, we show that the problem is decidable; specifically, we present a bottom-up fixed point algorithm that decides the problem and runs in exponential time in the size of the problem instance. Second, we show that, while model checking for the full language is EXPTIME-complete, the problem becomes NP-complete or PTIME-solvable when we impose natural syntactic restrictions on the schemata defining the inductive predicates. We additionally present NP and PTIME algorithms for these restricted fragments. Finally, we report on the experimental performance of our procedures on a variety of specifications extracted from programs, exercising multiple combinations of syntactic restrictions.

Cite

CITATION STYLE

APA

Brotherston, J., Gorogiannis, N., Kanovich, M., & Rowe, R. (2016). Model checking for symbolic-heap separation logic with inductive predicates. ACM SIGPLAN Notices, 51(1), 84–96. https://doi.org/10.1145/2837614.2837621

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free