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

  • Authors:
  • Milan Češka;Pavel Erlebach;Tomáš Vojnar

  • Affiliations:
  • FIT, Brno University of Technology, Božetěchova 2, CZ-61266, Brno, Czech Republic;FIT, Brno University of Technology, Božetěchova 2, CZ-61266, Brno, Czech Republic;FIT, Brno University of Technology, Božetěchova 2, CZ-61266, Brno, Czech Republic

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.