Invariant synthesis for programs manipulating lists with unbounded data

  • Ahmed Bouajjani
  • , Cezara Drǎgoi
  • , Constantin Enea
  • , Ahmed Rezine
  • , Mihaela Sighireanu

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

Abstract

We address the issue of automatic invariant synthesis for sequential programs manipulating singly-linked lists carrying data over infinite data domains. We define for that a framework based on abstract interpretation which combines a specific finite-range abstraction on the shape of the heap with an abstract domain on sequences of data, considered as a parameter of the approach. We instantiate our framework by introducing different abstractions on data sequences allowing to reason about various aspects such as their sizes, the sums or the multisets of their elements, or relations on their data at different (linearly ordered or successive) positions. To express the latter relations we define a new domain whose elements correspond to an expressive class of first order universally quantified formulas. We have implemented our techniques in an efficient prototype tool and we have shown that our approach is powerful enough to generate non-trivial invariants for a significant class of programs.

Original languageEnglish
Title of host publicationComputer Aided Verification - 22nd International Conference, CAV 2010, Proceedings
Pages72-88
Number of pages17
DOIs
Publication statusPublished - 2 Aug 2010
Externally publishedYes
Event22nd International Conference on Computer-Aided Verification, CAV 2010 - Edinburgh, United Kingdom
Duration: 15 Jul 201019 Jul 2010

Publication series

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

Conference

Conference22nd International Conference on Computer-Aided Verification, CAV 2010
Country/TerritoryUnited Kingdom
CityEdinburgh
Period15/07/1019/07/10

Fingerprint

Dive into the research topics of 'Invariant synthesis for programs manipulating lists with unbounded data'. Together they form a unique fingerprint.

Cite this