A logic of reachable patterns in linked data-structures

Greta Yorsh, Alexander Rabinovich, Mooly Sagiv, Antoine Meyer, Ahmed Bouajjani

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

Abstract

We define a new decidable logic for expressing and checking invariants of programs that manipulate dynamically-allocated objects via pointers and destructive pointer updates. The main feature of this logic is the ability to limit the neighborhood of a node that is reachable via a regular expression from a designated node. The logic is closed under boolean operations (entailment, negation) and has a finite model property. The key technical result is the proof of decidability. We show how to express precondition, postconditions, and loop invariants for some interesting programs. It is also possible to express properties such as disjointness of data-structures, and low-level heap mutations. Moreover, our logic can express properties of arbitrary data-structures and of an arbitrary number of pointer fields. The latter provides a way to naturally specify postconditions that relate the fields on entry to a procedure to the fields on exit. Therefore, it is possible to use the logic to automatically prove partial correctness of programs performing low-level heap mutations.

Original languageEnglish
Title of host publicationFoundations of Software Science and Computation Structures - 9th International Conf., FOSSACS 2006. Held as Part of the Joint European Conf. on Theory and Practice of Software, ETAPS 2006, Proc.
Pages94-110
Number of pages17
DOIs
StatePublished - 2006
Event9th International Conference on Foundations of Software Science and Computation Structures, FOSSACS 2006. Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2006 - Vienna, Austria
Duration: 25 Mar 200631 Mar 2006

Publication series

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

Conference

Conference9th International Conference on Foundations of Software Science and Computation Structures, FOSSACS 2006. Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2006
Country/TerritoryAustria
CityVienna
Period25/03/0631/03/06

Fingerprint

Dive into the research topics of 'A logic of reachable patterns in linked data-structures'. Together they form a unique fingerprint.

Cite this