Effective Entailment Checking for Separation Logic with Inductive Definitions
Symbolic-Heap Separation logic (SHSL) is a popular formalism for automated reasoning about heap-manipulating programs, which allows the user to give customized data structure definitions. At the heart of formal proofs based on Separation Logic lies the entailment problem: Are all models of a formula also models of another formula?
While the entailment problem is undecidable for SHSL in general, various decidable fragments have been proposed. The most expressive of these fragments is due to Iosif, Rogalewicz and Simacek [1]. They prove decidability by a reduction to monadic second-order logic (MSO) over graphs of bounded tree-width. This gives rise to a decision procedure of non-elementary complexity. However, to the best of our knowledge, an actual entailment checker based on their approach has never been implemented.
In this paper, we give a new decidability proof for the SL fragment of Iosif, Rogalewicz and Simacek. We circumvent the reduction to MSO and give a direct model-theoretic construction with elementary complexity. We implemented our approach in the Harrsh analyzer and evaluate its effectiveness. In particular, we show that Harrsh can decide the entailment problem for data structure definitions for which no previous decision procedures have been implemented.
[1] Radu Iosif, Adam Rogalewicz, Jiri Simacek: The Tree Width of Separation Logic with Recursive Definitions (CADE 2013).
Wed 10 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
16:30 - 18:00 | |||
16:30 30mTalk | iRank: a variable order metric for DEDS subject to linear invariants TACAS Link to publication | ||
17:00 30mTalk | Edge-Specified Reduction Binary Decision Diagrams TACAS Link to publication | ||
17:30 30mTalk | Effective Entailment Checking for Separation Logic with Inductive Definitions TACAS Jens Katelaan , Christoph Matheja RWTH Aachen University, Florian Zuleger Vienna University of Technology Link to publication |