Detail publikace

Monotonic Abstraction for Programs with Multiply-Linked Structures

Originální název

Monotonic Abstraction for Programs with Multiply-Linked Structures

Anglický název

Monotonic Abstraction for Programs with Multiply-Linked Structures

Jazyk

en

Originální abstrakt

We investigate the use of monotonic abstraction and backward reachability analysis as means of performing shape analysis on programs with multiply pointed structures. By encoding the heap as a vertex- and edge-labeled graph, we can model the low level behaviour exhibited by programs written in the C programming language. Using the notion of signatures, which are predicates that define sets of heaps, we can check properties such as absence of null pointer dereference and shape invariants. We report on the results from running a prototype based on the method on several programs such as insertion into and merging of doubly-linked lists.

Anglický abstrakt

We investigate the use of monotonic abstraction and backward reachability analysis as means of performing shape analysis on programs with multiply pointed structures. By encoding the heap as a vertex- and edge-labeled graph, we can model the low level behaviour exhibited by programs written in the C programming language. Using the notion of signatures, which are predicates that define sets of heaps, we can check properties such as absence of null pointer dereference and shape invariants. We report on the results from running a prototype based on the method on several programs such as insertion into and merging of doubly-linked lists.

BibTex


@article{BUT103515,
  author="Jonathan {Cederberg} and Tomáš {Vojnar} and Parosh {Abdulla}",
  title="Monotonic Abstraction for Programs with Multiply-Linked Structures",
  annote="We investigate the use of monotonic abstraction and backward reachability
analysis as means of performing shape analysis on programs with multiply pointed
structures. By encoding the heap as a vertex- and edge-labeled graph, we can
model the low level behaviour exhibited by programs written in the C programming
language. Using the notion of signatures, which are predicates that define sets
of heaps, we can check properties such as absence of null pointer dereference and
shape invariants. We report on the results from running a prototype based on the
method on several programs such as insertion into and merging of doubly-linked
lists.",
  address="NEUVEDEN",
  chapter="103515",
  doi="10.1142/S0129054113400078",
  edition="NEUVEDEN",
  howpublished="print",
  institution="NEUVEDEN",
  number="2",
  volume="24",
  year="2013",
  month="february",
  pages="187--210",
  publisher="NEUVEDEN",
  type="journal article - other"
}