Detail publikace

Pattern-Based Verification of Programs with Extended Linear Linked Data Structures

VOJNAR, T. ČEŠKA, M. ERLEBACH, P.

Originální název

Pattern-Based Verification of Programs with Extended Linear Linked Data Structures

Anglický název

Pattern-Based Verification of Programs with Extended Linear Linked Data Structures

Jazyk

en

Originální abstrakt

The paper deals with the problem of automatic verification of programs with dynamic linked data structures. In particular, the use of pattern-based abstraction of memory configurations is considered. In this approach, one can abstract memory configurations by abstracting away the exact number of adjacent occurrences of certain memory patterns. The paper extends the state-of-the-art in this area by proposing a fully automatic and efficient way of  detecting the memory patterns to be used from the memory  configurations that the program at hand is generating. The method targets programs manipulating a broad class of extended linear linked data structures having a linear skeleton (possibly bidirectionally-linked or cyclic) with certain additional pointers defined on top of it, which covers many practical dynamic data structures (such as lists, doubly-linked lists, cyclic lists, lists with tail/head pointers, etc.). The experimental results obtained from a prototype implementation of the method show that the method is very competitive and offers a big potential for future extensions.

Anglický abstrakt

The paper deals with the problem of automatic verification of programs with dynamic linked data structures. In particular, the use of pattern-based abstraction of memory configurations is considered. In this approach, one can abstract memory configurations by abstracting away the exact number of adjacent occurrences of certain memory patterns. The paper extends the state-of-the-art in this area by proposing a fully automatic and efficient way of  detecting the memory patterns to be used from the memory  configurations that the program at hand is generating. The method targets programs manipulating a broad class of extended linear linked data structures having a linear skeleton (possibly bidirectionally-linked or cyclic) with certain additional pointers defined on top of it, which covers many practical dynamic data structures (such as lists, doubly-linked lists, cyclic lists, lists with tail/head pointers, etc.). The experimental results obtained from a prototype implementation of the method show that the method is very competitive and offers a big potential for future extensions.

Dokumenty

BibTex


@article{BUT45072,
  author="Tomáš {Vojnar} and Milan {Češka} and Pavel {Erlebach}",
  title="Pattern-Based Verification of Programs with Extended Linear Linked Data Structures",
  annote="The paper deals with the problem of automatic verification of programs with
dynamic linked data structures. In particular, the use of pattern-based
abstraction of memory configurations is considered. In this approach, one can
abstract memory configurations by abstracting away the exact number of adjacent
occurrences of certain memory patterns. The paper extends the state-of-the-art in
this area by proposing a fully automatic and efficient way of  detecting the
memory patterns to be used from the memory  configurations that the program at
hand is generating. The method targets programs manipulating a broad class of
extended linear linked data structures having a linear skeleton (possibly
bidirectionally-linked or cyclic) with certain additional pointers defined on top
of it, which covers many practical dynamic data structures (such as lists,
doubly-linked lists, cyclic lists, lists with tail/head pointers, etc.). The
experimental results obtained from a prototype implementation of the method show
that the method is very competitive and offers a big potential for future
extensions.",
  booktitle="Proceedings of the 5th International Workshop on Automated Verification of Critical Systems (AVoCS 2005)",
  chapter="45072",
  journal="ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE",
  number="145",
  volume="2006",
  year="2006",
  month="january",
  pages="113--130",
  type="journal article - other"
}