Separation predicates: A taste of separation logic in first-order logic

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

This paper introduces separation predicates, a technique to reuse some ideas from separation logic in the framework of program verification using a traditional first-order logic. The purpose is to benefit from existing specification languages, verification condition generators, and automated theorem provers. Separation predicates are automatically derived from user-defined inductive predicates. We illustrate this idea on a non-trivial case study, namely the composite pattern, which is specified in C/ACSL and verified in a fully automatic way using SMT solvers Alt-Ergo, CVC3, and Z3.

Original languageEnglish
Title of host publicationFormal Methods and Software Engineering - 14th International Conference on Formal Engineering Methods, ICFEM 2012, Proceedings
Pages167-181
Number of pages15
DOIs
Publication statusPublished - 1 Dec 2012
Event14th International Conference on Formal Engineering Methods, ICFEM 2012 - Kyoto, Japan
Duration: 12 Nov 201216 Nov 2012

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume7635 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference14th International Conference on Formal Engineering Methods, ICFEM 2012
Country/TerritoryJapan
CityKyoto
Period12/11/1216/11/12

Fingerprint

Dive into the research topics of 'Separation predicates: A taste of separation logic in first-order logic'. Together they form a unique fingerprint.

Cite this